0
Réserver Une Quête
Posté par
abg
,
dans
TES2 : Daggerfall,
Daggerfall modding
18 juillet 2012
·
1 492 visite(s)
Daggerfall modding quête template
Du joyeux foutoir qu'est le dossier arena2 !
Nous voici au pied du donjon ! Il faut maintenant décider de l'endroit où nous allons implanter notre quête.
Les quêtes de Daggerfall se trouvent dans le dossier "arena2" du jeu.
Toutes (sauf quelques cas particuliers qui sortent de notre propos) sont constituée d'une paire de fichiers :
Bien entendu les quêtes manipulent indirectement d'autres ressources, comme les éléments graphiques. Mais pour notre propos (faire des quêtes pour le jeu "de base") nous ne nous intéresserons qu'à ces 2 (+1) fichiers...
Créer une quête revient donc à écrire un fichier source (*.src). Puis à le soumettre à Template qui va le "digérer" et en tirer les deux fichiers connus du jeu, le *.qrc et le *.qbn
Les commandes qui suivent sont écrites en supposant :
compile la nouvelle quête M0C00Y26.
Deux nouveaux fichiers vont apparaître dans arena2, M0C00Y26.qrc et M0C00Y26.qrn
La nouvelle quête sera reconnue par le jeu au lancement. S'il s'agit d'une quête aléatoire, elle sera ajoutée au pool de quêtes disponibles pour le PJ (pour les non-aléatoires, ce sera un peu plus compliqué)
désassemble la quête vanilla 40c00y00 (quête daedrique de Nocturnal) pour nous permettre de l'examiner.
Le nom du fichier source peut être omis, il sera alors automatiquement créé dans le répertoire courant.
:!: Prudence si vous tentez de recompiler le source d'une quête vanilla ! Template bute sur quelques unes à la conformation exotique, parfois sans message d'erreur...
Pour commencer il faut savoir que les quêtes sont gérées par le jeu en se basant sur leur nom de fichier (qui fait office d'identifiant). En outre ces noms de fichiers suivent la règle MS-DOS des 8.3 (8 caractères pour le nom et 3 pour l'extension). Le nom de fichier d'une quête se décompose comme suit :
Pour résumer, la quête L0B30Y12 :
Quand nous aurons digéré cet épouvantable système d'identifiants, nous pourrons nous atteler à la rédaction de la quête proprement dite...
Pour ceux qui souhaitent anticiper et pour vous faire les dents, je vous livre le code source d'une petite quête. C'est une chasse aux diablotins de la guilde des guerriers. Elle fait donc passablement doublon avec des quêtes existantes. Mais je l'ai réécrite "from scratch" à titre d'exercice :
Nous voici au pied du donjon ! Il faut maintenant décider de l'endroit où nous allons implanter notre quête.
Les quêtes de Daggerfall se trouvent dans le dossier "arena2" du jeu.
Toutes (sauf quelques cas particuliers qui sortent de notre propos) sont constituée d'une paire de fichiers :
- un fichier *.qrc. Il contient les ressources textuelles (dialogues, lettres et notes, placards à lire...)
- un fichier *.qbn. Il contient le cœur de la quête, son système logique indiquant au jeu comment il doit organiser les ressources textuelles et le scriptage des événements.
- le fichier *.src
Bien entendu les quêtes manipulent indirectement d'autres ressources, comme les éléments graphiques. Mais pour notre propos (faire des quêtes pour le jeu "de base") nous ne nous intéresserons qu'à ces 2 (+1) fichiers...
Créer une quête revient donc à écrire un fichier source (*.src). Puis à le soumettre à Template qui va le "digérer" et en tirer les deux fichiers connus du jeu, le *.qrc et le *.qbn
Les commandes qui suivent sont écrites en supposant :
- que vous avez ajouté le répertoire de template au chemin de recherche de l'interpréteur de commandes. Si ce n'est pas le cas il faudra saisir les chemins d'accès au complet.
- que vous êtes dans le répertoire arena2
template M0C00Y26.src
compile la nouvelle quête M0C00Y26.
Deux nouveaux fichiers vont apparaître dans arena2, M0C00Y26.qrc et M0C00Y26.qrn
La nouvelle quête sera reconnue par le jeu au lancement. S'il s'agit d'une quête aléatoire, elle sera ajoutée au pool de quêtes disponibles pour le PJ (pour les non-aléatoires, ce sera un peu plus compliqué)
template -d 40C00Y00.qbn 40C00Y00.src
désassemble la quête vanilla 40c00y00 (quête daedrique de Nocturnal) pour nous permettre de l'examiner.
Le nom du fichier source peut être omis, il sera alors automatiquement créé dans le répertoire courant.
http://img809.imageshack.us/img809/4035/113qe.png
:!: Prudence si vous tentez de recompiler le source d'une quête vanilla ! Template bute sur quelques unes à la conformation exotique, parfois sans message d'erreur...
http://img802.imageshack.us/img802/8295/compilation.jpg
Template au travail, compilant une nouvelle quête.
Pour commencer il faut savoir que les quêtes sont gérées par le jeu en se basant sur leur nom de fichier (qui fait office d'identifiant). En outre ces noms de fichiers suivent la règle MS-DOS des 8.3 (8 caractères pour le nom et 3 pour l'extension). Le nom de fichier d'une quête se décompose comme suit :
- La catégorie ou faction d'appartenance de la quête : Sur l'UESP, la liste des choix possibles
- Un caractère "0" (demandez pas, apparemment personne ne sait...)
- Un caractère "A", "B" ou "C". Il représente la position du PJ par rapport à la faction :
- -A : " Initial invitation to join " (je ne me suis pas penché sur ce cas un peu spécial)
- -B : Le PJ doit être membre pour recevoir la quête
- -C : Le PJ n'a pas besoin d'être membre
- -A : " Initial invitation to join " (je ne me suis pas penché sur ce cas un peu spécial)
- Deux caractères fixant la réputation minimale (vis à vis de la faction) que doit avoir le PJ pour recevoir la quête. La réputation peut prendre une valeur variant de 0 à 99. Il faut exprimer cette valeur sous la forme de deux caractères ascii (voir l'uesp pour la petite gymnastique : http://www.uesp.net/...Filename_Format
- Un caractère "Y" ou "L", établissant si la quête sera reçue par contact humain (le PJ va parler avec un donneur de quêtes) ou par lettre (Le PJ reçoit une lettre. Ce dernier cas ne semblant concerner que des quêtes lancées par une autre quête : Typiquement la MQ)
- Le numéro d'ordre de la quête (ou identifiant interne à la faction) est fixée par les deux derniers caractères (apparemment de façon numérique et non en ascii)
- Il ne peut y avoir plus de 100 (0-99) quêtes par catégorie
- Heureusement que les moddeurs daggerfalliens sont rares ! Car sinon, bonjour la foire d'empoigne pour s'attribuer les numéros et les incompatibilités entre packs de quêtes additionnelles. A moins d'imaginer un installeur futé ?
Pour résumer, la quête L0B30Y12 :
[*]Appartient à la Confrérie Noire (L0) [*]Demande que le PJ en soit membre (B) [*]Réclame une réputation d'au moins 30 (30) (à éclaircir... un habitué de l'ascii dans la salle ?) [*]Est remise "en personne" (Y) [*]Et réserve la place 12 (12) (Aucun impact pour le joueur)
Quand nous aurons digéré cet épouvantable système d'identifiants, nous pourrons nous atteler à la rédaction de la quête proprement dite...
http://img14.imageshack.us/img14/1408/19594352.png
Pour ceux qui souhaitent anticiper et pour vous faire les dents, je vous livre le code source d'une petite quête. C'est une chasse aux diablotins de la guilde des guerriers. Elle fait donc passablement doublon avec des quêtes existantes. Mais je l'ai réécrite "from scratch" à titre d'exercice :
Spoiler