Aller au contenu






Photo

Réserver Une Quête

Posté par abg , dans TES2 : Daggerfall, Daggerfall modding 18 juillet 2012 · 790 visite(s)

Daggerfall modding quête template
Réserver Une Quête 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 :
  • 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.
Pour nos besoins créatifs s'ajoutera un troisième :
  • le fichier *.src
Son extension est purement arbitraire. C'est un fichier texte contenant tout le nécessaire à l'outil "template" pour créer les deux premiers 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 :
  • 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.

Image IPB



:!:  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...


Image IPB
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 : On en déduit assez rapidement qu'il n'est pas possible de créer des quêtes pour des factions non répertoriées ici. A moins de ruser...
  • 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
  • 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
Pour mes premiers essais je me suis borné à des quêtes "réputation minimale = 0", donc "00")
  • 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)
De ce dernier point on déduit facilement deux choses :
  • 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é ?
On peut voir en examinant son dossier arena2 que certaines catégories suivent des règles différentes de nommage : Ce sont les quêtes non aléatoire (le démarrage avec les quêtes _BRISIEN et _TUTOR, les quêtes de guérison vampirique et lycanthropique ($) et la MQ proprement dite (quêtes "Sxxx...").

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...

Image IPB



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






Angel Eyes Sentenza
20 juil. 2012 - 14:24
Des tutos de modding pour Daggerfall !!!!!
C'est vrai ça abg tu comptes rédiger des tutos pour la création de quêtes, ou bien c'est juste pour montrer ton avancement ?
Sinon la structure de la quête en elle même n'a pas l'air très compliqué et semble assez logique.
Disons "montrer mon avancement tout en expliquant comment ça marche".
Mais un vrai tuto en bonne et due forme :

1) exploserait la taille convenue d'un article de blog
2) reviendrait en grande partie à paraphraser le questing.html de D.Tipton sans valeur ajoutée (tant qu'à faire autant le traduire, ce que je ferai peut-être si j'en trouve le courage...)

J'aime beaucoup ce système de quête, c'est concis et on ne se perd pas dans les détails :
Foe _imp_ is Imp
pc at _bistro_ set _invasion_
[...]
_invasion_ task:
	create foe _imp_ every 4 minutes 3 times with 100% success
Le cœur de la quête, réglé en 4 lignes... Qui dit mieux :cool: ?

Les Terres Cendres : Présentation

Image attachée

Les Terres Cendres est le blog dédiés aux anciens TES. On y trouve notamment les informations sur divers projets :


Le Projet French Daggerfall : Traduction en français de Daggerfall.


Le projet DaggerfallSetup : Installation de Daggerfall sur PC.


Le projet ArenaSetup : Installation d'Arena sur PC.

Derniers billets

Derniers visiteurs

  • Photo
    Nehluxhes
    hier, 23:21
  • Photo
    Azgarmoth
    16 avril 2018 - 08:48
  • Photo
    Kilfronia
    04 avril 2018 - 00:37
  • Photo
    D.A.D.
    26 févr. 2018 - 09:32
  • Photo
    Chapichapo
    14 janv. 2018 - 00:01