Skip to main content

Architecture By Year

Rôle

By Year est le framework historique où une activité progresse année par année. À chaque année, les équipes prennent des décisions game-specific, le serveur génère les résultats, calcule les évaluations et prépare l'année suivante.

flowchart LR
ACT[ActivityByYear] --> Y[Current Year]
Y --> DEC[TeamDecisionsByYear]
DEC --> GAME[Game-specific logic]
GAME --> RES[ResultsByYear]
RES --> EVAL[TeamEvaluation / StudentEvaluation]
RES --> NEXT[Next Year]

Unity

CoucheEmplacement
ModèlesAssets/Src/Game/Data/ByYear/
ControllersAssets/Src/Game/Controllers/*ByYear*
UI communeAssets/Src/UI/SimByYear/
Game-specificAssets/GameSpecific/ent1|hr1|mgt1|mk1|mk2/

Serveur

  • _utils/utils_by_year.js : cycle, calendrier, jobs, bots et helpers annuels;
  • _utils/utils_eval.js : évaluations communes;
  • _utils/utils_rankings.js : rankings;
  • _utils/factory/utils_factory_generate_results.js : sélection du moteur de résultats par GameUid;
  • _utils/factory/utils_factory_eval.js : sélection du moteur d'évaluation par GameUid;
  • <gameUid>/utils/* : décisions, events, résultats et scoring propres au jeu.

Game-specific

Contrairement à Accounting, By Year n'a pas une seule logique métier partagée. Le framework fournit le cycle; les jeux fournissent les décisions et les calculs. Il faut donc éviter de mettre les règles MK1, HR1 ou ENT1 dans une page “Common”.