MaJ du design doc

This commit is contained in:
attilavs2 2024-08-03 13:59:45 +02:00
parent 98c52fe29e
commit b96e5b6a3f

View file

@ -14,7 +14,7 @@
- Compétences primaires uniquement : Intelligence, Force, Agilité, Charisme, Rapidité, Courage (Et peut être d'autres ?) : - Compétences primaires uniquement : Intelligence, Force, Agilité, Charisme, Rapidité, Courage (Et peut être d'autres ?) :
* L'intelligence influant sur la magie, le cooldown des sorts, leur quantité et niveau max. ..., et l'apprentissage : on pourrait avoir un bonus/malus de vitesse dapprentissage suivant l'intelligence , surtout si la magie n'est pas si puissante. * L'intelligence influant sur la magie, [le cooldown des sorts,] leur quantité et niveau max. ..., et l'apprentissage : on pourrait avoir un bonus/malus de vitesse dapprentissage suivant l'intelligence , surtout si la magie n'est pas si puissante.
* *
* La Force influe sur les dégâts au corps a corps, peut être le nombre de slots d'inventaire si un système du genre est implémenté. * La Force influe sur les dégâts au corps a corps, peut être le nombre de slots d'inventaire si un système du genre est implémenté.
@ -83,6 +83,64 @@ Structure du personnage à mettre en place en concordance:
Note: matrice dinteraction à définir en parallèle pour savoir ce qui joue sur quoi si on garde l'idée. Note: matrice dinteraction à définir en parallèle pour savoir ce qui joue sur quoi si on garde l'idée.
Après y avoir réfléchi pour implémenter dans d'autres de mes projets, un système avec un dictionnaire comportant les caractéristiques de bases d'un item (dégats de base, chance de coup critique, enchantements acceptés ou peu importe) et une seconde liste avec les instances des items
Implémentation (rusée) exemple:
typedef enum{
struct {
int damage;//negatif pour soigner
int crit\_chance;
int durability\_max; //Utilisé comme un max de stack si stackable
bool stackable;
bool use\_self;
}
struct{
int heal;
int crit\_chance;
int stack\_max;
bool stackable:
bool use\_self;
}
}ItemDef;
typedef enum{
struct {
int quantity; //Durabilité si non-stackable
//Enchant enchant; //Par exemple
};
struct {
int durability;
//Enchant enchant;
}
} ItemInstance;
Un système comme ça permet de minimiser la taille des items (enum) et de couvrir la plupart des cas
* Univers : * Univers :
@ -172,16 +230,36 @@ Je comprends pas trop le coup des "pnjs importants" (par exemple un des anciens
Combats temps réel : III Combats temps réel : III
Combats tour par tour : II (Shadow avait l'ai pour mais n'a pas confirmé) Combats tour par tour : II (Shadow avait l'air pour mais n'a pas confirmé)
Pour sommariser avant que je me mette à implémenter :
- Combats temps réel en open world
- Pnjs pouvant attaquer des monstres/bandits dans des zones (comme des guardes/guerriers
- Ennemis : Monstres /bandits directement hostiles
Mécaniques requises de ce que je suppose :
- Système de dégâts
- Pathfinding (déja majoritairement implémenté de ce que j'ai compris) et priorisation de cibles (basique)
- Détéction d'hostiles
- Appartion d'ennemis
# Map # Map
[]C'est un open world :[] []C'est un open world :[]
Donc pas d'obstructions arbitraires a l'exploration de la map Donc pas d'obstructions arbitraires a l'exploration de la map
Pour préciser : Style Elden Ring, donc si tu vas dans une zone avec des ennemis beaucoup plus forts que toi, tant pis pour toi
Pour le moment il y a une capitale, il y aurait des forteresses et des dongeons répartis et une chaîne de montagnes. Pour le moment il y a une capitale, il y aurait des forteresses et des dongeons répartis et une chaîne de montagnes.
@ -255,3 +333,12 @@ PNJs / classes de personnages à intégrer
* soldats/guerriers (dialogues ? + baston) * soldats/guerriers (dialogues ? + baston)
* bandits/monstres (baston directe ?) * bandits/monstres (baston directe ?)
* boss (par exemples les fameux 5/7 anciens dirigeants) (la totale : dialogues + baston + donner des objets ou compétence) * boss (par exemples les fameux 5/7 anciens dirigeants) (la totale : dialogues + baston + donner des objets ou compétence)