Installation
1 - L'interface de DromEd
2 - Création de votre première
pièce
3a - Les textures
3b - Les textures
4 - Modifier, déplacer et orienter
un brush
5 - Quelques
fonctions utiles
6a - Créer de nouveaux
brushs - Placer des brushs solides
6b - Créer de nouveaux
brushs - Placer des brushs solides
7a - Placer
des sources de lumière et des objets
7b - Placer des sources
de lumière et des objets
8a - Animer le niveau
8b - Animer
les personnages, patrouille
9 - Inventaire de départ
10 - Propagation des
sons
11a - Programmer des objectifs
de missions
11b - Programmer
des niveaux de difficulté - Variations sur les objectifs de base
Le sommaire détaillé
Dans cette leçon, vous allez voir comment assigner des objectifs à une mission.
Ceci relève plus de la programmation que le reste, et un certain nombre de
points théoriques devront êtres abordés avant de passer aux choses concrètes.
Il y aura donc d'abord quelques explications qui seront données sur la façon
dont DromEd comprend les objectifs de mission. Et c'est seulement ensuite
que nous verrons comment les programmer dans le jeu.
Pour suivre cette leçon, lancez DromEd et chargez le niveau que vous aviez
construit tout au long de ce tutoriel (celui avec le garde qui patrouille
autour du sceptre). Avant de commencer, il sera juste nécessaire de remplacer
le garde par une araignée (très important ! Vous comprendrez pourquoi plus
loin…), mais arrivé à ce point du tutoriel, cela ne devrait pas vous poser
de problème.
Les objectifs de mission dans DromEd
Sachez tout d'abord que pour programmer des objectifs, il faut remplir une
mission quest data (= information sur les objectifs de la mission).
Vous pouvez déjà rechercher dans la barre de menu, sous Editors, vous
trouverez Mission Quest Data. Si, par curiosité vous avez déjà cliqué
dessus, il ne s'est rien passé. C'est normal car pour l'instant nous n'avons
pas encore donné ces informations à l'éditeur !
• Tout d'abord, il faut savoir que chaque
objectif doit se voir attribuer un numéro, et que le premier numéro doit être
0. Ainsi, si vous avez trois objectifs, ils seront numérotés 0, 1 et 2.
• Ensuite, il faut savoir que chaque objectif
est dans un "état" particulier, représenté également par un numéro. DromEd
utilise les numéros suivants pour connaître l'état d'un objectif :
Vous avez déjà vu comment ces différents
états apparaissent dans le jeu, quand vous ouvrez la page des objectifs. A
l'état 0 (objectif non accompli), l'objectif est précédé d'un carré vide.
A l'état 1 (objectif accompli), une coche verte apparaît dans ce carré. L'état
2 (objectif périmé) se rencontre dans les missions où un objectif de départ
n'est plus valable, ou devient désuet. Le carré est alors recouvert par un
rond rouge barré. L'état 4 (objectif échoué) est marqué par une croix rouge,
et signifie que vous avez échoué. Normalement, quand vous voyez cela, ce n'est
pas bon signe ! Le jeu est terminé et il n'y a plus qu'à charger la dernière
sauvegarde…
Au départ, tous les objectifs doivent être programmés dans l'état 0 (non accomplis),
et ce sont les actions du joueur qui modifieront les états des différents
objectifs.
• Les objectifs peuvent également être visibles ou
invisibles. C'est à dire qu'ils peuvent être donnés au joueur dès le départ,
ou bien n'apparaître qu'à un certain moment dans la partie, en fonction des
rebondissements du scénario. (Par exemple, l'objectif de voler un objet précis
pourrait n'être révélé au joueur qu'une fois que celui ci a pris connaissance
de son existence). DromEd utilise le code suivant :
En théorie, avec la version de
DromEd qui est distribuée sur les CD de jeu, il n'est pas possible de programmer
des objectifs invisibles, car le script Convict ne reconnaît pas les objectifs
invisibles. Tous les objectifs doivent donc être marqués à 1 (visible), sous
peine de ne pas fonctionner.
Ceci dit, il existe un moyen de contourner le problème. Mais c'est un peu
plus compliqué et nous ne le verrons pas ici. Sachez simplement que c'est
possible et que si vous tenez absolument à programmer des objectifs invisibles,
il existe des tutoriaux plus avancés pour expliquer la marche à suivre.
• Pour finir, une fois donnés le numéro d'un objectif,
son état et sa visibilité, il reste encore à définir le type d'objectif dont
il s'agit. DromEd reconnaît quatre types d'objectifs :
1 = Voler un objet
2 = Tuer une créature
3 = Obtenir un certain montant de butin
4 = Se rendre à un endroit précis
Pour une mission, on peut programmer un ou plusieurs types
d'objectifs, tous les objectifs si besoin est, ou même plusieurs objectifs
du même type.
Tous les objectifs auxquels vous avez été confrontés au cours du jeu ne
sont que des variantes ou des adaptations de ces quatre types d'objectifs
de base. Par exemple, un objectif de type 3 (obtenir un montant de butin)
peut être modifié pour rendre obligatoire un certain montant en or, en
gemmes et en bijou. Ou bien un objectif de type 2 (tuer une créature),
peut être inversé, notamment en mode expert, pour interdire au joueur
de tuer des gardes. Tout ceci peut se faire grâce à une liste de commandes
que nous verrons plus tard.
A présent, vous savez comment les objectifs sont codés dans DromEd, et
vous connaissez les quatre types d'objectifs de base. Nous allons maintenant
voir comment les programmer concrètement dans une mission.
Programmer les objectifs
La toute première chose à faire est de dresser la liste des objectifs et de
les numéroter. Sans oublier de commencer par le numéro 0 pour le premier de
la liste. Pour cette leçon, vous allez commencer par programmer deux objectifs
simples :
(Note de l'auteur : C'est pourquoi je vous demandais de remplacer le garde
par une araignée. Autrement, j'aurais dû vous faire programmer l'objectif
"tuer le garde". En tant qu'adepte du ZCD, et foncièrement non violent, je
ne pouvais décemment pas faire ça ! Et il m'est déjà assez pénible de vous
faire tuer l'araignée… mais c'est ce qu'il y a de plus simple à expliquer
pour commencer...)
Commençons par l'objectif 0, "voler le sceptre". La première étape est d'indiquer
à DromEd que l'objectif 0 est "non accompli" et "visible".
>> La commande de base
La commande pour programmer l'état d'un objectif est : goal_state_x, 0,
où x est la variable qui représente le numéro d'un objectif. Elle est toujours
placée en premier. 0 est l'état que nous voulons donner à un objectif
au départ (0 = non accompli).
Pour indiquer à DromEd que l'objectif numéro 0 doit être marqué non accompli
au départ du jeu, il faut donc taper, dans le boîtier de commande, la ligne
suivante : quest_create_mis goal_state_0, 0 (respectez bien
l'espace entre les deux commandes et entre les deux variables).
>> La commande de visibilité
La commande pour programmer la visibilité d'un objectif est : goal_visible_x,
1.
x est encore la variable représentant le numéro de l'objectif. 1 servira à
demander un objectif visible (souvenez-vous que, pour l'instant, demander
un objectif invisible ne fonctionnera pas).
Pour indiquer à DromEd que l'objectif numéro 0 doit être visible au départ
du jeu, il faut donc taper, dans le boîtier de commande, la ligne suivante
:
quest_create_mis goal_visible_0,1.
Pour clarifier tout ça, vous allez maintenant chercher Mission Quest Data
dans le menu Editors de la barre de menu. Cliquez dessus pour ouvrir
la boîte de dialogue des informations sur les objectifs de mission.
Vous pouvez y lire les informations que vous avez déjà programmées pour le
premier
objectif :
goal_state_0 0 qui signifie que l'état de l'objectif 0 est à 0 (= non accompli)
goal_visible_0 1 qui signifie que l'objectif 0 a une visibilité de 1 (= visible)
Si cela vous semble un peu trop complexe pour le moment, rassurez-vous
en vous disant qu'il ne s'agit là que d'un vocabulaire particulier, et qu'un
peu de pratique vous permettra de rapidement l'acquérir !
Cliquez sur "Cancel" (= Annuler) pour fermer cette boîte de dialogue.
Avant de passer à la suite, vous allez en profiter pour indiquer à DromEd
que l'objectif suivant, le numéro 1 (= tuer l'araignée), doit aussi être marqué
comme non accompli et visible au départ du jeu. Vous devez donc taper :
quest_create_mis goal_state_1, 0 et quest_create_mis goal_visible_1,
1.
En appelant la boîte de dialogue de la Mission
quest Data, vous devriez alors avoir ceci.
L'état des différents objectifs apparaît d'abord, puis leurs visibilités.
Note : pour éviter de taper toute la ligne de commande,
vous pouvez taper juste la lettre q, et appuyer sur la touche de tabulations
du clavier. La liste des différentes commandes va alors défiler. Ceci dit,
dans un premier temps, je vous conseille plutôt de faire l'effort de bien
taper vous-même toute la ligne de commande, ce qui vous permettra de bien
vous familiariser avec cette programmation.
>> La commande de type d'objectif
Il vous faut maintenant indiquer à DromEd que pour l'objectif 0 il s'agit
de voler quelque chose (objectif de type 1), et que pour l'objectif 1 il s'agit
de tuer une créature (objectif de type 2).
La commande pour indiquer le type d'objectif est : goal_type_x, y,
où x est la variable représentant le numéro de l'objectif, et y la variable
représentant le type d'objectif.
Vous devez donc maintenant taper :
quest_create_mis goal_type_0, 1 (= l'objectif 0 est du type
1) et
quest_create_mis goal_type_1, 2 (= l'objectif 1 est du type
2).
>> La commande de cible d'objectif
DromEd sait maintenant qu'il s'agit de voler quelque chose, et de tuer quelqu'un.
Mais il ne sait pas encore qui, ni quoi.
Dans une des fenêtres de l'éditeur, sélectionnez le sceptre et l'araignée,
et notez bien les numéros de ces brushs.
La commande pour indiquer la cible d'un objectif est : goal_target_x, y
où x est la variable représentant le numéro de l'objectif, et y la variable
représentant la cible de cet objectif.
Vous devez donc maintenant taper : quest_create_mis goal_target_0, y
(avec pour y le numéro du sceptre) et quest_create_mis goal_target_1,
y (avec pour y le numéro de l'araignée).
Si vous l'appelez, la boite de dialogue de la "Mission Quest Data"
devrait maintenant ressembler à quelque chose comme ça.
L'état des objectifs (classés dans leur ordre numérique) apparaît d'abord,
puis leurs cibles, leurs types, et leurs visibilités.
>> Le script VictoryCheck
Vos objectifs de mission sont maintenant programmés. La dernière chose à faire
est de modifier les propriétés du Starting Point (le marqueur de point
de départ) pour rendre ces objectifs valides dans le jeu. Il s'agit de charger
pour lui un script nommé VictoryCheck.
Cliquez sur votre Starting Point pour le sélectionner,
puis cliquez sur Properties (au centre de l'éditeur) pour appeler la
boîte de dialogue de ses propriétés. Cliquez encore sur Add. La longue
liste des propriétés à ajouter (que vous devez commencer à connaître ! non
?) apparaît. Choisissez S puis cliquez sur Scripts.
Vous ouvrez alors la boîte de dialogue des scripts. A la ligne Script 0, tapez
VictoryCheck (sans espace, et avec les deux majuscules), puis
cliquez sur OK et retournez dans l'éditeur.
Tout est maintenant en place. Prenez
d'abord bien soin d'enregistrer vos dernières modifications. Puis, passez
en mode jeu.
Une fois dans votre niveau, ouvrez la page des objectifs (normalement, la
touche O est par défaut celle qui ouvre la page des objectifs). Vous devriez
y voir deux petits carrés.
Le premier correspond à l'objectif 0 (voler le sceptre), et le deuxième correspond
à l'objectif 1 (tuer l'araignée). Bien sûr, pour l'instant il n'y a pas de
texte. Mais nous verrons dans une prochaine leçon comment faire apparaître
les descriptifs de chaque objectif.
Pour l'instant, retournez dans le jeu. Puis, choisissez l'un des objectifs
(le sceptre ou l'araignée), et passez dans l'autre pièce pour le remplir.
Attention ! Résistez pour l'instant à la
tentation, et ne remplissez qu'un seul objectif ! Sinon, la mission se terminera
et vous n'aurez plus aucune possibilité de retourner sur l'éditeur…
Une fois que votre objectif est rempli, ouvrez à nouveau la page des objectifs.
Vous devriez voir une coche verte dans le carré correspondant.
Note : Remplir tous ses objectifs en mode jeu aura le même effet
que de mourir. C'est à dire que les pages de fin de jeu s'ouvriront, et qu'il
ne vous sera plus possible de revenir sur DromEd. Si, lors de la réalisation
d'une fan mission, vous avez vraiment besoin de tester tous vos objectifs,
il existe un moyen de contourner cette difficulté. Il suffit, comme on l'a
déjà vu dans la leçon n°7, d'ajouter la ligne "no_endgame" dans le fichier
user.cfg.
Vous avez maintenant toutes les connaissances de base pour programmer des
objectifs à votre mission. Dans la leçon suivante, nous verrons quelques commandes
utiles pour apporter des variations aux quatre types d'objectifs de base.
Nous verrons aussi comment programmer des niveaux de difficulté.
Suite 11b.
Niveaux de difficulté - Variations sur les objectifs de base
Voir objectifs : en résumé
voir Objectifs : Créer un objectif facultatif
Trucs et astuces sur dromed -- la Bible
de Dromed
dromed.tutoriel.free.fr