75 lines
2.1 KiB
Markdown
75 lines
2.1 KiB
Markdown
<!-- file: docs/architecture/014-UROBURAS_TARGET_ARCHITECTURE.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Architecture cible Uroburas
|
|
|
|
## Principe
|
|
|
|
Uroburas n'est pas une crate monolithique.
|
|
|
|
La crate jeu conserve ce qui décrit réellement Uroburas ; les mécanismes réutilisables, services serveur, intégrations provider et tooling vivent dans leurs couches respectives.
|
|
|
|
## Première trajectoire
|
|
|
|
```text
|
|
Mode 1 — Challenge
|
|
↓
|
|
Mode 3 — Persistent Battle Royale
|
|
↓
|
|
Mode 2 — PvP Battles
|
|
```
|
|
|
|
La première version réelle stabilise d'abord les moteurs du Mode 1.
|
|
|
|
## Réutilisable hors Uroburas
|
|
|
|
À implémenter comme capabilities ou game-systems lorsque les frontières sont suffisamment claires :
|
|
|
|
- input abstrait ;
|
|
- virtual directional controls ;
|
|
- rendu sprite/rotation ;
|
|
- grid/tilemap toroïdale ;
|
|
- collision ;
|
|
- caméra ;
|
|
- stages ;
|
|
- vies/attempts ;
|
|
- score ;
|
|
- timed entities ;
|
|
- pickups ;
|
|
- assets/content download/cache ;
|
|
- localisation Fluent ;
|
|
- networking client.
|
|
|
|
## Uroburas-specific
|
|
|
|
Reste spécifique au jeu au départ :
|
|
|
|
- anatomie tête + cou + corps extensible + queue ;
|
|
- longueur minimale de quatre unités ;
|
|
- mouvement Snake ;
|
|
- géométrie du corps ;
|
|
- règles propres aux maps Uroburas ;
|
|
- règles de run Challenge ;
|
|
- modes Uroburas ;
|
|
- combat feu/glace/poison/protections/téléporteurs tant qu'aucun second jeu ne justifie leur généralisation.
|
|
|
|
## Serveur Mode 1
|
|
|
|
La première trajectoire serveur couvre PlayerId/auth, comptes, map/asset metadata, contenu téléchargeable, Hall of Fame, rewarded continue, rewarded stage multiplier, validation/idempotence et échanges HTTP sécurisés/versionnés.
|
|
|
|
Le realtime n'est pas requis pour le Mode 1.
|
|
|
|
## Mode 3 puis Mode 2
|
|
|
|
Le Mode 3 introduit authoritative simulation, realtime transport, bots, spectator, snapshots/deltas, interest management, rejoin cooldown et persistent world lifecycle.
|
|
|
|
Le Mode 2 réutilise ensuite ces briques pour les matches bornés, privés, matchmaking, équipes et règles de vie.
|
|
|
|
## Tooling
|
|
|
|
Le map editor démarre lorsque le format de map est suffisamment stable.
|
|
|
|
Le skin editor vient après stabilisation du contrat graphique des skins.
|
|
|
|
Ils restent séparés du runtime du jeu.
|