J'ai déjà vaguement réfléchi à la chose :
Il y aura probablement une table :
- persos-quêtes : pour savoir quel personnage suit quels quêtes.
- une table quêtes : une courte description de la quête, plus quelques informations. Par exemple les conditions pour obtenir celle ci. ( Peut être une limite de temps).
- une table étapes: pour définir chaque étapes de la quête, avec objectif et "déclencheur" pour passer à l'étape suivante.
Les deux problèmes principaux que je vois, c'est :
- les quêtes non linéaires, avec un ou plusieurs choix. Ca signifie qu'il faut une table à part. "étapes-étapes" pour gérer les différentes transitions possibles.
- la gestion des déclencheurs : si on admet qu'il peut y avoir comme déclencheur :
- parler à un personnage
- obtenir un objet
- donner un objet à quelqu'un
- se rendre en un lieu précis
- tuer un monstre donné
- protéger un lieu/une personne ( celui est plus dur à implémenter que les autres amha)
Ca veut dire que pour chaque action ( ou beaucoup d'actions) il faut soit :
- vérifier que l'action courante rempli une condition de quête
ou
- d'une façon ou d'une autre, envoyer un "message" au système de quête qui sera dépiler plus tard.
Il y a toujours moyen d'étendre ou de réduire cette liste en fonction du degré de flexibilité et de la facilité d'implémentation.
A mon avis une fois que les évènements/déclencheurs sont bien gérés, c'est pas très dur de s'occuper des quêtes. Y a plus qu'à quoi...
Il y aura probablement une table :
- persos-quêtes : pour savoir quel personnage suit quels quêtes.
- une table quêtes : une courte description de la quête, plus quelques informations. Par exemple les conditions pour obtenir celle ci. ( Peut être une limite de temps).
- une table étapes: pour définir chaque étapes de la quête, avec objectif et "déclencheur" pour passer à l'étape suivante.
Les deux problèmes principaux que je vois, c'est :
- les quêtes non linéaires, avec un ou plusieurs choix. Ca signifie qu'il faut une table à part. "étapes-étapes" pour gérer les différentes transitions possibles.
- la gestion des déclencheurs : si on admet qu'il peut y avoir comme déclencheur :
- parler à un personnage
- obtenir un objet
- donner un objet à quelqu'un
- se rendre en un lieu précis
- tuer un monstre donné
- protéger un lieu/une personne ( celui est plus dur à implémenter que les autres amha)
Ca veut dire que pour chaque action ( ou beaucoup d'actions) il faut soit :
- vérifier que l'action courante rempli une condition de quête
ou
- d'une façon ou d'une autre, envoyer un "message" au système de quête qui sera dépiler plus tard.
Il y a toujours moyen d'étendre ou de réduire cette liste en fonction du degré de flexibilité et de la facilité d'implémentation.
A mon avis une fois que les évènements/déclencheurs sont bien gérés, c'est pas très dur de s'occuper des quêtes. Y a plus qu'à quoi...