0.2.0-0-pre.3
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/studies/005-DEPENDENCY_AND_COMPOSITION_STUDY.md -->
|
||||
<!-- version: 3 -->
|
||||
<!-- version: 4 -->
|
||||
|
||||
# Étude des dépendances et de la composition
|
||||
|
||||
@@ -186,6 +186,54 @@ Le framework peut fournir les couches techniques réutilisables sans imposer une
|
||||
|
||||
Le serveur Web/API classique peut partager des types/protocoles avec le service realtime, mais il ne doit pas obligatoirement partager le même process ni la même cadence d'exécution.
|
||||
|
||||
|
||||
## Bot / AI execution
|
||||
|
||||
Le pilotage artificiel doit emprunter autant que possible les mêmes semantic actions qu'un joueur humain :
|
||||
|
||||
```text
|
||||
observation
|
||||
↓
|
||||
bot strategy
|
||||
↓
|
||||
semantic action
|
||||
↓
|
||||
game simulation
|
||||
```
|
||||
|
||||
La stratégie peut être composée :
|
||||
|
||||
- dans le client pour un mode offline ;
|
||||
- dans le serveur authoritative pour une partie online ;
|
||||
- dans un outil de test pour simulation/charge.
|
||||
|
||||
Le kernel n'a pas à connaître l'algorithme utilisé.
|
||||
|
||||
## Web et services par jeu
|
||||
|
||||
La composition backend doit permettre un démarrage partagé puis une séparation progressive :
|
||||
|
||||
```text
|
||||
games.sasedev.com
|
||||
├─ auth
|
||||
├─ common API
|
||||
├─ leaderboard
|
||||
├─ realtime
|
||||
└─ game modules
|
||||
```
|
||||
|
||||
puis, si nécessaire :
|
||||
|
||||
```text
|
||||
game-domain
|
||||
├─ www
|
||||
├─ api
|
||||
├─ realtime
|
||||
└─ cdn
|
||||
```
|
||||
|
||||
L'identité canonique et les contrats communs doivent survivre à ce changement de déploiement.
|
||||
|
||||
## Online/offline
|
||||
|
||||
La composition doit pouvoir exprimer :
|
||||
|
||||
Reference in New Issue
Block a user