Tangmere Pilots IL-2 BoS Mission Buiding Guide

Transcription

Tangmere Pilots IL-2 BoS Mission Buiding Guide
Page de garde
Remerciements
Table des matières ROF
Introduction
Description de la logique de l'Editeur
MCU
Links
Les Messages et leurs significations
Règles de base pour la création d'une mission
Contrôles et interface de l'Editeur
Barres d'icônes de l'Editeur
Menu principal
File Menu
View Menu
Search and Select Menu
Find Mission Object Menu
Find Location Object Menu
Draw Menu
Tools Menu
Location Database
Déplacements des caméras sur la carte
Mode 3D
Mode 2D
Caméras
Menu du clic droit de la souris
Barre inférieure de l'Editeur
Mission. Propriétés et réglages de base
Fichiers Mission Files, Localisation Files et leurs Formats
Travail sur les objets/IA. Sélection d'un objet
Déplacement et positionnement d'un objet
Copier coller et effacer
Groupement des objets
Regroupement d'objets en vol/escadrilles
Sauvegarde d'un fichier, Importationet insertion d'un groupe déjà existant
Edition des objets
Menu "Objects Library"
Propriétés de base de l'Editeur
Trains
Firing Point
Bâtiments/Blocks//Aérodromes/Battlef/Ponts
Aides
Positions
Propriétés avancées de l'Editeur
Mission Command Units
Propriétés avancées des MCUs
Commande Attack
Commande Attack Area
Commande Behavior
Commande Cover
Commande Damaged
Commande Effect
Force Complete
Commande Formation
Commande Land
Commande Play Animation
Commande PlaySound
Commande TakeOff
Translator Animation Operator
Translator Camera Operator
Translator Icon
Translator Media
Translator Mission Objective
Translator Mission begin
Translator Mission End
Translator Subtitle
Trigger Activate
Trigger Camera Point
Trigger Check Zone
Trigger Counter
Trigger Deactivate
Trigger Proximity
Trigger Spawner
Trigger Timer
Créer le Hasard
Trigger Waypoint
Construire une mission MP
Groupes fréquents. Kit Plan de vol
Kit Changement de formation
Kit Attack en route
Kit Départ en l'air
Kit Véhicules en colonne
Kit Trains
Kit Cinématiques
Kit Cinématique campagne entraînement
Kit Afficher une image à l'écran
Mission de base
Fichiers utilisés par Media / Anim Operator
Informations générales
Annexe Trigger Spawner
Annexe Trigger Proximity : un exemple
Manuel de l’éditeur de missions de Rise Of
Flight et de Battle Of Stalingrad
Traduit de l’anglais par Husker du team « Les Ailes
Libres »
Remerciements :
Les traducteurs LAL_Husker (initiateur de ce projet) et Bex
(-LaFrench-bexhausted) tiennent à remercier
chaleureusement toutes les bonnes volontés qui leur ont
apporté leur soutien qu'il soit technique (ô combien
important ) Phoenix (Habu), LAL_Wolf, PBO-Foxy ou
moral LAL_Skywaxer, LAL_Trinkoff et Fredzered .
Nous souhaitons que ce manuel puisse être largement
diffusé au sein de la communauté francophone pour en
faire le meilleur usage possible.
Bonne lecture !
Pour rejoindre ou contacter " Les Ailes Libres ", rendez-vous sur :
http://foxforum.forumactif.com/?sid=2e6b8272af99cedd2523006e772240fd
Pour rejoindre ou contacter "Les IRREductibles", rendez-vous sur :
https://lesirreductibles.com/forum/app.php/portal
Avertissement : pour des raisons de facilité d’utilisation de l’éditeur, certains termes
ne sont pas traduits
Manuel de l’éditeur de mission pour « Rise of Flight/Battle of Stalingrad »
Editeur de mission de RoF v1.0
Table des matières :
1. Introduction………………………………………………………………………. 1
2. Description de la logique de l’éditeur…..…………………………………… 2
2.1. MCU……………………………………………………………………… 2
2.1.1.
MCU (Mission Control Unit) Unité de Control de Mission… 2
2.1.2.
Objects (entité/IA)……………………………………………… 2
2.1.3.
Command.……………………………………………………… 2
2.1.4.
Trigger (Déclencheurs)………………………………………… 3
2.1.5.
Translator………………………………………………………… 3
2.2. Links (Liens)…………………………………………………………….. 3
2.2.1.
Object Links (Lien objet)……………………………………. 3
2.2.2.
Target Links (Lien cible)………………………………………...3
2.3. Messages et types de messages……………………………………….. 4
3. Règles de base de construction d’une mission……………………………...5
4. Interface et contrôles d’édition…………………………………………………. 5
4.1. Barre d'icônes de l'Editeur.....................................……………………. 5
4.2. Menu principal de l’éditeur..……………………………………………... 8
4.2.1.
File Menu.………..………………………………………………. 8
4.2.2.
Views Menu ……………………………………………………...9
4.2.3.
Search and Select Menu ………..…………………………….. 9
4.2.4.
Find Missions Objects Menu .…………………….…………… 10
4.2.5.
Find Location Objects Menu………….….……………………. 11
4.2.6.
Draw Menu………………………………………………………. 13
4.2.7.
Tools Menu………………………………………………………. 14
4.2.8.
Location Database Menu ……………………………………... 15
4.3. Contrôle de la caméra……………………………………………………. 16
4.3.1.
Mode 3D………………………………………………………..... 16
4.3.2.
Mode 2D…………………………………………………………. 16
4.3.3.
Cameras…………………………………………………………. 17
4.4. Menu Dropdown du bouton droit de la souris…………………………. 18
4.5. Bottom Service Window de l’éditeur de mission………………………. 20
5. Mission……………………………………………………………………………… 21
5.1. Propriétés et réglages de base de la mission…………………………. 21
5.2. Fichiers « Mission Files », « Mission Localisation Files» et leur
Format……………………………………………………………………… 23
5.2.1.
*.Mission…………………………………………………………. 23
5.2.2.
*.msnbin………………………………………………………….. 25
5.2.3.
[mission_name].eng…..………………………………………… 25
5.2.4.
[mission_name].list……………………………………………… 25
5.2.5.
Travailler avec le fichier Mission Localization Files…………. 25
5.2.6.
Localization ID…………………………………………………... 26
6. Travail sur les objets/IA ………………………………………………………..26
6.1. Sélection d’un object……………………………………………………... 26
6.2. Déplacement et positionnement d’un object………………………….. 27
6.3. Copy (copier), Paste (coller) et Delete (effacer)………………………. 28
6.4. Groupement des objects…………………………………………………. 29
6.5. Regroupement des IA/objects en Vol (Wing) ou Escadrilles
(Group)……………………………………….……………………………..31
6.6. Sauvegarde d’un fichier, Importation et Insertion d’un group présauvegarder……………………………………………………………….. 31
6.6.1.
Sauvegarde du fichier………………………………………….. 31
6.6.2.
Importation d’objets dans une mission……………………….. 32
7. Edition des objects……………………………………………………………….. 32
7.1. Menu « Objects Library » de l’éditeur…………………………………... 33
7.2. Propriété de base de l’éditeur d’object…………………………………. 34
7.2.1.
Planes/Véhicules/Artillery/Balloons ……………………………34
7.2.2.
Trains……………………………………………………………...35
7.2.3.
Point d’ouverture du feu…………………………………………36
7.2.4.
Buildings/Blocks/Airfields/Battlefield/Bridges………………… 36
7.2.5.
Helpers…………………………………………………………… 38
7.2.6.
Locations………………………………………………………… 41
7.3. Propriété avancées pour l’éditeur d’objects…………………………… 48
7.3.1.
Planes/Véhicules/Artillery/Aerostats……………………………48
7.4. Mission Commands Units (MCUs) de l’éditeur………………………… 53
7.4.1.
Propriétés de base des MCus………………………………
53
7.5. Propriétés avancées des MCUs………………………………………… 53
7.6. Commandes MCU………………………………………………………… 54
7.6.1.
Commande : Attack……………………………………………… 54
7.6.2.
Commande : Attack Area …………………….………………… 56
7.6.3.
Commande : Behavior………………………………………… 60
7.6.4.
Commande : Cover …………….……………………………… 63
7.6.5.
Commande : Damage ……………….……………………………66
7.6.6.
Commande : Effect ……………………………………………… 68
7.6.7.
Commande : Force Complete…………………………………… 70
7.6.8.
Commande : Formation……………………………………………72
7.6.9.
Commande : Land …………………………………………………75
7.6.10. Commande : Move …………………………………………………77
7.6.11. Commande : Play Animation…………………………………… 77
7.6.12. Commande : Play sound………………………………………….. 79
7.6.13. Commande : Take Off …………………………………………
81
7.7. Convertisseur MCU (Translator)………………………………………… 83
7.7.1.
Translator : Animation Operator…………………………………….83
7.7.2.
Translator : Camera Operator……………………………………….85
7.7.3.
Translator : Icon……………………………………………………….90
7.7.4.
Translator : Media……………………………………………………..97
7.7.5.
Translator : Mission objective……………………………………….101
7.7.6.
Translator : Mission begin………………………………………… 103
7.7.7.
Translator : Mission end…………………………………………… 105
7.7.8.
Translator : Subtitle ……………………………………………
106
7.8. MCU Trigger……………………………………………………………………109
7.8.1.
Trigger : Activate…………………………………………………… 109
7.8.2.
Trigger : Camera Point………………………………………………111
7.8.3.
Trigger : Check Zone……………………………………………… 113
7.8.4.
Trigger : Counter…………………………………………………… 117
7.8.5.
Trigger : Deactivate…………………………………………………..119
7.8.6.
Trigger : Proximity…………………………………………………….121
7.8.7.
Trigger : Spawner……………………………………………………. 125
7.8.8.
Trigger : Timer…………………………………………………………127
7.8.9.
Trigger : Random Timer Scheme……………………………………128
7.8.10. Trigger : Waypoint……………………………………………………. 130
8. Construction d’une mission coopérative..............................................................133
9. Mission blocks fréquemment utilisés, Exemples et conseil de
construction…….......................................................................................................134
9.1. Décollage, Cheminement et atterrissage………………………………….......134
9.2. Formation et changement de formation durant le vol......…………………....135
9.3. Commande d’attaque En-Route….……………………………………….........136
9.4. Point de démarrage en l’air………………………………………………….......136
9.5. Colonne de véhicule sur une route…………………………………………......137
9.6. Mouvement des trains………………………………………………………........138
9.7. Création d’une cinématique à la manière d’un Helper (une forme dans les
airs)……………………………………..…………………………………………139
9.7.1.
Object animé visible immédiatement après le début de la
mission…………………………………………………………………………139
9.7.2.
Object animé non visible immédiatement après le début de la
mission………………………………………………………………......................141
9.8.
Création d’une cinématique sur l’exemple des cinématiques des
missions d’entrainement………………………………………………….......141
9.9. Affichage d’une image durant le briefing de mission……………………...143
9.10. Mission de base – Toutes les villes, champs d’aviation et ponts sur la
carte………………………………………………………………………….....144
9.11. Fichier utilisés dans le Media et Animation Operator……………………...144
9.11.1. Fichier Média dans la compilation de jeu…………………………….144
9.11.2. Fichier *.chr pour l’Operator d’animation……………………………..144
10. Informations générales…………………………………………………………………..145
ANNEXES
A1 Trigger Spawner...........................................................................................................A1
A2 Trigger Proximity : un exemple.....................................................................................A2
A5 Liens vidéos.................................................................................................................A5
1.
Introduction
L’éditeur de mission de Rise Of Flight contient les fonctions suivantes :
•
Un système universel d’exécution et de redistribution des commandes.
•
Les outils pour activer ou désactiver des objectifs de mission par certains
évènements, ce qui augmente grandement les performances dans les
missions contenant un grands nombre d’objectifs.
•
Compatibilité entre les missions solo et multi-joueurs (les missions
fonctionnent avec la même logique et ont été créés avec les outils de cet
éditeur.
•
La possibilité d’assigner des priorités aux IA pour l’exécution des commandes,
ce qui rend la progression des missions non linéaire. Cette fonctionnalité
permet aux IA d’observer la situation et de réagir en conséquence, rendant
ainsi une illusion de réaction humaine de leurs parts dans les sessions multijoueurs. Par exemple : si aucun joueur (PJ) ou IA (PNJ) ne représente une
menace directe sur une IA, celle-ci continuera sa mission. Si une menace
apparaissait, cette IA pourrait réagir de façon prédéterminée par la mission ou
bien, si le créateur de la mission lui en a laissé la possibilité, agir de son
propre chef. Une fois la menace disparue, elle reprendra la suite de sa
mission.
•
Visualisation du gameplay avec les helpers de l’interface (objets, icônes,
icônes de points de passage, etc.). Il y a une grande variété de types d’icônes
ainsi que la possibilité de pré visualiser le briefing et le débriefing d’une
mission. Certaines personnes ajouteront qu’il est aussi possible d’afficher
sous forme de pop-up des conseils ou des informations (sous forme de texte)
sur les cartes de mission.
•
Un système de caméras intégré permettant de créer ses propres
cinématiques à partir du moteur de jeu. En fait ces caméras sont partie
intégrale des missions et peuvent agir comme un processus du jeu sans
l’interrompre.
•
La possibilité d’insertion de texte, graphique et/ou vidéo dans une mission tout
en gardant l’impression que cela fait naturellement partie du jeu. Toutes ces
options permettent une simplification du gameplay et permettent une meilleure
immersion de la part des PJ et la non linéarité pour une même mission.
1
•
Fournis une grande variété d’édition comme :
o La possibilité de définir les propriétés d’un objet ou d’un groupe d’objets
comme les déplacements, rotation, et la copie (pour un objet ou pour
tous les objets de la mission).
o La possibilité de créer des groupes d’objets ou une unité en formation
et de les réutiliser comme modèles (ex : un groupe standard d’avions,
de voitures ou encore de bâtiments).
o La possibilité d’importer des missions, ce qui permet de combiner les
créations de plusieurs personnes ou d’accélérer la construction de
mission complexe (une personne fait les cinématiques de présentation
de mission pendant qu’une autre fabrique l’environnement de la
mission et qu’une troisième assure la partie fonctionnalité et ainsi de
suite…)
Toutes les fonctionnalités de l’éditeur vous permettront de créer une grande variété,
en termes de visions artistiques, de missions et de campagnes.
2.
Description de la logique de l’éditeur
Pour créer des missions dynamiques et non linéaires, le Full Mission Editor (FME
ou Editeur de Mission) utilise un langage scripter basé sur l’interaction des objets
dans l’environnement de simulation, avec des éléments logique (MCU) dans le
script de mission (command, triggers et translator).
2.1.
MCU
2.1.1. MCU – Mission Contrôle Unit – est une commande qui définit une variété
d’actions ou de propriétés relatives à un objet ou à la mission elle-même.
2.1.2. Object (Entity) [Objet statique ou IA] – désigne n’importe quel objet (ou
IA) du jeu pouvant interagir avec les joueurs, cela inclut les avions, véhicules
terrestres et bâtiments. Ces IA peuvent se voir assigner un modèle
comportemental ou une séquence d’actions.
Ils doivent être générés à l’aide du bouton « Create Link Object » qui se trouve
dans le menu « Basic Properties » de l’objet (voir chapitre 7.2).
Pour comprendre comment un moteur de script fonctionne, il est important de
comprendre qu’un objet deviendra une IA pouvant interagir avec d’autres
objets ou d’autres IA qu’à la condition que des liens soit crées avec ces objets
et ces IA. Dans l’éditeur, nous passons principalement par un « translator »qui
assignera à l’objet son modèle de comportement dans le moteur de jeu.
2.1.3. Command – est une MCU assignant un modèle de comportement spécifique
à un objet (commande comme « engager les ennemis proches ») ou une
2
séquence d’actions (comme « aller au point de passage »). En d’autres
termes, la commande « dit » à une IA ce qu’elle doit faire et dans quel ordre.
Dans la liste des MCU, les commandes ont pour préfixe « command : »
2.1.4. Trigger (déclencheur) – est une MCU qui active une commande ou un
translator si certaines conditions sont réunies. Un déclencheur peut être lié à
un objet (ex : activer une commande/un évènement quand l’objet entre dans
une zone spécifique de la carte ou bien être totalement indépendant (ex : un
trigger peut activer une commande/un évènement à l’expiration d’un temps
passé depuis l’exécution de la commande précédente. Dans la liste des MCU,
les déclencheurs ont le préfixe « Trigger :».
2.1.5. Translator – est le lien entre un objet et son script. Plus précisément, un
translator est un script lié à un objet au moyen de l’éditeur de mission et qui
définit le comportement de cet objet dans la mission suivant un jeu de règles.
2.2.
Links
Pour écrire un script correctement, il faut comprendre la logique qui relie les
éléments logique à un objet et entre les objets entre eux. Il y a 2 types de
links : Les Links d’objet et les Links de cible.
2.2.1. Object Links(OL) (raccourci clavier : Shift+O) – est indiqué par une ligne
fléchée verte. Un OL est établi entre une Command, un Trigger, un Translator
et un objet (depuis les MCU vers l’objet. C’est-à-dire que vous devez partir du
MCU désiré => Shift+O => Objet) qu’il influence. L’OL détermine quel objet
doit exécuter la MCU en cours.
Par exemple, Un OL de type « Go to waypoint » affecté à un objet « airplane »
définit que dans la mission cet avion doit se rendre à un point spécifique.
Dansle cas où ce Link est déterminé par un Trigger, cela peut aussi signifier
que cet avion participe aux conditions de déclenchement de ce trigger.
2.2.2. Target Link (TL) (raccourci clavier : Shift+T) – est indiqué par une ligne
fléchée rouge et détermine l’ordre d’exécution entre des MCU. C’est à vous de
déterminer l’ordre d’enchainement de vos MCU de la première à la dernière. Il
est important de se rappeler que de cet enchaînement dépend un
fonctionnement correct de votre script. Pour réaliser cette hiérarchisation, il
suffit de lier une MCU sur la suivante. Attention, il y a de nombreuses
possibilités de combinaisons différentes.
Remarque : Certaines MCU ne peuvent pas être utilisées comme TL (voir
chapitre 7.5 pour les descriptions détaillées des MCU).
3
2.3.
Les messages et leurs significations
Un message (indiqué par une ligne fléchée bleu) est un autre type de lien qui
peut lancer une séquence de MCU. Contrairement à une TL, la raison
d’exécution de ce lien ne découle pas de l’exécution d’une MCU précédente
mais du changement des conditions d’un objet (ex : le niveau d’essence dans
le réservoir d’un avion) et qui, si l’ordre donné à cet IA n'était pas modifié,
pourrait entrainer un changement de son statut (sa destruction par ex).
Un message permet aussi aux IA d’informer le scénario sur la progressionde
leurs objectifs. Pour établir un message, il suffit de faire un click droit sur
l’icône représentant cette IA. Cliquez alors sur le menu contextuel «Select
Object Menu » puis sur le message désiré. Les messages ont pour post fixe
« Message ».
Il y a plusieurs types de message :
Add On Land Message : Indique que la commande « To Land »
(Atterrir) a été exécutée.
Add On Take Off Message : Indique que la commande « To Take Off »
(Décoller) a été exécutée.
Add On Move Message : Indique le statut « Move » (en déplacement).
Add On Killed Message : Indique le statut « death » (mort /
destruction) d’une IA ou d’un objet.
Add On Damage Message : Indique Les dommages infligés/reçus.
Add On Spawned Message : Indique qu’une IA vient d’être générée
(poper).
Add On Target Attacked Message : Indique que la commande
d’attaque d’une cible a été exécutée.
Add On Area Attacked Message : Indique que la commande d’attaque
d’une zone a été exécutée.
Un message peut avoir 2 liens, un vers la source du message (IA) et l’autre
vers la cible de celle-ci même si dans la plupart des cas, il suffit de relier le
message à la cible (durant la création du message il suffit d’appuyer sur
« ESC » quand le programme demande d’identifier la source). Le Lien vers la
source sera utilisé si vous vous servez du message comme déclencheur
d’autres commandes.
Vous pouvez, par exemple, prévoir une IA avion devant décoller 2 fois : La
première avec pour source une commande Take Off et une cible, et la
seconde fois avec pour source un autre message.
4
3.
Règles de bases pour la création d’une mission
Il est important de bien se rappeler les règles suivantes lors de la création d’une
mission :
Vous aurez besoin d’au moins un « Translator » de début de mission (Mission
Begin Translator) bien qu’ils ne soient pas limités. C’est-à-dire que vous
pourriez importer un bloc d’une autre mission comportant son propre MBT.
Chaque commande doit être liée à l’objet ou IA qui l’exécute ; en clair, une
commande doit savoir « qui » elle commande.
Un « trigger » ou une « command » ne peuvent être validés que par un TL ou
un Message en provenance d’un autre objet/IA.
Il est préférable de ne pas donner plusieurs commandes simultanées à un
même objet/IA. Il vaut mieux déterminer une séquence de commandes en
utilisant un « trigger » temps (1 à 2 secondes).
Un objet/IA désactivé ne peut pas recevoir de commandes, il faut en tenir
compte avant d’en désactiver un.
L’activation d’un objet/IA n’est pas immédiate. Le processus demande un peu
plus de temps de modélisation, il vous faut donc attendre 1 à 2 secondes
avant de pouvoir lui envoyer une commande.
L’utilisation de « MCU Spawner » ne permet pas de faire Popper un joueur
ou un groupe d'objets.
La limite d’objet/IA du même type dans un rayon de 5 km (taille d’un « screen
frame ») sur la carte est de 20. Cela concerne tous les objets listés dans la
bibliothèque des objets (Library), exemples : Bridges, buildings, airfields,
battlefields…
La limite d’objets/IA tous types confondus dans un « screen frame » est de 35
Il est important de bien hiérarchiser les commandes données à un objet/IA.
Une IA ne peut attaquer un objet/IA que si cette dernière fait partie du camp
opposé.
Il y a un nombre maximum de MCU dans l’éditeur, cette limite serait indiquée
dans la section X de ce manuel (malheureusement, je n’ai pu trouver la
section de référence. Si quelqu’un a cette information …)
4.
Contrôles et interface de l’Editeur
4.1.
Barre d’icônes de l’éditeur
1) Cut Object : Supprime un objet/IA de la carte et le stocke dans le
presse-papier.
2) Copy Object : Copie un objet/IA dans le presse-papier.
5
3) Measure mode : Fait apparaitre une règle permettant la mesure des distances
entre différents points de la carte ainsi que la possibilité de définir une
trajectoire points par points, avec mesure de distance dynamique et l'affichage
de la direction entre les points avec comme références :
• D : longueur de la dernière section.
• L : distance totale mesurée.
• Hdg : Relèvement de la section mesuré.
Raccourci clavier pour la règle : Shift+M
Pour supprimer la dernière section du tracé, appuyez sur la touche « retour
arrière » (backspace). Appuyez 2 fois sur « backspace » pour effacer la
totalité du tracé.
Pour sortir du mode règle, appuyez sur la touche « ESC ».
4) Toggle camera : Permet de basculer l’affichage entre la vue 3D isométrique
et la vue 2D.
Raccourci clavier : F9.
5) Focus on selection : Focalise la caméra sur l’objet/IA sélectionné. L’objet/IA
est alors placé au centre de la vue.
6) Set on the ground : Place un objet/IA (ou un groupe) au sol.
7) Zoom to cursor : Lorsque cette icône est active, le zoom se fait à l’endroit où
se trouve le curseur de la souris ; lorsqu’elle est inactive, le zoom se fait par
rapport au centre de l’écran.
8) Draw Grid : permet d’afficher ou de supprimer la grille sur la carte.
9) Draw Icons : permet d’afficher ou de supprimer les icônes des objets/IA sur la
carte.
10) Draw icon text : permet d’afficher ou de supprimer le nom ou l’ID des
objets/IA en place sur la carte.
11) Draw icon in Group : permet d’afficher ou de supprimer les icônes des
objets/IA d’un groupe (Off par défaut).
12) Turn compass on/off : permet d’afficher ou de supprimer l’affichage de la
boussole dans le mode 3D. La ligne bleue indique le nord tandis que la ligne
verte indique la direction du vent au niveau du sol. La direction ou pointe la
caméra est indiquée par les chiffres.
13) Object filter : ouvre la fenêtre « Mission Editor Object Filter » (ou Filtre
d’Objets de l’Editeur de Mission). Cette fenêtre permet de cacher les icônes
par type d’objet choisi ou des MCU, afin de faciliter la lecture dans l’éditeur.
Attention un objet/IA ne peut plus être sélectionné tant qu’il est caché. Par
exemple, vous pouvez cacher les icones des ponts et des blocs (groupe de
bâtiments) pour libérer et faciliter la lecture sur la zone de travail.
6
14) Mission tree : permets d’afficher ou de
supprimer l’affichage de l’arbre des
missions. Il s’agit de la liste de tous les
objets/IA et des MCU placés sur la carte.
Le premier chiffre entre parenthèse est
l’IDentifiant de l’objet et le deuxième est
l’Identifiant de sa tâche. Si cette tâche est
un MCU, alors c’est le l’ID de cette MCU.
En outre, cette liste permet de rappeler à
l’écran la vue sur l’objet en faisant un
double clic gauche dessus. Un clic droit
sur un objet sélectionné fera apparaitre la
fenêtre suivante :
Properties : propriétés de l’objet/IA
sélectionné (MCU).
Move camera to Object : Déplace la
caméra vers l’objet/IA/MCU
sélectionné.
Delete : Efface l’objet/IA/MCU
sélectionné.
Select : Sélectionne l’objet/IA/MCU
pré sélectionné.
Add to Selection : Ajoute
l’objet/IA/MCU sélectionné à une liste
d’objet pré sélectionné.
Remove from Selection: Retire
l’objet/IA/MCU d’une liste.
7
Add New Group : Pas disponible.
Set Group as Working : permet d’éditer un groupe d’objets (voir le chapitre 6
« travailler sur les objets/IA »)
15) Objects Library : ouvre la bibliothèque des objets.
16) Property Dialog : ouvre/ferme la fenêtre des propriétés de base.
17) MCU OBJ : permet d’afficher ou de cacher l’affichage des OL.
18) MCU TAR : permet d’afficher ou de cacher l’affichage des TL.
19) MCU MES : permet d’afficher ou de cacher l’affichage des Messages Links.
20) MCU SEL : permet d’afficher ou de cacher l’affichage des liens de l’IA
sélectionnée.
21) MCU UNSE : permet d’afficher ou de cacher l’affichage des IA non
sélectionnées.
22) Auto vérification de base du graph de mission.
23) Lancement de l’auto vérification à chaque chargement ou sauvegarde de la
mission (on/off).
24) Test des unités.
25) Permet le marquage des routes avec un masque rouge.
26) Pas disponible.
27) Pas disponible.
28) Info sur l’éditeur.
4.2. Menu principal
4.2.1. File Menu
New : Créer un nouveau fichier de mission.
Open : Ouvrir un fichier.
Save : enregistrer un fichier
Save as… : Enregistrer sous…
Save Selection to File : Sauvegarde les objets/IA
sélectionnés dans un fichier séparé pour une
réutilisation ultérieur. Les fichiers de sauvegarde de
groupe ont l’extension « *.group ». Pour plus
d’information sur les groupes, reportez–vous au chapitre 6. Par défaut, les
fichiers « *.group » sont enregistrés sous : \data\mission directory.
Import From File : Importe un fichier *.group dans la mission en cours de
développement.
Exit : Pour fermer l’éditeur de mission.
8
4.2.2. View Menu
Toolbar : Affiche ou cache la barre
d’icônes de l’éditeur.
Status Bar : Affiche la barre
d’informations de l’espace de travail
(barre inférieure).
Mission Tree : Affiche l’arbre de
mission.
Object Library : Affiche la
bibliothèque de l’éditeur (objets,
commandes, translators etc…).
Property dialog : Affiche la fenêtre
d’information de l’objet ou du groupe
sélectionné.
Ortho View : permet de passer de la vue 3D à la vue 2D et vice versa.
Move Camera To… : Permet de placer la caméra aux coordonnées désirées.
Focus on Selection Center : Recentre la vue sur l’objet sélectionné et zoom au
maximum sur celui–ci.
Zoom to Cursor : Lorsque que cette option est cochée, cela permet de zoomer sur
l’endroit où se trouve le pointeur de la souris.
Add Camera : Ajoute une caméra.
Cameras : Edition des propriétés des caméras dans la liste des caméras pré–
établies.
Go to Camera : Déplace la vue sur la caméra sélectionnée (voire chapitre 4.3).
4.2.3. Search and Select menu
Find mission objects : Recherche
l’objet/IA sélectionné.
Find location objects : recherche un
objet/IA par sa localisation.
Select all objects : Sélectionne tous les
objets/IA présents sur la portion de
carte affichée.
9
Select all visible objects : Sélectionne tous les objets/IA laissés visibles après
utilisation des filtres.
Select all objects in mission : Sélectionne TOUS les objets/IA présents dans la
mission.
4.2.4. Find Mission Object menu
Find by name field : Recherche d’un objet/IA par son nom. Si le champ est laissé
vierge, le programme listera tous les objets/IA de la mission.
Bouton « Find » : Recherche d’un objet/IA par son nom.
ID, Name, Type, Description Windows : Affiche dans la fenêtre les informations
relatives aux objets/IA trouvés.
Filter field : Applique des filtres pour cacher des catégories d’objets.
Bouton « Check all » : Coche toutes les cases dans le filtre.
Bouton « Clear all » : Décoche toutes les cases.
Bouton « Check MCU » : Coche toutes les cases MCU.
Bouton « Clear MCU » : Décoche toutes les cases MCU.
Bouton « Check Non–MCU » : Coche toutes les cases Non–MCU.
Bouton « Clear Non–MCU » : Décoche toutes les cases Non–MCU.
Bouton « Check Helpers » : Coche toutes les cases Helpers.
Bouton « Clear Helpers » : Décoche toutes les cases Helpers.
Find options filter : Filtre et options de recherche.
10
Case « Match case » : recherche une correspondance.
Case « Match exactly » : recherche une correspondance exacte.
Case « Search working group » : Recherche un groupe de travail.
Un clic gauche permet de sélectionner un élément dans le champ d’affichage des
résultats.
Un double clic gauche aura le ou les effets que vous aurez choisis dans la liste cidessous :
Case « Show properties » : Ouvre la fenêtre des propriétés de l’objet/IA.
Case « Move camera to » : Déplace la caméra sur l’objet/IA.
Case « Select object » : Sélectionne l’objet sur lequel vous avez double cliqué.
Case « Add object to selection » : Ajoute l’objet/IA à une liste d’objet/IA déjà
sélectionnés.
Case « Select in mission tree » : Sélectionne l’objet/IA dans l’arbre de mission.
Case « Set working group » : ouvre le mode d’édition de l’objet/IA s’il est dans un
groupe.
Case « Close dialog » : Ferme la fenêtre de recherche lorsque vous faites un double
clic sur un objet/IA de la liste.
4.2.5. Find location objects menu
Ce mode permet de trouver et de sélectionner un emplacement sur la carte. Avant de
commencer une recherche il vous faudra charger les fichiers Default.ldf ,
Substrate.ldf et TerrainLeveler.ldf afin de mettre à jour la base de données de
localisation.
Champs « Find by name (empty matches everything)» : Entrez le nom (ou une partie
du nom) pour trouver un objet/IA. Si le champ est laissé vide, tous les objets seront
listés.
Bouton « Find » : Lance la recherche.
Fenêtre « Name, Type et Description » : Affichage des objets/IA trouvés.
Bouton « Check all » : Coche toutes les cases dans le filtre.
Bouton « Clear all » : Décoche toutes les cases.
Find options filter : Filtre et options de recherche.
Case « Airfield » : Recherche la localisation des aérodromes.
11
Case « Decoration » : Recherche l’emplacement des décors sur la carte.
Case « Air objectives » : Recherche la localisation de tous les objectifs aériens.
Case « Ground Objectives » : Recherche la localisation de tous les objectifs
terrestres.
Case « Substrat » : Recherche l’emplacement des substrats sur la carte. (Si
quelqu’un pouvait m’expliquer à quoi sert cette fonction…)
Case « Terrain leveler » : Recherche l’emplacement des nivellements du terrain sur
la carte.
Find options filter : Filtre et options de recherche.
Case « Match case » : recherche une correspondance.
Case « Match exactly » : recherche une correspondance exacte.
Un clic gauche permet de sélectionner un élément dans le champ d’affichage des
résultats.
Un double clic gauche aura le ou les effets que vous aurez choisis dans la liste cidessous :
Case « Show properties » : Ouvre la fenêtre des propriétés de l’objet/IA.
12
Case « Move camera to object » : Déplace la caméra sur l’objet/IA.
Case « Select object » : Sélectionne l’objet sur lequel vous avez double cliqué.
Case « Add object to selection » : Ajoute l’objet/IA à une liste d’objet/IA déjà
sélectionnés.
Case « Close dialog » : Ferme la fenêtre de recherche lorsque vous faites un double
clic sur un objet/IA de la liste.
Ce mode de recherche se recoupe directement avec les sujets des chapitres 7.2.5.
et 7.2.6. Pour en savoir plus, reportez-vous à ces sections.
4.2.6. Draw menu
Ce menu vous permet de modifier les options d’affichage de l’espace de travail.
Draw Grid : Affiche/cache la grille sur la
carte en mode 2D.
Draw Icons : Affiche/cache les icônes des
objets/IA et des MCU sur la carte.
Draw Icon Text : Affiche/cache le nom des
icônes des objets/IA et des MCU sur la
carte.
Draw Icons in Group : Affiche/cache les
icônes des groupes.
Draw Compass : Affiche/cache la boussole
de la carte.
Draw MCU Links for Selected Objects : Affiche/cache les liens de (ou des)
l’objet(s)/IA sélectionné(s).
Draw MCU Links for not Selected Objects : Affiche/cache les liens de (ou des)
l’objet(s)/IA non sélectionné(s).
Draw MCU Target Link : Affiche/cache les TL.
Draw MCU Object Link : Affiche/cache les OL.
Draw MCU OnMessage Link : Affiche/cache les liens Message.
Draw MCU Link Arrows : Affiche/cache le fléchage des liens.
Show aux info : Affiche/cache l’indicateur de FPS.
13
4.2.7. Menu Tools
Objects Filter : Ouvre la fenêtre de filtrage des objets/IA (cf. chapitre précédent).
Start Integrity Check : Lance un programme de vérification entre les liens et les IA de
la carte.
Check integrity on save/load : Lance un
programme de vérification entre les liens et les IA
de la carte à chaque chargement et sauvegarde de
la mission.
Measure mode : Fait apparaitre une règle
permettant la mesure des distances entre différents
points de la carte ainsi que la possibilité de définir
une trajectoire points par points, avec mesure de
distance dynamique et l'affichage de la direction
entre ses points.
Open Last used Mission on Start : Quand cette option est cochée, cela ouvre
automatiquement la dernière mission précédemment ouverte lors du démarrage de
l’éditeur.
Generate GUI Map : Utilisé par les développeurs du jeu (777) uniquement.
Convert Missions to Binary in Folder : Converti le fichier de votre mission en fichier
binaire. Attention cette conversion est souvent la cause de gros changements
dans votre fichier (voir chapitre 5.2.2.). Cette option est utile pour la récupération
de missions sauvegardées sous un ancien format et les convertir dans celui qui est
utilisé par l’éditeur. Pour ce faire, cliquer sur le dossier contenant les fichiers à
convertir. L’éditeur sauvegardera automatiquement tous les fichiers et les sous
dossiers contenus dans votre dossier en respectant l’arborescence de ce dernier.
Capture Joystick : Permet de calibrer votre joystick pour contrôler les caméras de
l’éditeur selon 2 mode :
Permet de générer un Camera Operator Translator Flight (pour un rendu de
fly by).
Permet de générer les points de passages intermédiaires d’un translator
déjà créer sur la carte par un clic droit sur « camera Operator » (Trigger
Point).Vous n’aurez plus qu’à « voler » autour de l’objet
Came
ou du terrain à filmer dans la carte 3D pour que l’éditeur
ajoute les waypoints. Au besoin, vous pourrez encore
ajouter d’autres waypoints manuellement.
Ce mode peut aussi être utilisé pour ajouter des points
de passages à une IA. Il suffit juste de sélectionner l’IA
14
avant de faire le fly by.
Joystick options : Permet de configurer votre joystick.
Interact button : Bouton servant à démarrer la capture.
Place button : Bouton pour placer manuellement un waypoint (point de passage).
Auto Place Button : Bouton pour placer automatiquement les waypoints durant le
« vol ». La case Counter permet de régler le temps (en millisecondes) écoulé entre
le placement de 2 waypoints.
Factor : permet de modifier la sensibilité des axes du joystick.
Axes X, Y, Z et throttle : permet de modifier les axes du joystick. Ici la commande
des gaz (throttle) permet de définir la vitesse de déplacement du vol.
Dead Zone : Définit les zones mortes des axes du joystick.
4.2.8. Menu Location Database
C’est le menu permettant de travailler à partir des
localisations.
Edit Default countries : Pour définir les membres
des différentes coalitions et leurs ordres (voir
chapitre 5.1.).
Locations Objects Filter : Filtre des localisations
des objets/IA.
New database : Crée une nouvelle base de
données.
15
Open : Ouvre une base de données.
Save As… : Sauvegarder sous…
Generate Substrat INI File : Créer le fichier de texture des substrats.
Generate Terrain Leveller Info Bitmap : Génère les localisations de nivellements
pour pouvoir utiliser l’outil sur la carte et modifier le niveau du terrain sous les
objets/IA. Il s’agit d’un fichier au format *.bmp.
Generate Location Airfield Report : Crée rapport des aérodromes sous la forme d’un
fichier dans « data\LocationDatabase\Plane-Squad-Date_Report.csv ». Ce fichier
est créé à l’aide des informations de la base de données des aérodromes (dates de
stationnement ou de transfert des escadrons).
Check location DB Integrity : Vérifie la base de données et affiche le rapport
d’erreurs. Cette option génère alors un fichier dans la directory « data\
LocationDatabase\ IntegrityCheck.txt »
4.3. Déplacement des caméras sur la carte
4.3.1. Mode 3D
La bascule entre la vue 2D et la vue 3D peut se faire avec l’icône de la barre d’outil
ou bien avec la touche F9.
L’orientation de la caméra se fait avec la souris + bouton gauche.
Pour déplacer la caméra vous pouvez utiliser la souris + bouton droit ou bien utiliser
les touches W, S, A, D pour haut, bas, gauche, droite. La touche shift permet
d’augmenter la vitesse de déplacement.
La hauteur de la caméra est contrôlée par la molette de la souris.
Pour rappel, la boussole permet de connaitre l’orientation de la caméra par rapport
au nord (ligne verte sur la boussole) et par rapport au vent (la ligne bleu).
4.3.2. Mode 2D
En mode 2D, les contrôles de la caméra sont identiques au mode 3D excepté pour
l’orientation de celle-ci qui reste fixe.
Vous pouvez sauter d’une zone à une autre en utilisant des caméras pré-définies
sur la carte. Pour ajouter une caméra, déplacer la carte à l’endroit désiré puis faire
« add camera » dans la fenêtre du menu du clic droit (raccourci clavier : Ctrl+Alt+C).
Entrez le nom de la nouvelle caméra dans la nouvelle fenêtre puis cliquer sur OK.
Pour rappeler la liste des caméras il suffit de faire un clic droit puis de cliquer sur
« Cameras… ». Cela ouvrira la fenêtre où seront listées toutes les caméras que
vous aurez créés. Pour passer de l’une à l’autre, il suffit de double cliquer sur le nom
de la caméra voulue.
16
Important : Lors de la création d’une caméra le mode d’affichage est pris en compte.
Ainsi si vous créer une caméra en mode 3D puis que vous voulez y revenir depuis le
mode 2D, elle sera affichée en mode 3D.
4.3.3. Cameras
La liste des caméras pré-définies est consultable dans la fenêtre « Cameras… » du
menu clic droit. (raccourci clavier : Ctrl+Shift+C). Une fois votre liste de caméras
établie, vous pourrez aussi passer de l’une à l’autre avec Ctrl+1, Ctrl+2…0. La
position d’une caméra dans la liste définie sa position dans la séquence. Pour
modifier le position d’une caméra, il
suffit d’utiliser les flèches haut et
bas de la fenêtre.
Bouton « Go To » : Vous déplace
sur la caméra sélectionnée.
Bouton « Delete » : Supprime la
caméra sélectionnée.
Bouton « Delete All » : Supprime
toutes les caméras.
La partie « Camera Info » est à
votre discrètion. Les cases X,Y et Z
vous donnent la position de la
caméra sur la carte.
Le « free 3D camera » indique ici
une caméra créée en mode 3D ;
une caméra créée en mode 2D
sera indiquée par « Ortho Camera
».
Le champ zoom indique si vous
utilisez un zoom sur cette camera
(uniquement pour les caméras 2D).
17
4.4.
Menu du clic droit de la souris
En cliquant sur n’importe quel emplacement de la carte avec le bouton droit de votre
souris, vous faites apparaitre le menu du clic droit.
Properties… : Ouvre la fenêtre des propriétés.
Selected Object Menu : Menu des actions possibles applicables à l’objet/IA
sélectionné.
Add Object : Crée un OL
Add Target : Crée un TL
Add On Land Message : Ajoute un message d’atterrissage à une MCU Land.
Add on Take Off Message : Ajoute un message de décollage à une MCU Take Off
Add on Move Message : Ajout un message de mouvement à une MCU Move.
18
Add on Killed Message : Ajoute un message pour signaler la destruction d’un
objet/IA.
Add on Damage Message : Ajoute un message pour signaler qu’un objet/IA est
endommagé.
Add on Spawn Message : Crée un message signalant qu’une IA vient de popper.
Add on Target Attacked Message : Ajoute un message de décollage à une MCU
attack
Add on Area Attacked Message : Ajoute un message de décollage à une MCU attack
area
Look from this object : Permet de basculer l’affichage sur le point de vue de
l’objet/IA sélectionné sur la carte 3D.
Cut : Couper.
Copy : Copier.
Paste : Coller.
Group Objects : Réuni plusieurs objets/IA sélectionnés en un groupe. Attention une
fois créé les éléments d’un groupe ne peuvent plus être sélectionnés.
Ungroup : Pour dissocier un groupe.
Set Group As Working : Autorise la sélection des éléments d’un groupe pour les
modifier le nom du groupe sera écrit en caractères gras dans l’arbre de mission).
Reset Working Group : Verrouille le groupe.
Save Selection to File : Sauvegarde l’objet/IA sélectionné dans un fichier séparé.
Ortho View : Mode 2D.
Move Camera to … : Déplace la vue aux coordonnées spécifiées dans la fenêtre
suivante.
Focus on Selection Center : Zoom sur l’objet/IA
sélectionné.
19
Reset Camera Z : Réinitialise l’inclinaison horizontale de la caméra en position
normale.
Reset Camera FOV : Réinitialise le FOV de la caméra.
Go to Camera : Permet de sélectionner et d’afficher les caméras créées.
4.5.
Bottom service window de l’éditeur
Il s’agit de la barre inférieure de la fenêtre de travail de l’éditeur.
1) Coordonnées sur l’axe X du curseur de la souris.
2) Coordonnées sur l’axe Z du curseur de la souris.
3) Grille (m) : Taille de la cellule de la grille affichée en tenant compte du zoom
appliqué.
4) Caméra (XZ Zoom) : Coordonnées et position de la caméra première
personne.
5) Coordonnée caméra en X.
6) Coordonnée caméra en Z.
7) Coordonnée caméra en Y (hauteur), en mode 2D cette fenêtre Indique le ratio
du zoom de la caméra.
20
5.
5.1.
Mission
Propriétés et réglages de base
Lors de la création d’une mission, cette fenêtre apparaitra en bas à gauche de votre
écran.
Name : Nom donné à la mission. Si le nom est laissé en blanc, c’est le nom du
fichier de mission qui y sera affiché.
Date : Réglage de la date de la mission. La date de la mission peut être paramétrée
manuellement ou via le calendrier.
Time : Heure du début de la mission.
Mission type : Type de mission.
21
Lors de la création d’une mission, vous n’utiliserez que 4 types de mission, c’est à
dire Single (mission solo), Cooperative (mission en coopération), dogfight (combat
tournoyant) et training (entrainement). Les autres types de missions sont utilisés par
le générateur de mission.
Le type de mission choisi doit correspondre à l’emplacement de sauvegarde dans le
fichier « data\missions ». Si vous enregistrez une mission cooperative (par ex) dans
le fichier Single de la directory, cette dernière n’apparaitra pas dans la liste de
missions du jeu.
Author : Nom de l’auteur de la mission.
Landscape info : Choix des options de base de la carte.
a) Height map : Fichier donnant les propriétés des surfaces de la carte, à savoir
les routes, les forêts, les étendues d’eau ainsi que les textures recouvrant la
carte. L’extension pour ces fichiers est : « height.ini ».
b) Textures : Fichier donnant les spécifications des textures des divers composants
de la carte comme les forêts, l’eau, le masque de surface, les textures des
substrat des villes… etc. L’extension pour ces fichiers est : « textures.ini ».
c) Forest : Fichier permettant d’afficher les arbres correspondant à la saison
choisie. Exemple, le fichier « trees\summer.wds » permets d’avoir des arbres
d’été affichés sur la carte.
Atmosphere options : Réglage des conditions
météo.
Cloud : Il s’agit des réglages des nuages et du
ciel.
Level : Hauteur de la base des nuages.
Height : Epaisseur de la couche de nuages.
Sky config : Définit la couverture nuageuse.
Precipitations : Ici vous paramétrez les
précipitations (la pluie) et leur intensité.
Type : Pluie ou neige.
Level : Intensité des précipitations de 0 à 10.
Wind options : Paramètres du vent.
Direction : Direction d’où souffle le vent.
Speed (m/s) : Vitesse du vent en mètre par
seconde.
22
Ground/500m/1000m/2000m/5000m : Paramètres du
vent aux différentes altitudes.
Turbulence : Force des turbulences.
Bouton « Countries » : Choix du camp pour chaque
pays.
Pour affecter un pays à un camp il suffit de faire un
double clic en face du nom du pays (dans la colonne de
droite) pour choisir le camp du pays. Le bouton
« Restaure default countries » réinitialise la liste des
pays.
5.2. Fichiers « Mission Files », « Mission Localisation Files» et leurs Formats
Lors de la création d’une mission, plusieurs fichiers sont créés.
5.2.1. *.mission
Fichier source de la mission au format texte. Ce fichier peut être ouvert avec
n’importe quel éditeur de texte :
# Mission File Version = 1.0;
Options
{
LCName = 0; // mission name localization line index
LCDesc = 1; // mission description localization line index
LCAuthor = 2; // mission author localization line index
PlayerConfig = ""; //script of the plane available for the player in the mission
Time = 13:32:0; //mission start time
Date = 10.10.1914; //date in the mission
HMap = "graphics\landscape\height.ini"; //file describing mission map;
Textures = "graphics\landscape\textures.ini";// file describing mission map;
23
Forests = "graphics\landscape\trees\summer.wds"; // file describing mission map;
MissionType = 3; // mission type, in this case 3=Training (0=Single, 1=Cooperative,
2=Dogfight)
CloudLevel = 1500; //altitude of clouds
CloudHeight = 600; //clouds thickness
PrecLevel = 0; //downfall intensity
PrecType = 0; //downfall type
CloudConfig = "clear\sky.ini"; //weather type
Turbulence = 0; //turbulence force
WindLayers //wind settings by layers (altitude : direction : speed)
{
0:
0:
0;
500 : 0 :
0;
1000 : 0 :
0;
2000 : 0 :
0;
5000 : 0 :
0;
}
OppositeCountries //indexes of countries belonging to Opposite coalition
{
501; //Germany
502; //Austria-Hungary
}
OrderCountries // indexes of countries belonging to Order coalition
{
101; //France
102; //England
24
103; //USA
104; //Italy
105; //Russia
}
}
# end of file
5.2.2. *.msnbin
Le fichier mission *.msnbin est le fichier mission sous format binaire. Le bon
fonctionnement de ce fichier dépend directement de la version de l’éditeur. C’est-àdire qu’un fichier sauvegardé avec une version antérieure à la vôtre ne fonctionnera
pas. Si lors de l’ouverture d’une mission, l’éditeur affiche un message d’erreur et que
vous avez toujours les fichiers sources, effacez le fichier *.msnbin et sauvegarder la
mission. L’éditeur créera un nouveau fichier msnbin compatible avec sa version
actuelle.
Un fichier *.msnbin se charge plus rapidement qu’un fichier *.mission et sera utilisé
en priorité par l’éditeur lors de l’ouverture d’une mission (ceci est également vrai
dans le jeu lui-même).
5.2.3. [mission_name].eng (ou *.rus, *.ger, *.fra,*.spa)
Ce fichier « localization » sert à stocker tous les textes utilisés lors de votre mission.
Ainsi si vous avez créé une mission avec des textes en russe, et que vous vouliez
créer une version anglaise (ou française), il suffit juste copier le fichier et de
remplacer l’extension « .rus » par l’extension « .eng » (ou « .fra »).
5.2.4. [mission_name].list
Il s’agit d’un fichier qui est nécessaire au bon fonctionnement des missions en
coopération (voir chapitre 8).
5.2.5. Travailler avec le fichier Mission Localization Files
Attention, soyez très prudent lorsque vous commencez à utiliser le système de
« localization files ». Modifier ou ré- enregistrer une mission dans une autre langue
que celle où elle a été créé peut entrainer un changement de langue de l’éditeur et
par conséquent il peut y avoir des problèmes avec des lignes de localisation ID. Un
fichier « localization » peut être ouvert avec le Bloc-notes, car il est au format texte.
La police des fichiers « localisation » doit être UCS- 2 Little Endian.
25
5.2.6. Localization ID
Lors de la création de la mission tous les textes de la mission sont enregistrés dans
les fichiers de localization, où un ID est affecté à chaque bloc de texte.
Le fichier est composé d’une colonne de chiffre. Ces chiffres sont les ID et en face de
chaque ID vous trouverez le bloc de texte qui y est affecté.
Par conséquent, si vous créez plusieurs fichiers de localization (un par langue) pour
une même mission vous devrez vérifier tous les ID de tous les fichiers de localization
pour vous assurer de la correspondance des ID entre le fichier original et les
nouveaux fichiers.
Lors du réenregistrement d'une mission, pensez à vérifier les ID, car ils peuvent
changer lors de l'ajout de nouveaux objets/IA (les chances de modifications sont
minces mais une petite vérification ne peut pas nuire).
Ex d’un fichier de localization :
0:Attention! Incoming enemy fighters! Intercept them!
1:Excellent job! Enemy is destroyed!
2:Enemy fighters
3:
4:Airstart
5:Get ready for action – follow the waypoints!
6:
7:Primary objective failed
8:Our recon planes have to obtain very important information about enemy forces. Don’t let
enemy fighter near them!
6.
Travail sur les objets/IA
6.1. Sélection d’un objet
Pour sélectionner un objet, il suffit de faire un
clic gauche sur celui-ci. Un cadre vert apparait
alors autour.
26
Il est possible de sélectionner plusieurs
objets en même temps en faisant un clic
gauche et en faisant glisser le curseur
pour entourer tous les objets voulus avec
le cadre vert.
Enfin il est possible d’ajouter des objets à
un autre précédemment sélectionné en
appuyant sur la touche « Ctrl »+ clic
gauche. De cette façon, chaque objet aura
son propre cadre vert et tous les objets de
la sélection seront entourés par un cadre
bleu. Au milieu de cette sélection il y aura
alors un marqueur bleu.
6.2. Déplacement et positionnement d’un objet
Le déplacement et le positionnement d’un objet est possible soit via la fenêtre
« Basic properties » (voir le chapitre 7.2), soit en utilisant le clavier et la souris.
Mode 2D (Ortho view)
Avec la souris
Pour déplacer un objet, ce dernier doit être sélectionné. Cliquer dessus avec le
bouton gauche de la souris et faites le glisser jusqu’à la position voulue. Pour
orienter l’objet, vous devez cliquer sur le carré rouge en bas à droite du cadre vert, le
déplacement du curseur orientera l’objet. 2 lignes rouges partant du centre de l’objet
apparaitront alors ainsi qu’un cadre gris. Ces éléments représentent l’orientation
originale de l’objet et sa nouvelle orientation.
27
Avec le clavier
Après l’avoir sélectionné, vous utiliserez les touches haut, bas, gauche, droit du
curseur pour le positionner. En combinant la touche « shift » vous augmenterez le
déplacement tandis qu’avec la touche « Ctrl » vous le diminuerez. Les touches « < »
et « > » vous permettront de l’orienter et les touches « pgup » et « pgdown » le feront
bouger sur son axe Y (axe de l’altitude).
Mode 3D
Un objet sélectionné en mode 3D (voir screen ci-dessus) est marqué avec 2 cadres.
Le cadre vert indique sa position tandis que le cadre bleu indique la projection sur la
surface de ce dernier.
Pour déplacer un objet en mode 3D, maintenez la touche « shift » et le bouton
gauche de la souris.
Pour le faire pivoter, maintenez la touche « Ctrl » et le bouton gauche, le curseur
deviendra un « R ».
Le mode 3D utilise les mêmes raccourcis clavier que le mode 2D.
6.3.
Copy (copier), Paste (coller) et Delete (effacer)
N’importe quel objet ou groupe peut être copié, dans le presse-papier, et coller sur la
carte. Les raccourcis clavier sont les mêmes que ceux de windows (Ctrl+C pour faire
28
un copier et Ctrl+V pour faire un coller). Vous pouvez aussi utiliser le menu
contextuel de la souris (menu clic droit) pour faire ces opérations. L’objet/IA collé
apparaitra sous le curseur de la souris.
Il est aussi possible de créer plusieurs objet en maintenant la touche « Ctrl » après
avoir choisi l’unité dans la bibliothèque de l’éditeur.
6.4.
Groupement des objets
Un groupe est un nombre d’objets/IA liés en un bloc dans votre mission. Cela facilite
la gestion des unités de votre scénario. Il est possible de regrouper les IA/Objets
dans le mode 2D et le mode 3D.
Pour ce faire, sélectionnez les objets en faisant un cliquer glisser avec le bouton
gauche de la souris puis faites apparaitre le menu contextuel (clic droit). Enfin faites
un clic gauche sur « group objects ». Tous les objets de votre sélection sont alors
réunis en une seule entité. Exemple, pour créer une grande ville formée d'un grand
29
nombre de petits blocs ou lors de la création d’unité de mission fonctionnelle.
Le regroupement permet aussi de « décharger » la zone de travail, il vous suffit
d’annuler l’affichage des groupes dans le menu des filtres d’objets (cf. chap 4.1). Il
est possible d’éditer les objets réunis au seins d’un groupe.
Pour ce faire, sélectionnez un groupe puis clic droit de la souris cliquez sur => Set
Groupe de travail (si vous voulez ajouter ou déplacer des blocs à l'intérieur du
groupe, n’oubliez pas d'activer le filtre correspondant dans les filtres des objets,
sinon vous ne serez pas en mesure de déplacer ces objets).
Après avoir cliqué sur Set Groupe de travail, le groupe sera marqué par un cadre
jaune. Dans ce mode, vous pouvez déplacer, supprimer et ajouter des objets au
groupe. Placer tout simplement un objet dans le champ de travail de l'éditeur et il
sera automatiquement ajouté au groupe en cours d’édition.
Attention : n’oubliez pas de fermer le mode d'édition de groupe en faisant un clic droit
30
de la souris puis en cliquant sur « Reset working group sinon vous continuerez à
ajouter des éléments à ce groupe.
6.5.
Regroupement des IA/Objets en Vol (Wing) ou Escadrilles (Group)
Dans ce cas de figure, cela signifie que plusieurs IAS/Objets (dans notre cas des
avions) sont subordonnés à un dirigeant et vont exécuter tous les ordres reçus par
leleader.
Pour réunir n’importe quel type d’IA/Objets (véhicules/avions…) en mouvement en
une formation ou un vol (Wing) ou une escadrille ou un groupe (Group), il faut
attacher toutes les unités faisant partie de ce wing ou group à leur leader via des
target link (TL).
Le leader transmettra alors tous les ordres qu’il recevra à ses subordonnés, ce qui
permet de simplifier et de décharger la construction de la mission en ne donnant les
commandes qu’au chef du groupe.
A part les trains et les ballons, tous les objets (voitures, chars, artilleries…) peuvent
être organisé de la même manière (voir chapitre 7.2.1).
Il est possible de positionner l’emplacement des unités dans un groupe (voir chapitre
7.2.1) et de les faire changer de formation (voir chapitre 7.7.8).
6.6. Sauvegarde d’un fichier, Importation et Insertion d’un group présauvegarder
6.6.1. Sauvegarde d’un fichier
Il est possible de sauvegarder des groupes d’IAs/Objects
dans des fichiers pour les réutiliser ultérieurement. Ces
fichiers sont enregistrés dans le répertoire
« data/missions » par défaut et sont listés dans la section
« groups » de la bibliothèque d’objets de l’éditeur.
31
Pour ce faire, il suffit de cliquer sur « Save selection to file » dans le menu du clic
droit de la souris.
6.6.2. Importation d’objets dans une mission.
Vous pouvez importer un IA/objet sauvegardé dans un fichier « *.group » depuis
n’importe quelle autre mission avec la commande « import from file ». L’importation
(voir chapitre 4.2.1) se fait aux coordonnées où se trouvait le group au moment de sa
sauvegarde et aura les mêmes commandes et triggers, ce qui est très pratique pour
créer des modèles (Template) réutilisables.
Par contre, l’importation d’un groupe via le menu du clic droit permet d’importer le
groupe à l’endroit où se trouve votre curseur
7.
Edition des objets
Chaque MCU ou objet/IA placé sur la carte de l'éditeur a un certain nombre de
propriétés modifiables .
L'éditeur permet l'édition de groupe d'un ensemble de propriétés de base d'objets/IA
identiques , en sélectionnant (avec un cadre ou CTRL) plusieurs objets similaires
vous pourrez définir leurs propriétés à tous.
La fenêtre « Basic properties » s’ouvrira automatiquement lorsque vous
sélectionnerez un objet ou MCU et se trouvera par défaut dans le coin inférieur
gauche de l'éditeur.
32
7.1.
Menu « Objects Library » de l’éditeur
Planes : Avions.
Vehicules : Voitures, chars et objets terrestres.
Trains : trains et voiture attelée.
Ships : Bateau.
Artillery : Artillerie de campagne, howitzer, AAA, mitrailleuse
et mitrailleuses anti aériennes.
Aerostats : ballons de reconnaissance.
MCU :MCU, triggers, commandes et translator.
Groups : Groupe d’objets/IA enregistrés (voir chapitre 6.6).
Buildings : Bâtiment unique.
Blocks : Groupe de bâtiments, comme les bases pour une
ville, un village une église…
Airfields : Aérodrome ou groupe d’aérodromes
Battlefield : Composant d’un champ de bataille comme des barbelés, des points de
tir, des tentes…
Firing points : Point de tir.
Bridges : Ponts ferroviaire ou routier de différentes tailles et types.
Grounds : Objets du menu grounds (terrains)
Effects : Emetteurs d’effets comme des sirènes, des sons, des explosions, de la
fumée, etc…
Flags : Drapeau et manche à air
Helpers : Objets utilisé comme liaison entre l’interface et le générateur de mission
(voir chapitre 7.2.5).
Locations : Permet de générer des emplacements types dans la base de donnée
pour être utilisés dans le générateur de mission.
33
7. 2. Propriétés de base de l'Editeur : objets
7.2.1. Avions/Véhicules/Artillerie/Ballons
«>» Ce bouton ouvre les propriétés avancées..
Name – Nom de l’objet. Permet de spécifier le nom de l’objet ou dans le cas du multijoueur denommer
l’icône de sélection.
Model –Ce champ ouvre la liste des modèles à laquelle cet objet appartient. Il permet aussi d'assigner un
autre modèle (y compris son script interne) en conservant toutes les propriétés de l'objet initial. Lorsque
vous sélectionnez un ensemble d'objets de même type, par exemple plusieurs Avions ensemble ou
Véhicules ensemble vous pouvez modifier le groupe dans son entier ou changer le modèle actuel de ce
groupe pour un autre.
Create Linked Entity/Delete Linked Entity – crée/efface le lien entité de l'objet avec le monde du jeu.
Rôle de ce lien : Un objet sans ce lienne peut interagir dans le jeu,ne peut recevoir de liens venant de
MCU ou d'autres objets et n'existe même pas visuellement dans le jeu . Les bâtiments font exception à
cette règle - ils sont visibles et les autres objets peuvent interagir avec eux bien qu'ils n'aient pas d'entité.
Cependant ils ne peuvent changer de statut.
Aussi ce bouton doit être pressé dès qu'un objet (avion, char etc.) est posé sur la carte et qu'il doit
participé activement à la mission, exécuté des commandes ou envoyer des messages. Effacer le lien
entité n'a aucun sens si ce n'est de vouloir effacer tous les liens de cet objet.
Fields Position X:, Y:, Z: - montre les coordonnées de l'objet sélectionné dans le jeu, Y correspondant à
l'altitude au-dessus du niveau de la mer.
Fields Orientation AX:, AY:, AZ: -montre l'orientation de l'objet dans le jeu. Les valeurs augmentent
dans le sens horaire de 0 à 360 degrés. L'axe X correpond à un basculement sur l'axe longitudinal.
34
L'axe Y correspond à son azimuth (changement de cap), l'axe Z au pitch axis (angle entre l'axe
longitudinal et l'horizontale, la rotation s'effectuant vers le haut).
Description field –permet d'ajouter une description ou des notes à propos de cet objet.
Dans la fenêtre de la bibliothèque d'objets, Objects Library, faire un Clic-gauche sur le bouton Planes et
choisir un avion dans la liste. Clic-gauche sur la carte où vous le souhaitez . Donnez-lui "la vie" et pour
modifier ses propriétés vous devrez :
Clic-gauche sur l'icône de l'avion → Fenêtre Plane Properties (coin gauche en bas de l'Editeur) →
Clic-gauche sur le bouton CreateLinked Entity.
Les propriétés des avions (objets que le joueur peut contrôler) sont légèrement différentes de celles des
autres objets (artillerie, chars/voitures etc.), mais les différences reposent sur les quelques champs que les
avions possèdent en plus.
7.2.2. Trains
Nous devons mentionner séparément les objets trains (Trains), car ils présentent certaines
caractéristiques.
Pour créer un train vous devez poser une locomotive sur la carte et activer son entité.
Pour ajouter des wagons il faut cliquer sur le bouton – Carriages, qui se trouve dans les propriétés
basiques de la locomotive.
En appuyant sur le bouton Carriages vous ouvrez la boite de dialogue suivante :
35
Vous pouvez ajouter (<<<) ou retirer (>>>) des wagons du convoi. La liste des wagons déjà en place
est affichée dans la fenêtre de gauche (Carriage). Les boutons Up et Down permettent de changer
l'ordre des voitures.
7.2.3. Firing Point
Une fois l'Entité créée il s'agit d'un objet au sol à part entière avec toutes les propriétés d'un véhicule
sans toutefois avoir la possibilité de se déplacer.
7.2.4. Bâtiments/Blocks/Aérodromes/Battlefield/Ponts.
Les objets terrain (Constructions) ont les mêmes propriétés principales que les autres objets mais ont
certaines particularités que nous allons décrire maintenant.
Tous les objets de cette catégorie sont visibles en jeu sans avoir besoin de créer de lien entité, mais sans
lui ces objets seront indestructibles. Lorqsue ces objets ont une Entité ils possèdent une résistance aux
tirs ennemis dont la valeur est visible dans le champ Durability qu'il vous est loisible de régler (ce sont
ses points de vie).
Dans le champ Damage l'utilisation du bouton Add permet de définir des niveaux de dégâts dans lesquels :
36
- structure ID – ID d'une partie de l'objet, que vous désinez comme destructible;
- Damage Level – le niveau de dégâts pour cette partie précise.
Vous pouvez effacer une partie destructible de l'objet en la sélectionnant dans la fenêtre Damage puis
en appuyant sur la touche Suppr ( Del) du clavier ou effacer la liste entière en cliquant Delete All.
Les objets terrain participent pleinement au déroulement de la mission et peuvent influencer son résultat
tout comme les autres objets (avions/chars)
L'utilisation de messages tels que (On killed/On Damage) permet à ces objets de renseigner ou de
déclencher des triggers selon leur statut actuel.
37
7.2.5. Aides
Les Helpers sont faits pour servir d'interface entre l'Editeur et le générateur de mission. Vous
pouvez obtenir plus d'informations en lisant dans “ROF Template Editor Users Manual” la
description pratique de leur utlisation.Helper: Dynamic
Règle les propriétés dynamiques d'un objet et est utilisé pendant la création d'une mission.
Il est lié à un objet ou un groupe d'objets similaires (TL avec chacun d'eux) par des Target Links.
Dans les Advanced Properties vous pouvez voir la liste de propriétés de l'objet créé (“Property name”)
aet dans la section “Dynamic”, vous pouvez choisir les propriétés qui sont utilisées pendant la création
de la mission. True = utilisé et est affiché dans l'interface de l'Editeur.
Helper: Extended
Utilisé généralement pour déterminer /régler le nombre d'objets dans un groupe. Définit les ID des
objets pour un preset, qui seront ajoutés / supprimés à partir d'un preset lors de la génération de la
mission.
38
Helper: Input
Montre tous les liens entrant dans un preset.
Utilisé pour l'interface de connexion entre Mission Editor and Template Editor.
Helper: Output
Montre tous les liens sortant d'un preset
Utilisé pour l'interface de connexion entre Mission Editor and Template Editor..
Helper: Preset Description
Définit le texte de la description d'un preset du Mission Generator (composant du Mission
Briefing).
Dans les Advanced Properties vous pouvez régler le modèle-“Type” et écrire le texte décrivant le
preset dans le champ “Description Text”.
39
Helper: Reference Point
Ce Helper montre le centre, l'orientation et la taille d'un preset et est utilisé lors de la lecture des règles
plaçant un préréglage à un emplacement.
En maintenant le bouton gauche de la souris tout en tirant les parties vertes externes du cadre vous
pouvez modifier la taille d'un Reference Point. En cliquant sur l'icône puis sur la marque rouge vous
pouvez faire tourner le Reference Point.
Les mesures peuvent aussi être définies dans la fenêtre “Advanced Properties” .
40
7.2.6. Positions
NDT : Ce chapitre concerne le Générateur de Missions du jeu. La traduction fournie est sous réserve car beaucoup de choses nous
échappent.
Composées de plusieurs Eléments (Air Objective, Airfields etc.) qui permettent la
création de database utilisée par le générateur de missions.
Tous ont un jeu de propriétés de base :“Basic Properties”.
Name – nom de l'Elément.
Les champs Position and Orientation précisent les coordonnées
(X;Y) et l'orientation (AY).
Length and Width – longueur et largeur d'Elément.
41
Les coordonnées et les dimensions de l'Elément sont utilisées pendant la lecture des règles plaçant
un preset dans la Position par le Reference Point. L'orientation de l'Elément dans la Position peut
être changée par un Clic-gauche et en déplaçant la marque verte.
Dans le menu “Edit Countries” d'un Elément vous pouvez définir l'appartenance à un paysqui sera
utilisé pendant la création de la mission. Pour cette Position l'icône de l'Elément changera de
couleur selon lecamp (Opposite/Order) et restera grise dans le cas contraire.
AirObjective
Utilisé pour placer des preset du même modèle dans une mission.
Ici: “Air Objective”. Dans le menu des “Advanced Properties” de “Air Objective” le type de
l'Elément est réglé.
42
Recon Flight – reconnaisance par des avions ennemis
Bombers Flight – bombardiers ennemis
Fighter Patrol Flight – patrouille de chasseurs ennemis
Dogfight – dogfight
Duel Opponent – duel
Airfield
Utilisé lors de la création de DB d'un aérodrome pour une escadrille.
Dans le menudes Advanced Properties vous pouvez régler les paramètres de l'aérodrome, qui
permettra la création d'une DB qui servira lors de la création de la mission.
43
Le champ “Squadron Name” précise le nom de l'escadrille , Coming Date and Leaving Date – dates
d'arrivée et de départ de cette escadrile de l'aérodrome, le champ “Plane Types number” montre le
nombre et le type d'avions en service à cette époque en fonction du fichier Planes-Squad-Date.csv .
En cliquant sur le bouton Squad Planes vous pouvez voir la liste des avions en fonction de leur date de
déploiement.
Edit –modifie les escadrilles déjà existantes dans la DB de l'aérodrome.
Remove – retire une escadrille de la liste.
Le bouton “Add” ajoute une escadrille à la DB de l'aérodrome.
44
Cette liste affiche toutes les escadrilles disponibles, leur date d'arrivée et de départ ainsi que le type et
le nombre d'avions en service.
Le champ Coming Date donne la date d'arrivée, Leaving Date – date de départ.
Dans Squadron Planes Details vous pouvez voir les avions de l'escadrille selon les époques.
45
Decoration
Utilisé pour la mise en place de preset du même type dans une mission, en l'occurrence - “Decoration”.
Dans les “Advanced Properties” vous pouvez définir le type de “Decoration”.
Dogfight – dogfight
Transport Column –colonne de transport
Train – train
Tank Battle – bataille de chars
Artillery Position – position d'artillerie
AAA Position –défense anti-aérienne
46
GroundObjective
Utilisé pour la mise en place de preset du même type dans une mission, en l'occurrence - “Ground
Objective”. Dans les “Advanced Properties” vous pouvez définir le type de “Decoration”.
On Road Transport Column – colonne de transport sur une route
On Road Armored Column – colonne blindée sur une route
Tank Platoon – peloton de chars
AAA Position – défense anti-aérienne
Artillery Position – artillerie
Building –construction
47
Substrate
Génère des textures. Pendant la création par la commande “Generate Substrate INI file” (voir 4.2.8) un
fichier layers.ini est créé, en relation avec les coordonnées de la carte et sauvegardé. Les textures
elles-mêmes se trouvent à leur place (visibles dans l'Editeur).
Dans la fenêtre Advanced Properties :
Texture index est specifié et sera utilisé pour le substrat. La case “Filter Trees” crée / ne crée pas les
arbres pendant la création du fichier *.ini file generation.
TerrainLeveler
Génère les niveaux de la carte. Il montre les coordonnées pour la création des courbes de niveau
d'une zone.
Une fois toutes ces opérations terminées vous devez vérifier l'absence d'erreurs dans la DB avec la
commande “Check Location DB Integrity” (voir 4.2.8.). Le fichier de vérification est sauvegardé
dans IntegrityCheck.txt (data\LocationDatabase\).
7.3. Propriétés avancées de l'Editeur : objets.
7.3.1. Avions/Véhicules/Artillerie/Aérostats
48
Depuis la fenêtre des Propriétés de Base → Clic-gauche sur le bouton “>” qui se trouve à droite du champ
nom . Dans la fenêtre qui s'affiche (Plane Advanced) se trouve les réglages de l'objet sélectionné:
Linked TR ID field – ID Linked Entity est automatiquement assigné par l'Editeur lorsque l'Entité est
créée pour cet objet;
Enabled –si la case est cochée l'objet apparaîtra immédiatement pendant le chargement de la mission, si
elle ne l'est pas – l'objet pourra devenir visible plus tard en étant activer par un Trigger:Activate (voir
7.8.1.), lorsque le scénario le necessitera.
AI – niveau de l'IA d'un objet (Low, Normal, High, Ace, Player)
Si vous voulez qu'un joueur contrôle l'avion durant la missionvous devez choisir Player dans ce menu.
49
Il est possible de changer ces paramètres pour l'IA au cours du jeu (sauf pour un Joueur ) en utilisant la
commande Behavior (voir 7.6.3.).
Country – choisir un pays pour l'objet.
# in Formation – place d'un objet dans une formation (groupe).
Bouton Change Formation – changer la formation (la place dans un groupe) d'un ailier dans un groupe,
ne fonctione qu'avec un groupe comportant un leader. Sélectionnez la ligne qui correspond au numéro
dans la formation puis cliquez sur Up ou Down pour le déplacer dans la liste.
.
Cooperative Start – cochez cette case si la mission est multijoueur. Cela permet de pouvoir sélectionner
cet aviondans la liste des avions disponibles (voir Section 8).
Start in the Air – départ en l'air (seulement pour les avions). Ne pas oublier de régler l'altitude dans les
Propriétés de Base (Y) afin que l'avion démarre à l'altitude voulue.
Vulnerable – objet destructible ou pas. Cette option peut être changée au cours du jeu par la commande
Behavior (voir 7.6.3.).
Engageable – l'objet peut être ou non engagé par l'IA. Si cette case n'est pas cochée il ne sera pas
attaqué par les autres IA (avions,AA etc.). Cette option peut aussi être changée en jeu par la commande
Behavior (voir 7.6.3.).
Limit Ammo – munitions illimitées ou pas. Peut être modifiée au cours du jeu par la commande
Behavior (voir 7.6.3).
Damage – Threshold or Step. Seuil – réponse d'un objet à partir d'un certain nombre de points de vie
restant en pourcentage de la valeur initiale (réglage dans la case Damage report ) .
Etape –réaction à chaque étape (cyclique) du pourcentage de points de vie restant (réglage dans la case
Damage report ).
Damage report –pourcentage pour les conditions Damage Report (Seuil/Etape) .
Le champ Damage report est utilisé pour savoir à partir de quel pourcentage un Damage Message sera
envoyé. Si par exemple Damage report (Seuil) est mis à 25 – l'objet enverra un message lorsque ses
ponts de vie tomberont à 25 % ou moins de leur valeur initiale. Si Damage report (Etape) est réglé à
25 – l'objet enverra un message à chaque fois qu'il perdra un pourcentage de points de vie égal à 25%
du total initial. Le total initial correspond à 100 % de points de vie.
AI Return to Base Decision – cette option sélectionnée fera que l'IA retournera à la plus proche base
amie automatiquement s'il reçoit au cours de sa mission des dommages critiques ou se trouve à court de
munitions.
Script -
répertoire du fichier script de l'objet.
50
Skin field – camouflage de l'objet.
Payload – armement de l'avion (munitions, bombes).
Route Time (minutes) – estimation du rayon d'action (en durée) pour IA (pas encore utilisé).
On Messages Table – menu des Messages assignés à un objet.
Bouton Add by Dialog (en cas d'un groupe avec leader) or Set by dialog (pour ailier) – permet de lier un
ailier à un leader ou en utilisant une boite de dialogue. C'est à dire qu'un groupe peut être constitué en
utilisant la boite de dialogue.
Name –non utilisé.
Description –non utilisé.
Target ID – pour un ailier – le ID du leader pour cet ailier. Les leader ont toujours ce champ à -1.
Un exemple en format texte d'un avion contrôlé par un joueur démarrant au sol (Plane +
MCU_TR_Entity):
Plane //object type - plane
{
Name = "Plane"; //plane name will be shown in his icon in multiplayer if the plane will be AI controlled
Index = 34; //plane ID
LinkTrId = 35; //Entity ID
XPos = 2170.13; //Х coordinates of a plane
YPos = 116.53; //Y coordinates of a plane, in this case this parameter will equal ground level that plane
is being set to. If it’s a car or an artillery position this value will always equal ground level that this
object is set to;
ZPos = 4263.06; //Z coordinates of a plane
XOri = 0; //plane position (bank angle) by Х axis,
YOri = 0; //plane position (heading angle) by Y axis
ZOri = 12.8; //plane position (pitching angle) by Z axis
Script = "LuaScripts\WorldObjects\se5a.txt"; //plane script path
Model = "graphics\planes\se5a\se5a.mgm"; //plane 3D path
Country = 101; //country index assigned to the plane
Desc = ""; //plane description
Skin = ""; //plane skin path
AILevel = 0; //plane AI level, in this case 0=Player (1=Low, 2=Normal, 3=High, 4=Ace)
CoopStart = 0; //availability of the plane for coop mission, in this case the plane (plane slot to be
selected by player) will be not available for a player
NumberInFormation = 0; //position in formation
Vulnerable = 1; //vulnerability (1=yes, 0=no)
Engageable = 1; //will it be engaged by other AI (if = 0, then other AI won’t attack this plane)
LimitAmmo = 1; //limited ammo (yes=1, no=0)
StartInAir = 0; //airstart yes/no; if you set =1 then you must specify Ypos for the plane, otherwise it will
appear on the ground
Time = 60; //flight time limit (for AI)
51
DamageReport = 50; //damage limit (level) to be used by On Damage Message (if enabled)
DamageThreshold = 1; //damage report; in this case from full value (100%), if =0 then the report will be
sent gradually (step)
}
MCU_TR_Entity //plane Entity, if you don’t create it (create linked entity) then the plane won’t appear in
a mission
{
Index = 35; //entity ID
Name = "Plane entity"; //entity name (actually not used in a mission)
Desc = ""; //entity description
Targets = []; //an object that the Entity points at by Target Link
Objects = [];//an object that the Entity points at by Object Link
XPos = 2170.13; //matches object position that it’s assigned to, in this case the plane
YPos = 116.73; // matches object position that it’s assigned to, in this case the plane
ZPos = 4263.06; // matches object position that it’s assigned to, in this case the plane
XOri = 0; //not used
YOri = 0; // not used
ZOri = 0; // not used
Enabled = 1; //initial condition of the object (plane), if =1 then it will appear immediately after mission
start, if =0 then it will have to be activated
MisObjID = 34; //ID of the object that Entity belongs to
OnMessages //list of messages that the plane will execute
{
OnMsg – one of the assigned to the plane messages
{
Type = []; - type of the assigned message
CmdId = []; - ID of the command (source) after execution of which the next action (target) follows (if
exists)
TarId = []; - ID of the command (target) that the plane will execute
}
}
}
52
7.4. Mission Command Units (MCUs) de l'Editeur.
7.4.1. Propriétés de Base des MCUs.
En comparaison avec les propriétés de base des objets, celles des MCUs ne possèdent pas de Model ni de
bouton Create Linked Entity/DeleteLinked Entity, mais des listes de Targets et d'Objets qui affichent la
liste des noms et des ID des objets avec lesquels les MCUs possédent des TL et OL.
Les boutons Find target et Find object permettent de lier respectivement les MCUs avec des TL et OL.
Ces boutons agissent comme les raccoucis MAJ+T and MAJ+O.
Double clic dans un champ de la liste des TL ou OL permet d'assigner directement des liens en double
cliquant sur la ligne correspondante dans la liste qui s'affiche.
La position de certains MCUs est très importante (CheckZone, AttackArea). Ceci et d'autres propriétés
des MCUs seront expliquées dans les prochains chapitres du Manuel.
7.5. Advanced Properties des MCUs.
Regardons maintenant précisément ce que chaque commande fait et quels sont leurs réglages.
53
Tout d'abord regardons le réglage de la priorité - Priority.
Priority (exécution prioritaire) Low/Medium/High – définit la priorité d'exécution de la commande par
un objet IA. Plus cette priorité est élevée plus l'IA effectuera sa tâche de façon efficace en tenant
compte de son environnement.
Il est important de se souvenir que pour qu'une commande soit exécutée il faut qu'elle ait été activée
par un TL ou un Message.
Le moment de la réalisation de cette commande dépend de la programmation voulue par le concepteur
de la mission.
7.6. MCU Command
7.6.1. Command:Attack
Cette commande indique qui (OL) doit attaquer qui (TL). Notez que le TL n'est pas relié à une
commande ou un trigger mais à l'objet attaqué. L'objet assigné à cette tâche attaquera jusqu'à la
destruction de la cible.
Dans l'exemple ci-desuus
– le schéma décrit l'attaque d'un avion par un autre avion, où:
- Plane A – avion agresseur, la commandeAttack y est reliée par un OL;
- Plane B –avion attaqué auquel la commande Attack est liée par un TL;
- IN –toute chaîne logique qui puisse activer la commande Attack .
Double-clic sur l'icône de la commande pour ouvrir les Attack Advanced Properties .
54
Advanced Properties :
Priorité – priorité de l'éxécution de la commande :
Modèle d'objectif : Défaut, Primaire, Secondaire. Une icône pour le camp concerné peut être affichée
pour faciliter la visualisation de la mission. Sans conséquences pour les résultats de la mission..
Défaut – aspect
Primaire – aspect
55
Secondaire – aspect
Attack Group checkbox – si cochée l'attaquant attaquera la totalité du groupe auquel le TL est lié et pas
seulement l'objet auquel ce TL est lié.
Les priorités de la commande dépendent du niveau des IA :
En fonction du niveau de l'IA qui reçoit la commande, l'attaque se produira seulement si une certaine
distance est respectée entre la cible et l'attaquant (portée d'éxécution de la commande). Avec une priorité
réglée sur Medium cela donnera :
- AI Low – 4 km
- AI Normal – 5 km
- AI High – 6 km
- AI Ace – 7 km
Text format of the command:
MCU_CMD_AttackTarget //MCU type
{
Index = 5; //MCU ID
Name = "command Attack"; // MCU name (not displayed in GUI)
Desc = ""; // MCU description (not displayed in GUI)
Targets = []; // objects’ ID that this command points at with TL
Objects = []; // objects’ ID that this command points at with OL
XPos = 2283.32; // Х axis coordinates
YPos = 119.646; // Y axis coordinates
ZPos = 4280.93; // Z axis coordinates
XOri = 0;
YOri = 0;
ZOri = 0;
AttackGroup = 1; //attack group (if TL is pointed at the group leader)
GoalType = 0; //goal type, affects how icon is displayed in GUI
Priority = 1; //priority settings for command execution
}
7.6.2. Command:AttackArea
Cette commande permet de définir une zone dans laquelle un objet doit attaquer les objets du camp ennemi.
56
Dans l'exemple ci-dessus
– Attack Area command, où:
- Plane A – avion agresseur auquel la commande AttackArea est reliée par un OL;
- IN – toute chaîne logique qui puisse activer la commande AttackArea.Double-clic sur l'icône
de la commande pour ouvrir les Attack Area AdvancedProperties.
57
Advanced Properties
:Priority – priorité d'éxécution de la commande :
Modèle de mission: Défaut, Primaire, Secondaire. Une icône peut être affichée pour un camp afin de
faciliter la visualisation de la zone. Sans conséquences sur le résultat de la mission.
Défaut –aspect
Primaire – aspect
Secondaire – aspect
58
Attack Air Targets, Attack Ground and Attack Ground Targets checkboxes – si cochée l'objet sélectionné
doit attaquer respectivement des cibles aériennes, une zone au sol ou des cibles au sol.
Il existe différentes options concernant l'attaque au sol selon le type d'armement dont l'objet dispose:
- mitrailleuses et AA attaqueront dans une sphère dont le rayon est programmé dans les
propriétés de Attack Area et dont le centre se trouve à l'endroit où la commande est posée. Cela pour
éviter d'attaquer des objets situés sous la surface du sol;
- Les canons et obusiers attaqueront au hasard à la surface de la zone dont le rayon est programmé dans
les propriétés de l' Attack Area et dont le centre se trouve en un point situé à verticale de la commande
depuisle sol;
- les avions lâcheront toutes leurs bombes à la verticale de la commande posée au sol. I.e. si la mission est
de larguer des bombes en palier à une certaine altitude alors vous devez définir l'altitude de la commande
au centre de la cible..
Attack Area field –réglez le rayon de la zone en mètres.
Time: minutes and Seconds fields – réglez la durée de vie de la commande en minutes et secondes
respectivement.
Text format of the command:
MCU_CMD_AttackArea
{
Index = 4; //ID MCU
Name = "command AttackArea"; // MCU name (not displayed in GUI)
Desc = ""; // MCU description (not displayed in GUI)
Targets = []; // objects’ ID that this command points at with TL, this command can’t have any TL
Objects = []; // objects’ ID that this command points at with OL
XPos = 2074.81; // Х axis coordinates
YPos = 113.7; // Y axis coordinates, this is altitude of Attack Area, don’t forget to set this altitude since
AI considers its value
ZPos = 4018.81; // Z axis coordinates
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; // orientation (doesn’t have any functions in a mission)
ZOri = 0; // orientation (doesn’t have any functions in a mission)
AttackGround = 0; // Attack Area type (Attack Ground yes=1/no=0)
AttackAir = 0; // Attack Area type (Attack Air yes=1/no=0)
AttackGTargets = 0; // Attack Area type (Attack Ground Targets yes=1/no=0)
AttackArea = 1000; //radius in meters
Time = 600; //time of command execution in seconds
GoalType = 0; //goal type, influence the look of an icon in GUI
Priority = 1; //command execution priority settings
}
59
7.6.3. Command:Behavior
Cette commande provoque des changements dynamiques aux propriétés telles que : vulnérabilité,
munitions limitées, possibilité d'être attaqué par des IA et leur niveau.
Dans cet exemple:
- la commande Behavior activée par un TL va induire des modifications à Plane A selon les réglages
internes à la commande Behavior .
La commande s'applique à tous les objets (sauf bâtiments et ponts) qui possèdent des propriétés
dynamiques.
La commande est liée à un objet par un OL. Double-clic sur l'icône de la commande pour ouvrir les
Behavior AdvancedProperties .
60
Filter checkbox – si cochée modifie en conséquence les propriétés.
Vulnerable checkbox – objet vulnérable aux dégâts, oui/non;
Engageable checkbox – IA peuvent engager ou pas l'objet;
Limit Ammo checkbox – munitions limitées ou pas;
AI Level field – Compétence des IA.
Player – N/A, non utilisé;
Le niveau des IA peut être défini pour tous les avions (ou objets) non contrôlés par
lej oueur.
Low -faible niveau;
Normal – niveau moyen;
High – haut niveau;
Ace –As.
61
Text format of the command:
MCU_CMD_Behaviour //MCU type
{
Index = 6; // MCU ID
Name = "command Behaviour"; // MCU name (not displayed in GUI)
Desc = ""; // MCU description (not displayed in GUI)
Targets = []; // objects’ ID that this command points at with TL, this command can’t have any TL
Objects = []; // objects’ ID that this command points at with OL
XPos = 2024.18; // Х axis coordinate
YPos = 110.925; // Y axis coordinate
ZPos = 4164.77; // Z axis coordinate
XOri = 0; // orientation (doesn’t have any functions in a mission)
YOri = 0; // orientation (doesn’t have any functions in a mission)
ZOri = 0; // orientation (doesn’t have any functions in a mission)
Filter = 0; //settings of the filter for the specified properties
Vulnerable = 1; //object vulnerability settings
Engageable = 1; //settings of object interaction with other AI
LimitAmmo = 1; // ammo limit settings of the object
AILevel = 2; //AI settings of the object
}
62
7.6.4. Command:Cover
Ordonne de couvrir (protéger) des objets ou un groupe d'objets . S'applique SEULEMENT aux avions.
Dans cet exemple:
- Plane A reçoit l'ordre de protéger Plane B;
-La commande Cover est reliée à l'objet devant éxécuter l'ordre (Plane A) par un OL et par un TL
vers l'objet à protéger;
- IN –toute chaîne logique pouvant activer la commande Cover.
63
Cette commande est liée au leader du groupe devant assurer la protection par un OL. Double-clic sur
l'icône de lacommande pour ouvrir les CoverAdvanced Properties.
Advanced Properties :
Priority – priorité d'éxécution de la commande:
Modèle de mission : Défaut, Primaire, Secondaire. Une icône peut être affichée pour le camp concerné
afin de faciliter la visualisation de la tâche de couverture.
Défaut – aspect
Primaire – aspect
Secondaire – aspect
64
Cover Group checkbox: si cochée la commande s'applique à tous les objets du groupe. Non cochée
elle ne s'applique qu'à l'objet auquel elle est connectée par un TL.
Text format of the command:
MCU_CMD_Cover // MCU type
{
Index = 7; // MCU ID
Name = "command Cover"; // MCU name (not displayed in GUI)
Desc = ""; // MCU description (not displayed in GUI)
Targets = []; // objects’ ID that this command points at with TL
Objects = []; // objects’ ID that this command points at with OL
XPos = 2077.79; // Х axis coordinate
YPos = 110.272; // Y axis coordinate
ZPos = 4355.4; // Z axis coordinate
XOri = 0; // orientation (doesn’t have any functions in a mission)
YOri = 0; // orientation (doesn’t have any functions in a mission)
ZOri = 0; // orientation (doesn’t have any functions in a mission)
CoverGroup = 1; //cover the group yes=1/net=0
GoalType = 0; //goal type, affects icon type in GUI
Priority = 1; //command priority
}
65
7.6.5. Command:Damage
Cette commande inflige des dommages à un objet.
Dans cet exemple:
- commande Damage – OL depuis la commande vers Plane A;
- IN –toute chaîne logique qui puisse activer la commande Damage qui agira sur l'objet (Plane A).
Elle est connectée à l'objet par un OL.
Pour un groupe d'objet elle est connectée au leader et affectera tous les objets du groupe..
Double-clic sur l'icône de la commande pour ouvrir les Damage Advanced Properties.
66
Advanced Properties :
Damage –intensité de la commande.
Minor –niveau faible de dégâts ;
Major – niveau élevé de dégâts;
Kill –objet détruit.
Text format of the command:
MCU_CMD_Damage // MCU type
{
Index = 8; // MCU ID
Name = "command Damage"; // MCU name (not displayed in GUI)
Desc = ""; // MCU description (not displayed in GUI)
Targets = []; // objects’ ID that this command points at with TL, this command can’t have any TL
Objects = []; // objects’ ID that this command points at with OL
XPos = 2107.58; // Х axis coordinates
YPos = 112.755; // Y axis coordinates
ZPos = 4272; // Z axis coordinates
XOri = 0; // orientation (doesn’t have any functions in a mission)
67
YOri = 0; // orientation (doesn’t have any functions in a mission)
ZOri = 0; // orientation (doesn’t have any functions in a mission)
Damage = 0; // damage level set to an object 0=Minor, 1=Major, 2=Kill
}
7.6.6. Command:Effect
Cette commande permet d'activer ou de désactiver un Effect posé au préalable sur la carte.
Dans cet exemple:
- IN -toute chaîne logique qui puisse activer la commande Effect ;
- La commande-Effect est connectée à l'Effect-objet par un OL et selon les réglages internes
effectués l'active (start) ou la désactive (stop).
Double-clic sur l'icône de la commande pour ouvrir les Effect Advanced Properties.
68
Advanced Properties :
Action Type – décide si l'on active l' Effet (start) ou si on le désactive (stop).
Start – Effet activé;
Stop – Effet désactivé.
Note: cette commande ne fonctionne qu'avec les éléments de la section Effects. Cette section contient
des Effets utilisables dans les missions Single, dont le nombre et le modèle peuvent varier selon la
version du SME versions.
Astuce:
Pour démarrer l'effet vous devez le placer sur la carte (Object Library=>Effects) et cliquer sur le
bouton (CreateLinked Entity) pour "le rendre vivant". Ensuite connectez la commande-Effect avec l'
Effect lui-même avec un OL. Dans ce cas la commande-Effet est activée par toute chaîne logique.
L'Effet démarrera ou s'arrêtera selon les réglages effectués dans le champ Action Type .
69
Text format of the command:
MCU_CMD_Effect //тип MCU
{
Index = 9; //ID MCU
Name = "Command Effect"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // objects’ ID that this command points at with TL, this command can’t have any TL
Objects = []; // objects’ ID that this command points at with OL
XPos = 2116.51; // X axis coordinate
YPos = 114.073; // Y axis coordinate, for the command itself this position doesn’t matter, but for the
Effect that this command launches this position must be specified, as the Effect is a visual (or sound)
object in a mission
ZPos = 4218.38; // Z axis coordinate
XOri = 0; // orientation (doesn’t have any functions in a mission)
YOri = 0; // orientation (doesn’t have any functions in a mission)
ZOri = 0; // orientation (doesn’t have any functions in a mission)
ActionType = 0; // start=0 or stop=1 (start or stop)) of the Effect
}
7.6.7. Command:Force Complete
Interrompt la dernière commande reçue par l'objet
70
Dans cet exemple nous devons arrêter la commande Cover et donner la commande suivante à l'avion:
- Plane A (en cours d'exécution de la commande Cover ) –couvre Plane B;
- command activated – chaîne logique ayant activé la commande Cover;
- IN –toute chaîne logique devant interropre la commande en cours d'éxécution (ici –couvrir Plane B ). La
commande suivante pour Plane A est mise en oeuvre par un Timer 1s (durée du timer réglée à 1 seconde)
afin d'éviter un télescopage entre plusieurs évènements (éviter de stopper une éventuelle commande ).
Double-clic sur l'icône de la commande pour ouvrir les Force Complete Advanced Properties.
Advanced Properties :
Priority – priorité d'éxécution de la commande
Astuce:
Lorsque vous utilisez cette commande vous devez vous souvenir que s'il existe d'autres actions
(commandes ) assignées à cet objet après la commande en cours, alors il faut placer un Timer avec une
durée 1 à 2secondes entre la commande Force Complete et la commande suivante . A défaut toutes les
commandes suivantes risquent de ne pas démarrer (voir exemple).
Text format of the command:
MCU_CMD_ForceComplete // MCU type
{
Index = 10; // MCU ID
Name = "command Force Complete"; // MCU name (not displayed in GUI)
Desc = ""; // MCU description (not displayed in GUI)
Targets = []; // objects’ ID that this command points at with TL, this command can’t have any TL
Objects = []; // objects’ ID that this command points at with OL
XPos = 2116.51; // Х axis coordinates
YPos = 115.985; // Y axis coordinates
ZPos = 4039.66; // Z axis coordinates
XOri = 0; // orientation (doesn’t have any functions in a mission)
YOri = 0; // orientation (doesn’t have any functions in a mission)
ZOri = 0; // orientation (doesn’t have any functions in a mission)
Priority = 2; //priority settings of the command
}
71
7.6.8. Command:Formation
Cette commande permet de mettre en formation un groupe d'objet.
Dans cet exemple:
- Command Formation est connectée par OL au leader du groupe;
- IN –toute chaîne logique qui puisse activer la commande Formation, qui à son tour ordonne au leader
quel est le type de formation à suivre.
72
Double-clic sur l'icône de la commande pour ouvrir les Formation Advanced Properties.
Advanced Properties :
Formation Type list – différentes formations disponibles.
Les modèles de formation sont destinés aux avions (avec le préfixe: Plane) ou aux véhicules (avec le
préfixe : Vehicle).
Plane: None –avions: colonne.
Plane: V-Form – avions: formation en "V".
Plane: Left Edge Form –avions: en échelon gauche.
Plane: Right Edge Form –avions: en échelon droit.
Vehicle: On Road Column – les véhicules se déplacent sur le réseau routier en colonne.
Vehicle: Off Road Column – les véhicules se déplacent en colonne directement d'un point à un autreen
ignorant les routes.
Vehicle: Off Road User Formation – les véhicules se déplacent selon l'ordre assigné lors de la création du
groupe (i.e. selon le rang de création utilisé dans l'Editeur) directement au waypoint.
Vehicle: Forward –déplacement en avant.
Vehicle: Backward –déplacement en arrière (seulement pour les véhicules à chenilles)
Vehicle: Stop –arrêt sur la route.
73
Vehicle: Panic Stop – arrêt en se dispersant dans la zone.
Vehicle: Continue Moving –redémarrer après arrêt.
Vehicle: Set Direction and Stop –arrêt en tournant dans la direction réglée dans YOri.
Formation Density list – règle la distance entre les objets en formation depuis lâche (Loose) à
dense (Dense).
Text format of the command:
MCU_CMD_Formation // MCU type
{
Index = 11; // MCU ID
Name = "Command Formation"; // MCU name (not displayed in GUI)
Desc = ""; // MCU description (not displayed in GUI)
Targets = []; // objects’ ID that this command points at with TL, this command can’t have any TL
Objects = []; // objects’ ID that this command points at with OL
XPos = 2036.09; // Х axis coordinates
YPos = 111.578; // Y axis coordinates
ZPos = 4209.45; // Z axis coordinates
XOri = 0; // orientation (doesn’t have any functions in a mission)
YOri = 0; // orientation, used only by Set Direction And Stop
ZOri = 0; //(doesn’t have any functions in a mission)
FormationType = 0; // formation type 0=Plane: None, 1= Plane: V-Form, 2= Plane: Left Edge Form, 3=
Plane: Right Edge Form, 4= Vehicle: On Road Column, 5= Vehicle: Off Road Column, 6= Vehicle: Off
Road User Formation, 7= Vehicle: Forward, 8= Vehicle: Backward, 9= Vehicle: Stop, 10= Vehicle: Panic
Stop, 11= Vehicle: Continue Moving, 12= Vehicle: Set Direction and Stop
FormationDensity = 0; //formation density 0=Dence, 1=Safe, 2=Loose
}
74
7.6.9. Command:Land
Ordonne à un "avion" (type d'objet) d'atterrir à l'endroit où l'icône de la commande est posée.
Dans cet exemple:
- IN - toute chaîne logique qui puisse activer la commande Land.
Le trait jaune indique la direction de l'approche pour les IA aussi faites attention lors du placement de
cette commande.
Cette commande fonctionne avec un objet auquel elle est reliée par un OL (s'il s'agit d'un groupe d'objet
→ OL avec le leader du groupe).
Lors de la création de la mission il est important de tenir compte de ce qui suit :
- cette commande ne doit être posée qu'à proximité immédiate d'un aérodrome, parce que lorsque les IA
reçoivent cette commande ils deviennent sans défense et si vous leur donnez cette commande trop d'un
aérodrome ils ne prendront aucune action de défense s'ils sont attaqués par d'autres participants (du camp
ennemi) . Ils réalisent de ce fait un vol rectiligne.
L'atterrissage peut se faire en tout point de la carte si tant est que l'IA puisse le faire en toute sécurité (si la
surface n'est pas plate ou la présence d'obstacles sur la pente d'approche peut provoquer le crash de
l'avion).
Si l'aérodrome sur lequel la Commande Land est posée possède un Created Linked Entity alors l'IA suivra
le plan de vol défini pour cet aérodrome.
Ce point n'est pas obligatoire, mais n'oubliez pas de poser la commande sur le sol. Si le plan de vol est
affiché sur la carte alors la commande Land sera visible sur l'aérodrome.
Double-clic sur l'icône de la commande pour ouvrir les Land Advanced Properties.
75
Advanced Properties :
Goal Type: Défaut, Primaire, Secondaire. Affiche l'icône pour l'équipe pour visualiser la zone
d'atterrissage. N'a aucune influence sur les résultats de la mission.
Default – aspect:
Primaire et Secondaire aspects identiques.
76
Text format of the command:
MCU_CMD_Land // MCU type
{
Index = 12; // MCU ID
Name = "command Land"; // MCU name (not displayed in GUI)
Desc = ""; // MCU description (not displayed in GUI)
Targets = []; // objects’ ID that this command points at with TL, this command can’t have any TL
Objects = []; // objects’ ID that this command points at with OL
XPos = 2036.09; // Х axis coordinate, you have to specify this parameter because AI considers position
of this command
YPos = 111.578; // Y axis coordinate, you have to specify this parameter because AI considers position
of this command
ZPos = 4283.91; // Z axis coordinate, you have to specify this parameter because AI considers position
of this command
XOri = 0;
YOri = 0; // direction of landing approach – considered by AI
ZOri = 0;
GoalType = 0; //goal type, affects icon type in GUI
}
7.6.10. Command:Move
Non utlisée.
7.6.11. Command:PlayAnimation
Cette commande ordonne au Translator:Animation Operator (voir 7.7.1.) de jouer l'une des
animations fournies avec le jeu.
77
Double-clic sur l'icône de la commande pour ouvrir les Play Animation Advanced Properties.
Advanced Properties:
Animation Name field: - nom de l'animation qui doit être jouée. La liste des animations provient de
celle du translator Animation Operator translator qui est connecté à la commande par OL.
Note: cette commande ne fonctionne qu'avec le translator Animation Operator (voir 7.7.1).
Astuce:
Pour démarrer une animation vous devez connecter Play Animation à Animation Operator par OL et
sélectionner le modèle de l'animation que vous voulez faire jouer par PlayAnimation. La commande
PlayAnimation est activée par toute chaîne logique. Voir aussi les Sections 9.7 and 9.8.
Text format of the command:
MCU_CMD_PlayAnimation // MCU type
{
Index = 14; // MCU ID
Name = "command Play Animation"; // MCU name (not displayed in GUI)
Desc = ""; // MCU description (not displayed in GUI)
Targets = []; // objects’ ID that this command points at with TL, this command can’t have any TL
Objects = []; // objects’ ID that this command points at with OL
78
XPos = 2283.32; // Х axis coordinates
XPos = 2107.58; // Y axis coordinates
YPos = 115.08; // Z axis coordinates
ZPos = 4197.53;
XOri = 0; // orientation (doesn’t have any functions in a mission)
YOri = 0; // orientation (doesn’t have any functions in a mission)
ZOri = 0; // orientation (doesn’t have any functions in a mission)
AnimationName = ""; // selected animation to be played
}
7.6.12. Command:PlaySound
Cette commande ordonne au Translator:Animation Operator (voir 7.7.1.) de jouer un fichier audio.
Dans cet exemple:
- Translator Animation Operator – dans les propriétés de ce translator vous réglez le type de fichier
(sound scheme) / ou sound sample (voir 7.7.1);
- IN – toute chaîne logique qui puisse lancer la commande Play Sound par un TL (ou Message).
Double-clic sur l'icône de la commande pour ouvrir les Play Sound Advanced Properties.
79
Advanced Properties:
Sound Name: - nom du fichier audio à jouer. La liste des fichiers audio correspond à la liste de
l'AnimationOperator qui est connecté à la commande par OL.
Volume %: - volume du fichier joué en %.
Note: cette commande ne fonctionne qu'avec Animation Operator translator (voir 7.7.1.).
Astuce:
Pour démarrer un fichier audio vous devez poser un Animation Operator translator, connecter une
commande PlaySound et un translator Animation Operator par un OL, régler le fichier dans la
commande ou simplement lancer la commande si le fichier est au format sample. La commande
PlaySound peut être lancée par n'importe quelle chaîne logique.
Text format of the command:
MCU_CMD_PlaySound // MCU type
{
Index = 15; // MCU ID
Name = "command Play Sound"; // MCU name (not displayed in GUI)
Desc = ""; // MCU description (not displayed in GUI)
Targets = []; // objects’ ID that this command points at with TL, this command can’t have any TL
Objects = []; // objects’ ID that this command points at with OL
XPos = 2012.26; // Х axis coordinate
YPos = 107.672; // Y axis coordinate
80
ZPos = 4385.19; // Z axis coordinate
XOri = 0; // orientation (doesn’t have any functions in a mission)
YOri = 0; // orientation (doesn’t have any functions in a mission)
ZOri = 0; // orientation (doesn’t have any functions in a mission)
SoundName = ""; // sound to play. The sound can be not specified if sound type is selected as “config is
sample”
Volume = 100; // sound volume
}
7.6.13. Command:Take off
Cette commande ordonne à un avion de décoller.
Dans cet exemple :
- la commande Take off est connectée au Plane A par un OL;
- IN – toute chaîne logique qui puisse activer la commande Take off par un TL;
- Plane A – avion devant décoller. Dans les Propriétés de l'avion vous devez prévoir un On Take off
Message (voir 2.3.), qui a comme source la commande Take off et n'importe quelle action suivante que
doit accomplir l'avion après décollage en Target (OUT).
En général pour faire décoller un avion il est suffisant de simplement utiliser la commande Take off
reliée à l'avion par un OL. Mais ce n'est généralement pas suffisant parce que l'avion a une action à
accomplir après décollage.
Plus souvent préciser seulement le Target est possible (i.e. l'action suivante que doit accomplir l'avion IA
après décollage, voir 2.3) par un On Take off Message mais parfois vous devez préciser la source aussi,
i.e. quelle commande Take off précisément est concernée (rapport d'exécution) par l'action suivante
81
(Target). Cela est nécessaire lorsqu'il y a plusieurs commandes Take Off dans une mission (selon le
scénario de la mission) afin que l'Avion connaisse l'exacte provenance des Messages.
Habituellement la première action à réaliser après décollage est de rejoindre le premier waypoint. Ainsi
l'avion après décollage se dirige vers ce waypoint (voir 9.1.).
Un avion peut décoller de n'importe quel endroit de la carte pour peu qu'il puisse le faire en toute sécurité
(si la surface n'est pas plate l'IA peut s'écraser).
Double-clic sur l'icône de la commande pour ouvrir les Take Off Advanced Properties:
Il n'existe pas de Propriétés avancées pour cette commande.
Text format of the command:
MCU_CMD_TakeOff // MCU type
{
Index = 16; // MCU ID
Name = "command Take off"; // MCU name (not displayed in GUI)
Desc = ""; // MCU description (not displayed in GUI)
Targets = [];//objects’ ID that this command points at with TL, this command can’t have any TL
Objects = []; // objects’ ID that this command points at with OL
XPos = 2095.66; // Х axis coordinates
YPos = 114.842; // Y axis coordinates
ZPos = 4197.53; // Z axis coordinates
82
XOri = 0; // orientation (doesn’t have any functions in a mission)
YOri = 0; // orientation (doesn’t have any functions in a mission)
ZOri = 0; // orientation (doesn’t have any functions in a mission)
}
7.7. MCU Translator.
7.7.1. Translator:Animation Operator
Dans cet exemple:
- Translator:Animation Operator est connecté avec la commande Play Animation (voir 7.6.11)
par TL;
- IN –toute chaîne logique qui active la commande Play Animation ;
83
Ce translator joue des animations. Si ce translator est dans une mission alors l'animation est dans son état
basique.
Vous devez aussi vous souvenir que s'il existe une cinématique (décrite par la configuration du
Translator:Animation Operator) cette scène en mode basique apparaitra dès le début de la mission. Vous
devez donc désactiver cette cinématique par un Trigger Deactivate pour la faire jouer seulement au bon
moment. Au moment choisi vous la lancerez par un trigger Activate (la cinématique prendra vie dans le
jeu) et seulement après vous pourrez démarrez l'animation et le son de la cinématique.
Vous devez utiliser la commande Play Animation. Cette commande est liée au trigger by OL. Doubleclic sur l'icône du translator pour ouvrir les Play Animation Advanced Properties.
Advanced Properties:
Speed (m/s): - règle la vitesse initiale de la cinématique dans le jeu.
Config: règle le chemin vers le fichier décrivant la scène. Le fichier a comme extension *.chr extension.
Set button –valide le chemin.
Animations list: si tout est correctement sélectionné (*.chr fichier sélectionné ) unel iste d'animations
disponibles est affichée qui peuvent être jouées par la commande Play Animation.
Sound Config: - précise le chemin vers le fichier son associé à la scène . L'extension du fichier est *.lua.
Dans la plupart des cas où vous voulez accompagner la scène par une animation sonore il est préférable
d'utiliser un fichier son au format *.mp3, pour cela vous devez cocher Config is Sample et valider le
chemin vers le fichier son (*.mp3). La commande PlaySound permet de définir le début de la lecture de
ce fichier son (voir 7.6.12).
Sounds list: - si tout est correctement sélectionné il doit s'afficher une liste de sons, qui peuvent être
joués par la commande PlaySound (voir 7.6.12.), excepté les fichiers avec échantillonnage.
On Message Table field: - permet d'envoyer un message OnAnimationStop à l'arrêt de l'animation.
Add message… button –règle le modèle de message.
Pour jouer l'animation préparée au préalable dans l'Editeur ( animations réglées dans le champ
“Animation Name” ). Clic-droit sur la commande Play Animation command, Select Object Menu
=>Play.
Text format of the translator:
MCU_TR_AnimationOperator //MCU type
{
Index = 17; //MCU ID
Name = "Translator Animation Operator"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // Objects’ ID that this translator points at with TL, this translator can’t have any TL
Objects = []; // Objects’ ID that this translator points at with OL, this translator can’t have any OL
84
XPos = 2089.71; // X axis coordinate
YPos = 114.516; // Y axis coordinate, this one is important to set as this parameter specifies the altitude
where an object or sound will appear
ZPos = 4182.64; // Z axis coordinate
XOri = 0; // turn angle around X axis
YOri = 0; // turn angle around Y axis
ZOri = 0; // turn angle around Z axis
Enabled = 1; //is not used through the Editor interface
Speed = 0;
Config = "";
SoundConfig = ""; //specified sound config
ConfigIsFile = 0; //checkbox, if sound file is separate sound sample (*.mp3)
OnMessages //list of assigned messages
{
}
}
7.7.2. Translator:Camera Operator
Dans cet exemple:
- Translator: Camera Operator – objet-caméra dans la mission, activé par n'importe quelle chaîne
logique ;
- IN –toute chaîne logique qui puisse activer Camera Operator par TL (ou Message);
85
Ce translator permet de positionner une caméra en jeu.
Double-clic sur l'icône du translator pour ouvrir les Camera Operator Advanced Properties.
Advanced Properties:
Camera Operator Type list: - choisir le modèle de caméra.
Camera types:
Defaut – la vue démarre depuis le cockpit. Utilisé aussi en caméra par défaut après le démarrage de la
mission (voir ci-dessous).
Cockpit – N/A
External Free – caméra en vue externe de l'avion (ou un objet) sélectionné en Premier dans le groupe.
Ne dépend pas de son orientation dans l'espace.
External Fixed – caméra en vue externe de l'avion (ou un objet) sélectionné en Premier dans le groupe.
Cette caméra est fixée selon un certain point de vue par rapport à l'avion et change de position losque
l'avion se déplace.
Flyby – camera qui montre le passage du Premier avion (ou un objet) d'un groupe.
External Chase – camera qui a deux objets dans son angle de vue, le Premier et le Second d'un groupe.
Free – camera qui peut être déplacée librement par le joueur.
86
Self – camera qui pointe vers un point réglé dans ses proppriétés de base ou qui se déplace en 3D selon
un chemin programmé. Cette caméra est une vue à la première personne.
Padlock – camera qui suit le Second Objet d'un groupe définit par sa position dans CameraOperator.
Pour cela le translator doit être définit comme le Premier Objet du groupe.
Speed field– vitesse de la caméra en km/h.
FOV (‘) field: - champ de la caméra en degrés.
3D Path file: - possibilité de "fixer" la trajectoire de la caméra qui a été déchargé depuis l'éditeur 3D
(*.camfiles). Voir les sections 9.7 and 9.8.
First Object group: définit le “premier objet” pour la caméra. Le bouton permet d'afficher une liste de
choix de translators . Le bouton Clear efface la sélection du translator.
Second Object group: définit le “second object” pour la caméra. Le bouton permet d'afficher une liste de
choix de translators . Le bouton Clear efface la sélection du translator.
Lock View checkbox – si cochée enlève la possibilité de passer à une autre caméra. Si une caméra avec
de tels réglages est activée en jeu alors le joueur ne pourra passer sur une autre caméra tant qu'une autre
caméra n'aura pas été activée.
Use as Default Order View checkbox – règle la caméra par défaut au démarrage pour les joueurs du
camp ami. Si plusieurs caméras ont ainsi été définies alors la caméra de démarrage est choisie au hasard.
Use as Default Opposite View checkbox - règle la caméra par défaut au démarrage pour les joueurs du
camp ennemi . Si plusieurs caméras ont ainsi été définies alors la caméra de démarrage est choisie au
hasard.
Lorsqu'il existe plusieurs caméras par défaut vous pouvez passer de l'une à l'autre avec la touche F12
(F12 – dans l'ordre, ctrl+F12 –dans le sens opposé),
Si vous choisissez Translator:Camera Operator vous pourrez voir les angles et l'axe de vision tels que
ceux définis dans les propriétés.
Si vous avez besoin de définir précisément le cadre de la caméra, (par exemple en caméra Self, i.e. vue à
la première personne) alors sélectionnez la caméra, Clic-droit sur Select Object Menu => Look from
This Object. Après avoir réglé le cadre à votre convenance Clic-droit sur une zone libre de l'espace de
travail de l'Editor, Select Object Menu =>Copy Camera Position and Orientation to Object. A la suite de
quoi la position de la caméra sera copiée dans le translator.
87
Si le Translator:Camera Operator est utilisé avec le Trigger:Camera point (voir 7.8.2.), i.e.la caméra
doit suivre une trajectoire programmée il est possible de placer des points automatiquement.
Pour cela sélectionnez Translator:Camera Operator, maintenir le Shift gauche et poser les waypoints.
88
N'oubliez pas de régler FOV de la caméra, puisque le Trigger:Camera point règlera automatiquement
les propriétés des waypoints en lisant ceux du Translator:Camera Operator. La vitesse de la caméra
est celle de son premier waypoint.
Souvenez-vous que si la mission nécessite le démarrage de la caméra immédiatement en suivant des
waypoints alors le Translator:Camera Operator ne peut "démarrer" Trigger:Camera point, puisque le
translator n'émet aucun TL lui-même.
C'est pourquoi un Message entrant (IN) doit démarrer simultanément l'opérateur lui-même et son
premier waypoint. Ainsi la camera se déplacera depuis le pont initial vers le point choisi à la vitesse
voulue selon les réglages du premier waypoint.
Lorsque la caméra se déplace sa vitesse et son orientation changent doucement de point en point
selon les réglages et les positions de ces points.
Text format of the translator:
MCU_TR_CameraOperator //MCU type
{
Index = 18; //MCU ID
Name = "Translator Camera Operator"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // Objects’ ID that this translator points at with TL, this translator can’t have any TL
Objects = []; // Objects’ ID that this translator points at with OL, this translator can’t have any OL
XPos = 2012.26; // X axis coordinate, is set in the Editor – where the camera looks
YPos = 110.272; // Y axis coordinate (altitude), is set in the Editor – where the camera looks
ZPos = 4069.45; // Z axis coordinate, is set in the Editor – where the camera looks
XOri = 0; // is set in the Editor – camera frame tilt (bank)
YOri = 0; // is set in the Editor – camera turn angle in horizontal plane
ZOri = 0; // is set in the Editor – camera turn angle in vertical plane
Enabled = 1; //is not used through the Editor’s interface
Speed = 0; //camera initial speed
FOV = 90; //camera view angle
FirstId = -1; //ID of the first object that the camera refers to (-1 – object not assigned)
SecondId = -1; //ID of the second object that the camera refers to (-1 – object not assigned)
LockView = 0; //switching from the camera is blocked
CameraType = 0; //camera type
DefOrderView = 0; //is used as default camera for Order
DefOppositeView = 0; // is used as default camera for Opposite
Config = ""; //camera config file name (*.cam)
OnMessages //list of assigned messages
{
}
}
89
7.7.3. Translator:Icon
Translator:Icon est utilisé pour l'affichage d'information sur la carte. Si vous devez déssiner un plan de
vol, une zone d'attaque ou de patrouille sur la carte vous devez utiliser ce translator, puisque les autres
éléments tels que Trigger:Waypoint ou autres ne s'affichent pas sur la carte.
Ceci vise les objectifs suivants :
- le concepteur de la mission peut voir chaque élément sur la carte;
- le système de visualisation de ROF prend en compte tous les noms et descriptions d'une carte dans le
fichier de langue Localisation (voir 5.2.);
- il est possible de cacher à l'un des camps la route de l'autre camp (en missions multiplayer );
- il est possible d'afficher différentes couleurs de ligne, épaisseur, modèles d'icônes sur la carte.
90
Advanced Properties:
Background color field: - définit la couleur de la ligne quittant une icône selon le standard RGB.
Règle l'intensité du rouge, vert et bleu composant la couleur de la ligne.
Pour afficher les lignes connectez les icônes par TL.
Le champ Name permet d'afficher ce nom sur la carte une fois l'icône posée.
Par exemple: «№1» ou «Attack position».
Le texte écrit dans le champ Description s'affichera au passage de la souris au-dessus de cette icône.
Par exemple, si vous passez la souris au-dessus de «№1» ou «Attack» alors une fenêtre apparaitra
dans laquelle vous pouvez écrire la description complète de ce point. Par exemple «Waypoint №1» ou
«Enemy target attack point» respectivement.
Affichage dans l'Editeur:
Affichage dans l'interface joueur (GUI):
91
Les concepteurs de mission peuvent aussi dessiner différentes formes avec ce translator. Pour faire
cela sélectionnez l'icône “None”. Par exemple:
Affichage dans l'éditeur :
Affichage dans l'interface (GUI):
92
Affichage dans l'éditeur :
Affichage dans l'interface (GUI)::
93
Icon ID field: - définit le modèle d'icône à afficher sur la carte.
Modèles:
None – aucune icône et son aspect sur la carte ;
Attack Enemy Recon Flight – attaquez les reconnaissances ennemies;
Attack Enemy Bombers Flight – attaquez les bombardiers ennemis;
Attack Enemy Fighter Patrol Flight – attaquez les chasseurs ennemis;
Attack Enemy Dogfight – aidez les avions amis dans les dogfight contre les avions ennemis;
Attack Enemy Duel Opponent – dogfight -duel;
Cover Friendly Recon Flight – protégez les vols de reconnaissance
amis;
Cover Friendly Bomber Flight – protégez les bombardiers amis;
Recon For Enemy Position – zone de reconnaissance des positions ennemies
Attack Enemy Transport Column – attaquez les colonnes de transport ennemies;
94
Attack Enemy Armoured Column – attaquez les colonnes de blindés ennemies;
Attack Enemy Tank Platoon – attaquez les chars ennemis;
Attack Enemy AAA Position – attaquez les positions AA ennemies
Attack Enemy Artillery Position – attaquez les positions d'artillerie
ennemies
Attack Enemy Observation Balloon – attaquez les ballons d'observation ennemis;
Attack Enemy Buildings – attaquez les bâtiments ennemis;
Cover Friendly Transport Column –protégez les colonnes de transport amies;
Cover Friendly Armoured Column – protégez les colonnes de blindés amies;
Cover Friendly Tank Platoon – protégez les chars amis;
Cover Friendly AAA Position – protégez les positions amies AA;
Cover Friendly Artillery Position – protégez les positions amies d'artillerie;
Cover Friendly Observation Balloon – protégez les ballons d'observation amis;
Cover Friendly Buildings –protégez les bâtiments amis;
Waypoint – plan de vol;
Action point – point d'action principale du plan de vol ;
Take off - ;
Land –
atterrissage;
Airfield -aérodrome.
95
Line Type: - définit le modèle de lignes affichées sur la carte pour le plan de vol :
Normal (1) – fine ligne avec une flèche pointant dans la direction du vol. Une flèche s'affiche du
point de départ vers le point d'arrivée, utilisée habituellement pour les plans de vol;
Bold (2)– ligne épaisse ;
Border (3)– ligne épaisse avec une bordure.
Sur la carte on obtient:
Opposite Coalition and Order Coalition checkboxes: - si cochée permet de savoir quel camp verra
s'afficher les icônes sur la carte.
Il est possible de poser des icônes reliées automatiquement entre elles par des TL . Pour faire cela
sélectionnez une icône, maintenir la touche Shift appuyée et poser le nombre voulu d'icônes sur la
carte.
Text format of the translator:
{MCU_Icon //MCU type
Index = 19; //MCU ID
Targets = [];// Objects’ ID that this translator points at with OL
Objects = [];// Objects’ ID that this translator points at with OL, this translator can’t have any OL
XPos = 2045.03; // X axis coordinate
YPos = 112.067; // Y axis coordinate
ZPos = 4283.91; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
Enabled = 1; //is not used through the Editor’s interface
LCName = 3; //index of localization line in localization file of the mission. Will be displayed in GUI as
icon name
LCDesc = 4; //index of localization line in localization file of the mission. Will be displayed in GUI as
icon description (window will pop-up when you move mouse over it)
OppositeAirplanes = 1; //will be visible only for Order team
96
OrderAirplanes = 1; // will be visible only for Opposite team
IconId = 0; //icon type
RColor = 255; //red color component
GColor = 255; // green color component
BColor = 255; // blue color component
LineType = 0; //line type
}
7.7.4. Translator:Media
Dans cet exemple:
- Translator: Media – intégration d'un média dans la mission;
- IN – toute chaîne logique qui puisse activer Translator: Media par TL (ou Message);
97
Les Media sont variés : graphique, video ou intégrations flash dans la mission.
Double-clic sur l'icône du translator pour ouvrir les Media Advanced Properties.
Advanced Properties:
Media Type list: media valides pour être joués en mission.
Image –une image (supporte *.jpg, *.dds files);
Video –un clip video, supporte bink video (*.bik);
Flash – flash inclusion (*.swf);
Post Effect Movie – applique des post-effect à une image donnée. L'effet “Old movie” est affiché
àl'écran;
98
Stop Media – stoppe tout Media.
Browse button –permet de choisir le dossier contenant le Media.
Set button –valide la sélection du Media.
Base Time (s) field: -durée pendant laquelle le Media est affiché à l'écran, sans tenir compte du fondu
d'apparition et de disparition de l'image.
Fade In (s) field: - durée de l'apparition progressive du Media, i.e. la durée requise pour obtenir la
saturation du Media depuis une valeur nulle jusqu'à la valeur désirée du champ Opacity (%).
Fade Out (s): - durée de la disparition progressive du Media, i.e.la durée requise pour obtenir la
disparition du Media depuis la valeur spécifiée dans le champ Opacity (%)
jusqu'à une valeur nulle.
Opacity (%) field: - règle la saturation (opacité) du Media en % .
Background color RGB group: -règle la couleur du fond en définissant l'intensité du rouge, vert, et bleu
de la couleur.
On Message Table field: - permet d'utiliser un message (OnAnimationStop) après la fin de l'affichage
du Media, i.e. à la fin du Media vous pouvez envoyer un Message.
Add message… button –fonctionne seulement avec Stop Media Type en définissant des messages
types.
99
OnMediaStopped – démarre automatiquement l'action suivante dans la mission (par le biais d'un
message) lorsque le Media s'est arrêté.
OnFlashDialogAction – «manuellement» (en appuyant sur un bouton ou un champ dans la mission) lance
l'action suivante dans la mision.
Par exemple, vous pouvez définir avec Flash un bouton pour échapper à la lecture du média. Ainsi
pendantla lecture du Média en appuyant sur ce bouton l'action suivante dans la mission sera lancée.
ATTENTION!:Dans l'Editor actuel seul OnMediaStopped fonctionne avec les options
OnFlashDialogAction. Par exemple – en cliquant Skip dans les missions d'entraînement.
ATTENTION!: - après le démarrrage de tout Translator:Media l'accélération du temps n'est plus
possible.
Cependant après l'arrêt duTranslator:Media vous devez relancer Translator:Media avec les réglages :
MediaType: Stop Media (dans la fenêtre propriétés).
ATTENTION!: - au stade actuel de développement le jeu ne contrôle pas le temps de Flash (tout le
mécanisme de visualisation est dans le moteur du jeu), ainsi pendant l'affichage d'un Média le jeu ne
PEUT ETRE MIS EN PAUSE.
Si vous utilisez un Média juste après le démarrage d'une mission (et pendant la pause qui suit le
chargement du jeu durant de 1 à 2 secondes) – notez que cela peut poser problème. Pour un exemple
détaillé de l'utilisation d'un Média dans ces conditions voir la Section 8.8.
Text format of the translator:
MCU_TR_Media //MCU type
{
Index = 20; //MCU ID
Name = "Translator Media"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // Objects’ ID that this translator points at with TL, this translator can’t have any TL
Objects = []; // Objects’ ID that this translator points at with OL, this translator can’t have any OL
XPos = 2024.18; // X axis coordinate
YPos = 109.304; // Y axis coordinate
ZPos = 4355.4; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
Enabled = 1; //is not used through the Editor’s interface
Config = ""; //translator config file path
TotalTime = 10; //total time of translator action (Bas Time)
ExpandTime = 1; //translator media fade in time (Fade In)
FadeTime = 1; // translator media fade out time (Fade Out)
Opacity = 100; //opacity of translator’s media
RColor = 255; //red component of background color
GColor = 255; // green component of background color
BColor = 255; // blue component of background color
100
MediaType = 0; //media type, 0=Image, 1=Video, 2=Flash, 3=Post Effect Movie, 4=Stop Media
OnMessages //list of assigned messages
{
}
}
7.7.5. Translator:Mission Objective
Dans cet exemple:
- Translator:Mission Objective – ce translator détermine le succès/échec des objectifs de mission;
- IN –toute chaîne logique qui puisse par un TL (ou Message) activer le Translator: MissionObjective.
Ce translator définit les objectifs primary (principal) ou secondaire (optionnel) pour un camp. Doubleclic sur l'icône du translator pour ouvrir les Mission Objective Advanced Properties.
Advanced Properties:
101
Pour assigner la tâche primaire:
Primary Task group: détermine la tâche principale du camp (Order) et son résultat (Succes/Echec).La
case OrderCoalition doit toujours être cochée ! Sinon le translator ne fonctionnera pas.
Par exemple si vous cohez Success/Fail cela signifie que le camp (OrderCoalition) doit accomplir son
objectif principal pour réussir la mission. Si vous ne la cochez pas cela veut dire que le camp échoue.
En sélectionnant les conditions spécifiques le créateur de la mission détermine ce qui doit fonctionner
et dans quel cas.
Groups: Oder Coalition secondary tasks and Opposite Coalition secondary tasks, - non utilisés dans ce
cas.
Pour assigner la tâche secondaire:
Primary Task group: non utilisé dans ce cas.
Oder Coalition secondary tasks group: définit la ou les tâches secondaires pour le camp ami.
Task 1 – 5 checkboxes si cochées permet de définir jusqu'à 5 tâches secondaires ;
Success(Fail) checkboxes si cochées (Success) et en cas de réussite de l'objectif assigné l'objectif sera
inscrit dans les statistiques comme accompli et affiché sur la carte en jeu. Si non cochée –sera inscrit
comme échoué et affiché comme tel sur la carte.
Opposite Coalition secondary tasks group: définit les tâches secondaires pour le camp opposé.
Task 1 – 5 checkboxes si cochée permet jusqu'à 5 tâches secondaires.
Success(Fail) checkboxes si cochées (Success) et en cas de réussite, l'objectif sera inscrit dans les
statistiques comme accompli et affiché sur la carte en jeu. Si non cochée –sera inscrit comme échoué et
affiché comme tel sur la carte. (Voir ci-dessous).
Restriction: vous ne pouvez utiliser le même translator pour définir plus d'une tâche simultanément.
Le nombre de tâches seconndaires ne peut excéder 5 pour chaque camp.
Si au moins un Mission Objective Fail est validé – cette tâche sera considérée comme échouée quel que
soit le nombre de succès (Mission Objective Success) validés par ailleurs.
Il peut y avoir un nombre quelconque de Translator:Mission Objective dans une mission – selon
l'évolution que prendra la mission.
Name field – si vous inscrivez un nom dans ce champ alors lorsque le sera actif ce nom apparaîtra sur la
carte. De la même façon si vous écrivez un texte dans le champ Description alors le passage de la souris
au-dessus du nom de l'objectif rempli affichera ce texte (lors du debriefing).
Ce translator est affiché différemment dans l'interface (en jeu, sur la carte de vol) en fonction du type de
condition (succès / échec) choisi dans les properties. Bien mieux il serait utile (mais pas obligatoire) de
l'utiliser avec un Translator:Icon – si l'icône de l'objectif et la tâche à remplir elle-même sont
approximativement au même endroit alors vous pouvez associer les deux translators dans la mission.
Visuellement cela ressemblera à une icône avec différents fonds.
Text format of the translator:
102
MCU_TR_MissionObjective //MCU type
{
Index = 21; //MCU ID
Targets = []; // Objects’ ID that this translator points at with TL, this translator can’t have any TL
Objects = []; // Objects’ ID that this translator points at with OL, this translator can’t have any OL
XPos = 2113.54; // X axis coordinate
YPos = 116.999; // Y axis coordinate
ZPos = 4257.11; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
Enabled = 1; //is not used through the Editor’s interface
LCName = 3; //localization line index in mission localization file, will be displayed in GUI as the name
of activated task
LCDesc = 4; // localization line index in mission localization file, will be displayed in GUI as the
description of activated task
TaskArray //task accomplishment settings array (different combination with different checkboxes
selection in the translator)
{
}
}
7.7.6. Translator:Mission begin
Dans cet exemple:
- Translator:Mission begin – ce translator détermine le démarrage de la mission, en fait le point de
départ de tous les évènements de la mission;
- OUT –tout évènement primordial déclenché par : Translator:Mission begin.
103
Celui ci démarre la mission après son chargement. Transmet “mission begin” depuis le moteur du jeu.
Double clic sur l'icône du translator pour ouvrir les Mission Begin Advanced Properties.
Il peut y avoir un nombre quelconque de Mission begin dans le jeu. Tous s'activent au démarrage de la
mission.
Cela permet d'importer des éléments de mission comportant déjà leur propre Mission Begin.
Text format of the translator:
MCU_TR_MissionBegin //MCU type
{
Index = 22; //MCU ID
Name = "Translator Mission Begin"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // Objects’ ID that this translator points at with TL
Objects = []; // Objects’ ID that this translator points at with OL, this translator can’t have any OL
XPos = 2101.62; // X axis coordinate
YPos = 115.08; // Y axis coordinate
ZPos = 4272; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
Enabled = 1; //is not used through the Editor’s interface
}
104
7.7.7. Translator:Mission End
Dans cet exemple:
- Translator: Translator: Mission End – ce translator définit la fin de la mission, et passe à l'affichage
des statistiques;
- IN –toute chaîne logique qui puisse par un TL (ou Message) activer le Mission End.
Lorsqu'il est activé la mission se termine obligatoirement sans aucune intervention des joueurs.
Double-clic sur l'icône du translator pour ouvrir les Mission End Advanced Properties.
Advanced Properties:
Mission Results field: - a deux réglages Succeeded et Failed, respectivement si les objectifs de la
missionont été remplis ou pas. Dans la version actuelle de ROF cette option dans les Advanced
Properties ofthe translator ne FONCTIONNE PAS.
Text format of the translator:
MCU_TR_MissionEnd //MCU type
105
{
Index = 23; //MCU ID
Name = "Translator Mission End"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // Objects’ ID that this translator points at with TL, this translator can’t have any TL
Objects = []; // Objects’ ID that this translator points at with OL, this translator can’t have any OL
XPos = 2050.98; // X axis coordinate
YPos = 112.394; // Y axis coordinate
ZPos = 4209.45; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
Enabled = 1; //is not used through the Editor’s interface
Succeeded = 1; //is not used through the Editor’s interface, n/a
}
7.7.8. Translator:Subtitle
Dans cet exemple:
- Translator: Subtitle – affiche un message dans une mission;
- IN – toute chaîne logique qui puisse par un TL (ou Message) activer Translator:
Subtitle;
106
Ce translator permet d'afficher des messages au cours d'une mission. Double-clic sur l'icône du
translator pour ouvrir les SubtitleAdvanced Properties.
Advanced Properties:
Dialog (config) checkbox – doit être cochée pour modifier les messages (cochée par défaut).
Dialog field.
Duration –durée d'affichage du message en secondes.
Font Size – taille de la police .
Horizontal Align – alignement horizontal (gauche, centre, droit).
Vertical Align -alignement vertical (haut, centre, bas)
Text Color RGB –couleur de la palette RGB ,définit les composantes rouge, verte et bleu de la
couleur du texte.
Text – écrivez votre texte ici.
Translator:Subtitle permet l'utilisation des balises html :
<br> - retour à la ligne;
107
<u>…</u> - texte souligné;
<i>…</i> - italiques;
<b>…</b> - gras.
Par exemple: MISSION DESCRIPTION<br><u>Date:</u> 03.09.1918.
s'affichera ainsi :
_
MISSION DESCRIPTION
Date: 03.09.1918.
_
Il peut y avoir autant que voulu de Translator:Subtitledans une mission.
Pour afficher un message en jeu vous devez l'activer par TL.
Lorsque le Translator:Media of Stop Media type est déjà activé (voir 7.7.4) le message en cours sera
aussi arrêté.
ATTENTION !: - à ce stade du développement du logiciel, le jeu ne contrôle pas le temps ( la totalité du
procédé d'affichage repose sur le langage Flash, y compris l'affichage des messages). Donc si vous
mettez le jeu en pause pendant l'affichage d'un message celui-ci CONTINUERA DE S'AFFICHER en
fonction de la durée réglée.
C'est pourquoi si vous voulez afficher un message au démarrage d'une mission, par exemple par un texte
d' introduction (après le chargement du jeu et la pause initiale d'une à deux secondes), souvenez-vous de
cette contrainte pour ne lancer l'affichage d'un message qu'après un délai de (~3 secondes) en utilisant
un Timer. Voir un exemple de message dans la Section 8.8.
Text format of the translator:
MCU_TR_Subtitle //MCU type
{
Index = 24; //MCU ID
Name = "Translator Subtitle"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // Objects’ ID that this translator points at with TL, this translator can’t have any TL
Objects = []; // Objects’ ID that this translator points at with OL, this translator can’t have any OL
XPos = 2158.22; // X axis coordinate
YPos = 115.53; // Y axis coordinate
ZPos = 4194.55; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
Enabled = 1; //is not used through the Editor’s interface
OnMessages //N/A
108
{
}
Dialog
{
Duration = 1; //duration of subtitles
FontSize = 20; //subtitle font size
HAlign = 1; // subtitle horizontal alignment 0=left, 1=center, 2=right
VAlign = 2; // subtitle vertical alignment 0=top, 1=center, 2=bottom
RColor = 255; //red component of subtitle text color
GColor = 255; // green component of subtitle text color
BColor = 255; / blue component of subtitle text color
LCText = 3; //line index in localization file
}
}
7.8. MCU Trigger.
7.8.1. Trigger:Activate
Dans cet exemple:
- Trigger:Activate – ce trigger active des objets précédemment désactivés ou non actifs (voir 7.2.1) par
OL (avions/véhicules et translators) et par TL (triggers/commands).
- IN – toute chaîne logique qui puisse activer Trigger:Activate.
Il est important de se souvenir qu'un objet qui n'a pas été activé ne répondra à aucune commande durant
la mission et ne pourra interagir avec les autres objets.
109
Ce trigger peut activer des objets ou des MCUs précédemment désactivés dans une
mission.Double-clic sur l'icône du trigger pour ouvrir les Advanced Properties
(aucune). Ce trigger est souvent utilisé en coordination avec le trigger Deactivate
(voir 7.8.5.).
Text format of the trigger:
MCU_Activate //MCU type
{
Index = 25; //MCU ID
Name = "Trigger Activate"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // ID of the objects that this trigger refers to by TL
Objects = []; // ID of the objects that this trigger refers to by OL
XPos = 2107.58; // X axis coordinate
YPos = 112.755; // Y axis coordinate
ZPos = 4292.85; // Z axis coordinate
XOri = 0;
YOri = 0;
ZOri = 0;
}
110
7.8.2. Trigger:Camera point
Voir Section 7.7.2.
Dans cet exemple:
- Trigger:Camera point – camera waypoint trigger. En lui-même Trigger:Camera point n'a aucun sens
puisqu'il est un objet esclave de Translator:Camera Operator auquel il est lié par un OL. I.e. Camera
Operator règle les camera properties ainsi que son type dans la mission et Camera point réalise le
mouvement de caméra.;
- IN – toute chaîne logique qui puisse démarrer Trigger:Camera point and Translator:Camera Operator;
- OUT 1 & OUT 2 - Camera point est un trigger donc une fois activé il peut lui-même activer d'autres
objets dans la mission.
Pendant les mouvements de caméras vers les waypoints suivants, FOV changera progressivement de
point en poiunt selon les réglages de chaque Camera Point.
111
Ce trigger est activé par une caméra (caméra en tant qu'objet mobile) et en même temps donne l'ordre à
la caméra de suivre le chemin spécifié selon une vitesse définie ainsi qu'une altitude et une orientation
réglées dans Basic Properties of the trigger.
Double-clic sur l'icône du trigger pour ouvrir les Camera Points Advanced Properties.
Camera Point Advanced Properties:
Speed (m/s) field: -règle la vitesse (en mètres par seconde) à laquelle la camera doit se déplacer vers ce
point.
FOV field: -champ de vision de la caméra.
La vitesse de la camera ne doit pas excéder 200 m/s!
Text format of the trigger:
MCU_CameraPoint //MCU type
{
Index = 26; //MCU ID
Name = "Trigger Camera Point"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // ID of the objects that this trigger refers to by TL
Objects = []; // ID of the objects that this trigger refers to by OL
XPos = 2104.6; // X axis coordinate
YPos = 113.408; // Y axis coordinate
ZPos = 4367.32; // Z axis coordinate
XOri = 0; // orientation by X axis – camera tilt (bank) in horizontal plain
112
YOri = 0; // orientation by Y axis – camera turn angle in horizontal plane
ZOri = 0; // orientation by Z axis – camera tilt in vertical plain
Speed = 100; //camera speed
FOV = 90; //camera FOV angle
}
7.8.3. Trigger:Check zone
Dans l'exemple proposé (les conditions du test sont réglées dans les propriétés du trigger):
- Trigger: Check zone – ce trigger vérifie si des objets d'un type défini sont présents ou non dans la zone
spécifiée (cette zone est marquée par un cercle jaune);
- IN -toute chaîne logique qui puisse par un TL (ou Message) activer Trigger:Check zone;
- OUT –toute chaîne logique qui puisse être activée par le Check zone trigger après son activation.
Dans cet exemple (le test repose sur l'avion lié par un lien objet) :
113
- Trigger: Check zone – le trigger vérifie si l'objet (ici – avion) est dans ou hors de la zone. Le
trigger prend référence de l'avion auquel il est lié par un OL et n'est activé que par lui;
- IN - toute chaîne logique qui puisse par un TL (ou Message) activer Trigger:Check zone;
- OUT –toute chaîne logique qui puisse être activée par le Check zone trigger après son
activation.
Il existe deux modes : vérification de la présence d'objets à l'intérieur (Closer) de la zone définie par son
rayon ou à l'extérieur de celle-ci (further).
Double-clic sur l'icône du triger pour ouvrir les Check Zone Advanced Properties.
Advanced Properties:
Zone (m) field: - règle le rayon de la zone dans laquelle le trigger travaille, en mètres.
Zone Type:Cylinder (Sphere) checkbox –la zone peut-être en forme de cylindre (lorsque cochée) ou de
sphère (lorsque décochée). En réglage sphère ne pas oublier de préciser l'altitude (YPos).
Opposite Airplanes checkbox – active (on)/non active (off) le trigger par un avion du camp opposé.
Opposite Vehicles checkbox – active (on)/non active (off)le trigger par un véhicule du camp opposé .
114
Order Airplanes checkbox – active (on)/non active (off) le trigger par un avion du camp ami .
OrderVehicles checkbox – active (on)/non active (off)le trigger par un véhicule du camp ami.
Distance Type:(Closer) checkbox – lorsqu'elle est cochée cela signifie que le trigger sera activé
lorsqu'un objet s'approchera du centre de la zone à partir d'une distance réglée dans le champ Distance .
Distance Type:(Further) checkbox – lorsqu'elle est décochée cela signifie que le trigger sera activé
lorsqu'un objet s'éloignera du centre de la zone à partir de la distance réglée dans le champ Distance.
N'oubliez pas d' "allumer" le trigger par un TL venant d'un évènement de mission quelconque (Mission
Begin, fly-by Way Point etc.), sinon le trigger ne fonctionnera pas !
Si un objet doit être contrôlé dans les deux modes (closer et further) il doit y avoir une différence entre
les rayons d'action des deux modes.
Tout aussi important “closer” doit être contrôlé en premier et seulement lorsque ce test est terminé vous
pouvez passer (en utilissant un Timer) au test “further”. A défaut la logique du test sera détruite.
Par exemple : si l'objet à vérifier se trouve à l'intérieur des limites du Check Zone (further) – tout
fonctionnera corectement, i.e. le test ne démarera pas, puisque l'objet se trouve à l'intérieur du rayon
choisi et que le Check Zone (closer) n'est pas nécessaire dans ce cas.
Si l'objet se trouve à l'extérieur des limites du Check Zone (further) alors vous devez d'abord activer
“closer” afin que le trigger comprenne que l'objet est entré dans la zone de test et seulement ensuite
vérifier “further” pour contrôler le départ de la zone.
Si Check Zone est désactivé par un trigger “Deactivate” sa réactivation conservera tous les paramètres
définis dans Advanced Properties.
Dans cet exemple (le test repose sur l'avion lié par un lien objet) :
115
- Trigger: Check zone Closer– le trigger vérifie si l'objet (ici - un avion) se trouve à l'intérieur de la zone.
Le trigger prend référence de l'avion par un OL et est activé par lui ;
- Trigger: Check zone Further – le trigger vérifie si l'objet (ici - un avion)se trouve à l'extérieur de la
zone. Le trigger prend référence de l'avion par un OL et est activé par lui
- Trigger Timer – ce trigger démarre le Check zone Further après que le Check zone Closer a été activé;
- IN -toute chaîne logique qui puisse par un TL (ou Message) activer le Trigger:Check zone;
- OUT –toute chaîne logique qui puisse être activée par Check zone Further après son activation.
Ainsi, dans l'exemple proposé ci-dessus le test vérifie si l'avion est entré puis ressorti de la zone. Après
quoi le Check Zone peut activer toute chaîne logique.
Notez qu'une fois activé le Check Zone reste actif pour toute la durée de la mission.
Habituellement une seule activation est utilisée (sauf si vous devez vérifier la zone de façon continue)
aussi est-il conseillé de désactiver les Check Zone lorsqu'ils ne sont plus utiles dans la suite de la mission:
Dans cet exemple Check Zone Closer ne fonctionnera qu'une seule fois sur l'objet puis se désactivera
lui-même par un trigger Deactivate trigger (see 7.8.5.). Il doit en être ainsi pour éviter que des triggers
Check Zone non actifs laissés dans la mission ne soient accidentellemnt activés une nouvelle fois (si
cela n'est pas utile pour la suite de la mission bien sûr).
Ce trigger a des coordonnées FIXES dans une mission à la différence du Proximity trigger (see
7.8.6.).Text format of the trigger:
MCU_CheckZone //MCU type
{
Index = 27; //MCU ID
Name = "Trigger Check Zone"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // ID of the objects that this trigger refers to by TL
116
Objects = []; // ID of the objects that this trigger refers to by OL
XPos = 2095.66; // X axis coordinate
YPos = 112.102; // Y axis coordinate
ZPos = 4307.74; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
Zone = 1; //radius of triggering zone in meters
Cylinder = 1; //zone type, 1=cylinder, 0=sphere
OppositeAirplanes = 0; //trigger activated by Opposite planes, 0=off/1=on
OppositeVehicles = 0; // trigger activated by Opposite vehicles, 0=off/1=on
OrderAirplanes = 0; // trigger activated by Order planes=off/1=on
OrderVehicles = 0; // trigger activated by Order vehicles, 0=off/1=on
Closer = 1; //zone types, 1=closer, 0=further
}
7.8.4. Trigger:Counter
Dans cet exemple:
- IN - toute chaîne logique qui puisse par un TL (ou Message) activer le Trigger:Counter, i.e. qu'à chaque
fois que cet évènement se produit le Counter ajoute +1 à sa valeur actuelle;
- OUT – toute chaîne logique qui puisse être activée par le Counter trigger après qu'il ait été activé.
117
Trigger – compteur d'évènements (chacun ajoutant +1 au total courant).
Double-clic sur l' icône du trigger pour ouvrir les Counter Advanced Properties.
Advanced Properties:
Counter field: - valeur seuil, une fois atteinte tous les TL sont actifs.
Reset After Operation checkbox –réinitialise le compteur lorsqu'il a atteint son total. Cette option est utile
si vous devez utiliser le même paramètre plusieurs fois..
Lorsque ce trigger est désactivé par un Deactivate trigger (see 7.8.5.) ses totaux ne sont pas effacés mais "
gelés" et sont gardés en mémoire. Si vous l'activez à nouveau le trigger reprendra son calcul à partir de la
valeur en "mémoire" et activera ses liens lorsque la valeur seuil sera atteinte.
Text format of the trigger:
MCU_Counter //MCU type
{
Index = 28; //MCU ID
Name = "Trigger Counter"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // ID of the objects that this trigger refers to by TL
118
Objects = []; // ID of the objects that this trigger refers to by OL, this trigger can’t have any OL
XPos = 2080.77; // X axis coordinate
YPos = 114.026; // Y axis coordinate
ZPos = 4170.72; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
Counter = 1; //trigger limit value
Dropcount = 0; //erasable (1) /inerasable (0) to 0 after trigger is enabled
}
7.8.5. Trigger:Deactivate
Dans cet exemple:
- Trigger:Deactivate –ce trigger désactive les objets de la mission par OL (avion/véhicules et
translators), les commandes et trigger par TL.
- IN -toute chaîne logique qui puisse par TL (ou Message) activer le Trigger:Deactivate.
119
Double-clic sur l'icône du trigger pour ouvrir les Deactivate Advanced Properties.
Ce trigger est souvent utilisé en coordination avec le Activate trigger (see 7.8.1).
ATTENTION – TL émis depuis ce trigger DESACTIVE les objets, i.e. un TL depuis ce trigger ne vous
permet pas d'activer une chaîne logique.
ATTENTION – Si un objet est désactivé alors il ne peut répondre à aucune sollicitation venant d'une
commande et ne peut interagir avec les autres objets de la mission..
Ce trigger agit différemment avec les MCU et les objets de la mission:
- après avoir été désactivés les avions, chars, véhicules, locomotives, artillerie et ballons restent dans la
mission dans un état INACTIF et ne répondent à aucun évènement de la mission jusqu'à ce qu'ils soient
réactivés;
-les objets des sections Blicks et Battlefield désactivés restent visibles en jeu;
-lorsqu'un Timer trigger (cf. 7.8.8.) est désactivé alors sa valeur est rénitialisée à sa valeur d'origine;
-lorque l'on désactive un trigger Check Zone qu'on le réactive à nouveau les paramètres restent ceux
choisis initialement (see 7.8.3.).;
-un Counter trigger désactivé conserve la valeur qu'il avait au moment de sa désactivation;
Text format of the trigger:
120
MCU_Deactivate //MCU type
{
Index = 29; //MCU ID
Name = "Trigger Deactivate"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // ID of the objects that this trigger refers to by TL
Objects = []; // ID of the objects that this trigger refers to by OL
XPos = 2021.2; // X axis coordinate
YPos = 110.762; // Y axis coordinate
ZPos = 4149.87; // Z axis coordinate
XOri = 0;
YOri = 0;
ZOri = 0;
}
7.8.6. Trigger:Proximity
Exemples pour un objet et plusieurs objets définis dans Properties:
Dans cet exemple:
- Trigger: Proximity – ce trigger vérifie la condition de distance réglée dans les Properties Distance
afin de savoir s'il existe des objets plus proches (closer)/ plus éloignés (further) que la valeur choisie;
- IN - toute chaîne logique qui puisse activer Proximity trigger.
- OUT –toute chaîne logique qui puisse être activée par un Proximity trigger après sa validation.
121
Un exemple d'utilisation de Proximity entre deux objets :
Dans cet exemple :
- Trigger: Proximity – le trigger vérifie la condition de distance (closer ou further) entre deux objets,
dans ce cas : Plane 1 et Plane 2;
- IN -toute chaîne logique qui puisse par un TL (ou Message) activer le Proximity trigger.
- OUT – toute chaîne logique qui puisse être activée par un Proximity trigger après sa validation.
122
Ce trigger mesure dynamiquement la distance entre les objets en rapprochement désignés par OL ou en
éloignement. Deux modes: mesure de la distance entre objets en rapprochement (closer) et mesure de la
distance entre objets en éloignement (further). Double-clic sur l'icône du trigger pour ouvrir les
Proximity Advanced Properties.
Advanced Properties:
Proximity Type: (Closer) checkbox – Le trigger fonctionne lorsque les objets se rapprochent à une
distance égale ou inférieure à celle indiquée dans le champ Distance (m).
Proximity Type: (Further) checkbox –Le trigger fonctionne lorsque les objets s'éloignent l'un de l'autre
d'une distance égale ou supérieure à celle indiquée dans le champ Distance (m).
Distance (m):champ – règle le rayon d'action du trigger mètres.
Opposite Airplanes checkbox – le trigger est activé (on)/non activé (off) par un avion du camp opposé.
Opposite Vehicles checkbox – le trigger est activé (on)/non activé (off) par un véhicule du camp
opposée.
Coalition vehicles.Order Airplanes checkbox – le trigger est activé (on)/non activé (off) par un avion du
même camp.
Order Vehicles checkbox – le trigger est activé (on)/non activé (off) par un véhicule du même camp.
Lorsque la mesure doit être effectuée en “closer” et en “further” alors après l'activation de “closer”
“further” sera activé 1-2 secondes après par un Timer trigger. La présence de ce Timer est nécessaire
parce que Proximity n'a pas de coordonnées définies et que les objets de la mision peuvent se trouver
n'importe où.
123
Proximity Further peut être activé plus tôt que Proximity Closer (Further au début vérifie la distance
entre les objets en éloignement, mais durant le tout début de l'initialisation de la mission ses
coordonnées sont (0;0). Aussi pour laisser le temps au Proximity Further de mesurer la distance entre
les objets par la condition further (le temps de calculer la distance entre les objets en utlisant leurs
coordonnées dans le jeu) vous devez laisser un délai par un timer.NDT Voir un exemple en Annexe
Text format of the trigger:
MCU_Proximity //MCU type
{
Index = 2; //MCU ID
Name = "Trigger Proximity"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // ID of the objects that this trigger refers to by TL
Objects = []; // ID of the objects that this trigger refers to by OL
XPos = 2177.36; // X axis coordinate
YPos = 112.34; // Y axis coordinate
ZPos = 4197.41; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
Distance = 1; //distance settings for trigger activation
OppositeAirplanes = 0; //measures distance relatively to Opposite planes
OppositeVehicles = 0; // measures distance relatively to Opposite vehicles
OrderAirplanes = 0; // measures distance relatively to Order planes
OrderVehicles = 0; // measures distance relatively to Order vehicles
Closer = 1; //trigger type, 1=closer, 0=further
}
124
7.8 .7. Trigger:Spawner
Dans cet exemple:
- Trigger:Spawner – trigger qui "donne naissance" à un avion (dans cet exemple) dans le jeu;
- IN -toute chaîne logique qui par un TL (ou Message) active le Spawner trigger.
- OUT – toute chaîne logique activée par un On Spawned Message, i.e. après la "naissance" de cet objet
dans la mission.
125
Ce Trigger clone en jeu un objet avec les mêmes propriétés .
Double-Clic sur l'icône du Trigger pour ouvrir les Spawner Advanced Properties.
Pour créer un objet il suffit de relier le Trigger et l'Objet par un Object Link et d'activer le Trigger
Spawner.
Lorsqu'après avoir été créé l'Objet a une tâche à accomplir (par exemple : voler ou rouler vers un
Waypoint ) alors vous devez programmer un "Message" Link" depuis cet objet vers la prochaine
Commande ou Trigger par un On Spawned Message: Target.
Spawner peut créer un objet un nombre infini de fois.
ATTENTION! – Vous ne pouvez Spawner qu'un Objet à la fois. Impossible de Spawner un Joueur ou un
groupe d'Objets.
ATTENTION! –Si ce Trigger est connecté avec un Objet par un Object Link alors cet Objet n'existera
pas en jeu tant que vous n'aurez pas activé le Spawner trigger.
ATTENTION! – Le Script ne peut distinguer entre elles les différents clones d'un Objet dans une mission
(ceux que ce Trigger a créé).
Text format of the trigger:
MCU_Spawner //MCU type
{
Index = 31; //MCU ID
Name = "Trigger Spawner"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // ID of the objects that this trigger refers to by TL, this trigger can’t have any TL
Objects = []; // ID of the objects that this trigger refers to by OL
XPos = 2152.26; // X axis coordinate
126
YPos = 115.08; // Y axis coordinate
ZPos = 4254.13; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
}
7.8.8. Trigger:Timer
Dans cet exemple :
- Trigger: Timer – trigger qui s'active après une durée spécifiée;
- IN -toute chaîne logique qui puisse activer le Timer trigger.
- OUT – toute chaîne logique qui puisse être activée une fois le Trigger
actif.
Ce trigger est actif dès la durée écoulée.
Double-Clic sur l'icône du trigger pour ouvrir les Timer Advanced Properties.
127
Advanced Properties:
Time to go off: Minutes, Seconds, Milliseconds – réglez en minutes, secondes, millisecondes la durée
désirée. Une fois ce temps écoulé le trigger sera actif.
Random (0-100%) – règle la probabilité d'activation du trigger en %.
7.8.9. Random Timer schéma.
Ce schéma permet le démarrage aléatoire d'un évènement dans une mission selon des probabilités
définies grâce à l'utilisation de Trigger:Timer:
Dans cet exemple vous pouvez voir une construction “hasard 50/50” :
- IN -toute chaîne logique qui par un TL (ou Message) active un Timer IN trigger.
- Timer IN – tampon temporel (ne joue aucun rôle, présent uniquement par commodité);
- Trigger:Timer 100% - 500ms –timer avec les réglages: Random=100% and time=500ms;
- Trigger:Timer 50% - 0ms - timer avec les réglages : Random=50% and time=0ms;
- Trigger:Deactivate – trigger qui désactive soit le “Trigger:Timer 100% - 500ms” soit le “Trigger:
Timer50% - 0ms” – en fonction du timer qui a, le premier activer le Trigger Deactivate;
- OUT 1 – toute chaîne logique lancée lorsque le “Timer 100% - 500ms.” Trigger est actif;
- OUT 2 – oute chaîne logique lancée lorsque le “Timer 50% - 0ms.”est actif.
128
Le groupe fonctionne de la façon suivante:
-si “Timer 50% - 0ms.” est actif (dans 50% des cas ce timer travaille avant le 100% timer) alors il
enclenche le Deactivate qui bloque le “Trigger:Timer 100% - 500ms” et va activer l'option “OUT 2”
dans la mission ;
- si “Trigger:Timer 100% - 500ms” est actif alors il désactive le “Trigger:Timer 50% - 0ms” et
activera l'option “OUT 1” .
De cette façon vous pouvez orienter de façon aléatoire le scénario d'une mission grâce aux réglages du
Timer.
Text format of the trigger:
MCU_Timer //MCU type
{
Index = 32; //MCU ID
Name = "Trigger Timer"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // ID of the objects that this trigger refers to by TL
Objects = []; // ID of the objects that this trigger refers to by OL , this trigger can’t have any OL
XPos = 2164.17; // X axis coordinate
YPos = 115.08; // Y axis coordinate
ZPos = 4280.93; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
Time = 0; //time settings
Random = 100; //probability of trigger activation in %
}
129
7.8.10. Trigger:Waypoint
Dans cet exemple:
- Trigger: Waypoint –ce trigger donne l'ordre à un Objet de se déplacer vers ce trigger et ne fonctionne
qu'avec cet Objet. En fait, Waypoint est aussi une Commande pour déplacer des Objets;
- IN – tout évènement de mission entrant ( Target Link ou Event Link) qui permette d'activer le Trigger
Waypoint par un Target Link.
- OUT – tout évènement de mission pouvant être activé par le Waypoint trigger.
Ce Trigger DOIT avoir un Object Link avec un Objet (ou Objets), i.e. doit être connecté avec au moins
un objet avec un OL.
130
Double-clic sur l'icône du trigger icon pour ouvrir les Waypoint Advanced Properties.
Advanced Properties:
Priority: High, Medium, Low – degré de priorité imposé aux IA pour se déplacer vers ce waypoint.
Low –en vol vers un waypoint avec ce réglage l'IA cherchera tout objectif valide et l'attaquera dans la
mesure du possible;
Medium – en vol vers un waypoint avec ce réglage l'IA se détournera de sa route ou prendra toute
initiative adaptée mais seulement en réponse à une menace (si un avion l'attaque depuis l'arrière l'IA se
défendra);
High – l'IA volera vers ce Waypoint en ignorant tout danger jusqu'à ce qu'il l'ait atteint (exécution absolu
de la commande).
Type d'objectif – Défaut, Primaire, Secondaire. Trois aspects visuels pour l'icône d'un waypoint. Visible
sur la carte et en jeu. Simple aide visuelle pour localiser les waypoints sans effets sur les résultats de la
mission.
131
Défaut – aspect de l'icône
Primaire – aspect de l'icône
Secondaire – aspect de
l'icône
Area (m): - taille (rayon) de la zone dans laquelle le trigger est actif. En réalité l'espace occupé par
un Waypoint est un cylindre infini;
Speed (km/h): - fixe la vitesse (en km/h) que l'objet doit respecter pour rejoindre le trigger.
Poser des waypoints pour un objet sélectionné peut se faire automatiquement en maintenant la
touche ShiftGauche+clic-Gauche, ainsi tous les OL et TL du plan de vol seront placés
automatiquement
D'autre part puisque le Waypoint est un trigger à part entière, une fois activé il peut lui-même activer des
Waypoints plus éloignés ou d'autres objets de la mission.
Lorsque vous définissez le rayon d'un Waypoint (Area), ne le faites pas trop petit au risque que l'IA
passe à côté sans le déclencher. Dans ce cas l'avion manoeuvrera jusqu'à parvenir à passer par la zone de
validation de ce Waypoint.
N'oubliez pas de régler l'altitude (YPos) du waypoint, car l'IA volera à l'altitude fixée pour rejoindre ce
Waypoint.
Si plusieurs objets sont assignés à un même Waypoint (objets non groupés) alors le trigger ne
fonctionnera que pour le premier objet entrant dans sa zone d'effet. Le second objet ne pourra valider ce
Waypoint.
Il existe la possiblité de "rediriger"des objets vers une autre route. Par exemple: un objet se déplace vers
un point donné et reçoit une commande vers un autre Waypoint –vers lequel il se déplacera quelle que
soit le réglage de priorité de ce nouveau waypoint.Dans ce cas tous les Waypoints (non activés) doivent
être désactivés par un Deactivate trigger, à défaut de quoi, si cet objet revenait voler par hasard au sein
132
de ces Waypoints, alors celui-ci serait activé car encore stocké dans le tampon mémoire de l'IA.
ATTENTION! – si pendant l'exécution de toute commande l'IA reçoit une commande venant
d'unWaypoint alors cette commande sera prioritaire et toute autre commande sera ignorée (quels
que soient leurs types ou priorités).
De ce fait il faut toujours programmer une commande APRES (en intercalant par exemple un
Timer) une commande faisant intervenir un Waypoint.
Text format of the trigger:
MCU_Waypoint //MCU type
{
Index = 33; //MCU ID
Name = "Trigger Waypoint"; //MCU name (not displayed in GUI)
Desc = ""; //MCU description (not displayed in GUI)
Targets = []; // ID of the objects that this trigger refers to by TL
Objects = []; // ID of the objects that this trigger refers to by OL
XPos = 2092.68; // X axis coordinate
YPos = 111.939; // Y axis coordinate, in fact it’s the altitude of the Waypoint
ZPos = 4319.66; // Z axis coordinate
XOri = 0; //orientation (doesn’t have any functions in a mission)
YOri = 0; //orientation (doesn’t have any functions in a mission)
ZOri = 0; //orientation (doesn’t have any functions in a mission)
Area = 20; //radius of command execution
Speed = 100; //AI flight speed
Priority = 1; //priority of command execution for AI
GoalType = 0; //specifies icon view in GUI
}
8.Construire une mission multijoueur
En réalité une mission multijoueur ne diffère d'une mission solo que par les paramètres suivants:
- le modèle de mission (voir 5.1.) doit être “cooperative”;
- pour que la mission multi puisse fonctionner correctement il faut la sauvegarder dans le dossier
\data\Multiplayer\Cooperative\. Ce dossier doit contenir aussi le fichier mission list-file (*.list);
- Une seule tâche primaire (voir 7.7.5) peut être assignée (qui sera comptée comme réussie) en
multijoueur en la paramètrant de la façon suivante : Primary Tasks/Order coalition =>Success, puisqu'en
multijoueur il ne peut y avoir qu'un seul gagnant – Order Coalition. Ainsi si le Translator:Mission
Objective/ Order coalition =>Success ne se produit pas, alors le camp opposé gagne automatiquement. La
même contrainte s'applique aux tâches secondaires, en conséquence si plusieurs “Mission
Objective/Order coalition =>Success” sont programmés dans la mission alors seul le dernier obtenu sera
pris en compte;
- Un objectif de mission rempli sans pilote vivant après son obtention entraîne de facto l'échec pour ce
camp (Lost) ;
- s'il ne reste aucun pilote vivant il y a match nul.
133
- pour qu'un avion puisse être sélectionné dans une mission multijoueur il faut choisir “cooperative start”
dans les propriétés de l'avion (voir 7.3.1). De cette façon un départ en l'air ou au sol est possible;
- soyez prudent lors des réglages du Default Camera Operator (voir 7.7.2). Ne pas oublier d'en prévoir
un pour chaque camp afin que chaque joueur participant se trouve au bon endroit au démarrage de la
mission;
- n'oubliez pas les réglages corrects pour Translator: icon (voir 7.7.3.);
- en multi il ne peut pas y avoir des avions avec le paramètre AI=Player (voir 7.3.1.);
- si un avion n'est pris par aucun joueur alors il volera en tant qu'IA avec les réglages choisis pour la
mission.
Toute la logique de la mission multi (fonctionnement des MCU, AI etc.) est exactement semblable à
celle d'une mission solo.
9. Groupes fréquemment utilisés, exemples et astuces de construction.
9.1. Décollage, suivre un plan de vol et atterrissage.
Dans cet exemple:
134
- La commande Take Off lancée par le Translator:Mission begin (voir 7.6.13) est connectée par un
OL à un avion .I.e. l'avion sait que cet ordre lui est destiné et dès que la commande est activée il
l'exécute;
- Waypoint (voir 7.8.10.) 1 et 2 – Ces waypoints sont liés à l'avion par OL. Le premier Waypoint est
activé par un On Take off Message envoyé par l'avion (voir 2.3.) et active le suivant par un TL. Ainsi,
lorsque l'avion exécute la commande (a réellement décollé) il active le premier waypoint. Dans les
Advanced Properties de l'avion dans la liste des “On Messages table” (voir 7.3.1.) se trouve la ligne
suivante [Message Type: Take Off; Command ID:15; Target ID 12];
- La commande Land est liée à l'avion par un OL et est activée par le dernier waypoint;
Voici comment faire décoller un avion, lui faire suivre un plan de vol puis atterrir.
9.2. Mise en formation et changement de formation en vol.
Dans cet exemple :
- trois avions volent en groupe. Toutes les commandes sont liées au leader (ID:225) par un OL (voir
6.5.);
- le groupe suit un plan de vol en passant chaque waypoint, chacun d'entre eux active une commande
Formation pour changer de type de formation (voir 7.6.8.) par le biais d'un Timer afin d'éviter qu'un
avion (ici le leader) ne reçoive plusieurs commandes simultanément (à la fois le waypoint et la
formation);
135
- La commande Formation est liée au leader par un OL qui reçoit ainsi l'ordre de changer de
formation.
9.3. Commande Attack en route.
Dans cet exemple :
- trois avions volent en groupe. Toutes les commandes sont liées au leader (ID:247) par un OL (voir
6.5.);
- à l'un des waypoints que suit le groupe, une commande Attack connectée au leader par un OL et par
un TL à l'avion attaqué est activée .
Dans cet exemple le groupe reçoit deux ordres successivement : d'abord le waypoint puis après un
délai régi par le Timer une commande d'attaque. Le groupe exécutera la commande Attack (par
exemple détruire une cible) et une fois celle-ci accomplie reprendra son vol vers le prochain Waypoint
gardé dans la "mémoire" de l'IA.
9.4. Départ en l'air.
Dans cet autre exemple un avion créé en l'air reçoit l'ordre de se déplacer vers un waypoint
(Waypoint).
136
Pour un démarrage en l'air (Airstart) il suffit de sélectionner “Start in the Air” (voir 7.3.1.) dans ses
propriétés. Ne pas oublier de régler l'altitude (Position: Y) à laquelle il doit apparaître (voir 7.2.1.). La
construction pour un démarrage en l'air (Airstart) est la même pour des missions multijoueurs.
9.5. Véhicules en colonne sur une route.
Dans cet exemple :
- les véhicules forment une seule unité dans un groupe et se mettront en route après avoir reçu l'ordre
de se déplacer vers un waypoint (Waypoint);
-alors qu'ils rejoignent le waypoint le groupe reçoit après un délai défini par un Timer (voir 7.6.8.)
l'ordre de se déplacer en colonne sur une route et si le réglage effectué dans les Formation properties
est “Vehicle: On Road Column” alors les véhicules trouveront la route la plus proche (à moins qu'ils
n'aient été déjà placés sur une route par le concepteur de la mission) sur laquelle ils s'aligneront en
colonne.
Pour rendre un objet mobile (Vehicle ou Train ) il suffit d'activer son Waypoint.
137
Dans l'exemple précédant les véhicules (ou Train) suivent une route en passant des waypoints. Alors
qu'ils rejoignent le premier waypoint (id:208) les Véhicules reçoivent l'ordre de se déplacer en
colonne sur une route (id:213) (pour un train cette commande n'est pas nécessaire) et ainsi de suite pour
les waypoints suivants.
9.6. Déplacement des trains.
Pour faire rouler un train (voir 7.2.2.) il suffit de le placer sur des rails et d'activer son premier
waypoint.
Il est OBLIGATOIRE de placer le train et ses waypoints sur une voie ferrée.
138
9.7. Création d'une cinématique avec l'exemple d'une aide visuelle animée (un objet visble en l'air).
9.7.1. L'objet animé est visible juste après le démarrage de la mission.
Dans cet exemple:
-paramétrez le Translator:Animation Operator (voir 7.7.1.) en choisissant dans ses propriétés l'objet
voulu (ici waypoint.chr ou tout autre *.chr file).
- la commande Play Animation (voir 7.6.11.) est connectée à l'Animation Operator par un OL;
et choisir dans les propriétés avancées soit idle ou no_idle (i.e. soit respectivement – jouer/ ne
pas jouer ).
- IN –toute chaîne logique pouvant lancer Play Animation.
139
vue en 3D de l'objet:
Ainsi dès que la commande Play Animation est lancée la partie mobile de cet objet commence à
tourner (ici les flèches rayées).
N'oubliez pas de régler l'altitude et l'orientation de l'Animation Operator.
Vous pouvez tester cette animation dans l'éditeur. Pour cela:
- sélectionnez Play Animation,Clic-droit puis sélectionnez “Select Object Menu =>Play”;
- la vue changera automatiquement en vue 3D et le pointeur de souris changera aussi de modèle;
- il peut arriver que la vue ne soit pas centrée sur l'Animation Operator, il suffit dans ce cas de chercher
l'objet sur la carte (voir 4.3.).
140
9.7.2. Animation NON visible au démarrage de la mission.
Dans cet exemple:
- Mission Begin désactive l'Animation Operator dès le tout début de la mission (ainsi l'objet n'est pas
visible);
- IN – toute chaîne logique qui puisse activer Animation Operator et démarrer l'animation choisie (par
PlayAnimation).
Cependant cet exemple diffère du précédent dans ses premières étapes.
Vous pouvez aussi alterner périodiquement les arrêts (Déactivate) ou le fonctionnement (Activate qui
démarre Play Animation à nouveau) tout autre objet similaire en utilisant Animation Operator.
9.8. Création d'une cinématique basée sur celle de la campagne d'entraînement.
Pour cela vous aurez besoin :
*.MGM file – scène 3D déchargée (l' Editeur ne l'utilise pas mais il est indirectement soumis au
fichier *.chr file;
- *.chr file – fichier décrivant la scène;
- *.cam file – fichier décrivant le mouvement de caméra;
- *.mp3 file – fichier audio synchronisé avec la scène.
Et vous devrez utiliser :
- Translator:Animation Operator (voir 7.7.1.);
- Translator:Camera Operator (voir 7.7.2.);
- Command: Play Animation (voir 7.6.11.);
- Command:Play Sound (voir 7.6.12.).
141
Dans cet exemple:
- Animation Operator est lancé par Play Animation. Dans les Animation Operator properties se trouve la
scène (*.chr – dans le menu “config”) et le fichier son (*.mp3 –choisir l'option “config is sample” et dans
le menu “sound config” définir le chemin du fichier son);
- Camera Operator est réglé en utilisant le menu de configuration de la caméra (*.cam file –paramétrez
le chemin suivi dans le menu “3D path”, sans oublier de sélectionner la caméra en “self”). Le fichier est
démarré par un Timer (ou toute autre possibilité). Si le chemin de la caméra est correctement paramétré
vous pourrez visualiser la trajectoire de la caméra (couleur bleue – angle de vue de la caméra, en vert –
sa trajectoire).
142
Dans l'exemple ci-dessus Animation Operator and Camera Operator doivent avoir les mêmes
coordonnées définies dans Basic Properties (voir 7.4.1.). Cela est dû au fait que la scène et la caméra
doivent fonctionner simultanément et ont les mêmes coordonnées initiales (dans le menu Position les
trois coordonnées: X, Y et Z, doivent être semblables).
Ensuite tous les éléments de la cinématique doivent démarrer en même temps (ce qui est fait dans cet
exemple par ):
- Play Animation (démarrage de l'animation) et Play Sound (pour le démarrage du fichier son) lancent
Animation Operator (auquel ils sont connectés par un OL);
- Camera Operator est lancé directement par un TL.
9.9. Affichage à l'écran d'une image.
La tâche consite à afficher un texte sur un fond noirpendant le démarrage de la mission. Prévoir un
bouton au bas d el'écran afin de permettre au joueur d'échapper à la lecture d'un texte ou de toute autre
image.
En gardant en mémoire les précautions mentionnées dans les paragraphes 7.4.7 et 7.7.8, vous pouvez
suivre la procédure suivante :
- 3sec buffer – Timer qui lance tous les évènements de la mission avec une durée tampon afin de ne pas
lancer trop tôt le Subtitle, avant que la mission n'est finie de se charger totalement (voir 7.7.8);
- LONG BLACK SCREEN (Translator Media) avec les réglages : Media Type:Image \ [black picture,
min 1 x1 pixel].jpg et “base time” 10000 seconds,avec fond noir (Background color RGB) [0;0;0], - est
démarré juste après le lancement de la mission (directement par Mission Begin). En d'autres mots,
puisque nous ne pouvons contrôler le temps dans les Media (après le démarrage de la mission le jeu se
met en pause mais pas le Media ) nous lançons un très long fond noir au lancement de la mission.
- Translator Subtitle – sous titre lancé 3 secondes après le démarrage de la mission;
- STOP MEDIA (Translator Media) – avec le réglage “Media Type:Stop Media” démarre après un délai
réglé par le “Subtitle timer”,qui a la même durée que le sous titre;
- SKIP – (Translator Media) – avec le réglage “Media Type:Flash” et le chemin défini vers un composant
Flash “Skip” (swf\skip.swf). Là aussi il faut choisir le même délai que celui du sous titre afin de les
synchroniser..
143
- SKIP en utilisant On Media Stopped Message (voir 7.7.4) relié à STOP MEDIA. Ainsi, si un joueur
clique sur le bouton Skip alors SKIP arrêtera tous les Media LONG BLACK SCREEN et Subtitle
permettant au joueur de commencer à jouer;
- si le joueur ne fait rien tous les Media s'arrêteront lorsque le Timer aura terminé son décompte.
9.10. Mission de base – toutes les villes, aérodromes et ponts sur la carte.
Tous les objets sur la carte sont réellement des objets dans l' Editor, aussi pour créer une mission vous
aurez besoin des groupes de fichiers (*.Group voir 6.6.) qui sont stockés dans *.Group files:
- Base-no-trunc.Group – toutes les grandes villes et aérodromes;
- Base-for-trunc.Group – toutes les petites villes et ponts.
Vous devrez ouvrir une carte vierge et importer petit à petit tous ces groupes. Sauvegardez votre mission
une fois que vous avez terminé.
Vous pouvez aussi importer des objets déjà réalisés mais prenez garde à ne pas créer un "objet dans un
objet".
En raison de la grande taille de la carte et du nombre d'objets nous vous conseillons de faire un modèle
(template) pour la mission qui placera des objets seulement près des cibles (si le scénario de la mission
fait que le joueur ne devrait pas passer très loin). Ainsi vous réduirez considérablement le temps de
chargement et l'utilisation de ressources.
9.11. Fichiers utilisés par les Media et Animation Operator.
9.11.1. Fichiers Media compilés dans le jeu :
- Campaigns\Training\Images\BlackFade.jpg – black Image (*.jpg) 1x1px
- swf\skip_ratio.swf – SKIP bouton à utiliser avec le moteur 3D (selon les différents ratio d'écran);
- swf\skip.swf – SKIPbouton à utiliser avec les clips video/flash;
9.11.2. *.chr files pour Animation Operator:
- graphics\Helpers\waypoint.chr –anneau avec des flèches animées;
- graphics\Helpers\arrow.chr –grande flèche verte 3D;
- graphics\Helpers\descent30.chr – 3D trajectoire – pente à 30 degrés
- graphics\Helpers\descent45.chr – 3D trajectoire – pente à 45 degrés
- graphics\Helpers\loop.chr – 3D trajectoire –boucle
- graphics\Helpers\poi.chr – 3D trajectoire – waypoint animé
144
- graphics\Helpers\turn180.chr – 3D trajectoire –virage à 180 degrés
- graphics\Helpers\turn360.chr – 3D trajectoire – virage à 360 degrés
- graphics\Helpers\turn90.chr – 3D trajectoire –virage à 90 degrés
10. Information généralGeneral information
Auteur du Manuel: Sechnoy Viktor
Concepteur du Mission Editor: Michael Lepakhin
Compileurs: Sechnoy Victor, Michael Levin, Michael Lepakhin, Daniel Tuseyev
Edition du Manuel: Sechnoy Viktor, Michael Lepakhin, Michael Levin, Adamov Arseniy, Daniel
Tuseyev.
Version actuelle: ROF v1.007
© “neoqb” LLC, 2008—2009. All rights reserved.
145
ANNEXES
ANNEXE
Source : Phoenix
7.8.7. Trigger:Spawner
Avantage :
Le Trigger Spawner permet une économie de ressources car les Objets qu'il crée n'existent pas tant
qu'il n'est pas lui-même activé. Au contraire d'un Trigger Activate pour lequel les Objets qui lui sont
liés, bien qu'invisibles en jeu existent déjà et sont de fait simplement activés (d'où son nom !)par le
Trigger Activate.
Le Trigger Spawner peut être utilisé plusieurs fois au cours d'une mission (pour mémoire, Activate
une seule fois, c'est à dire que l'on peut pas recréer les Objets que l'on a créé précédemment).
Inconvénient :
Bien qu'un Spawner puisse générer plusieurs Objets en même temps ceux-ci ne peuvent pas être
gérer en groupe en s'appuyant sur un Leader comme il est possible de le faire avec un Trigger
Activate.
En pratique chaque lien (Target, Object ou Message Link) doit être créé pour chaque Objet.
Par exemple si un Trigger Spawner crée deux avions, une Commande Formation devra être liée
avec chacun d'entre eux afin qu'ils se comportent pareillement.
A1
ANNEXE
Source : Bex (-LaFrench-bexhausted)
7.8.6. Trigger:Proximity
Le Trigger Proximity permet de mesurer en temps réel la distance entre deux objets et de
s’en servir pour valider des tests logiques.
Pour faciliter la compréhension du fonctionnement nous allons nous appuyer sur un
exemple. Un camion allemand roule sur une route et est survolé par un avion russe. Lorsque cet
avion se trouve à moins de 800 m le camion s’arrête et ne repart que lorsque l’avion se trouve à plus
de 1200 m.
Le schéma de construction pour ce groupe de véhicules est le suivant :
Ce schéma se lit de haut en bas mais la partie qui nous intéresse commence au Trigger appelé
Proximity Plane Closer. Si l’on suit les liens logiques depuis celui-ci on voit une succession assez
déroutante d’activation et de désactivation.
Nous allons reprendre tout cela pas à pas.
Examinons tout d’abord les réglages des deux Proximity.
A2
Le premier Proximity à être activé est le Proximity en mode Closer (c’est à dire qu’il cherche les
objets en rapprochement ) dont le réglage Distance est de 800 m (par commodité ce réglage est
repris dans le nom ).
Comment « raisonne » ce Trigger ? Il mesure la distance séparant le camion (auquel il est
relié par un OL, attention ce lien a été malheureusement omis sur le screen ci-dessus) et un avion
(Plane) allié (Allies, True). Lorsque cette distance est inférieure ou égale à 800 m il est validé et
déclenche la Commande Formation avec l’option Panic ou Stop selon ce que l’on a choisi. Le
camion s’arrête.
Le trigger Proximity d800 en mode Closer est désactivé et active alors le Proximity D1200 en mode
Further. Ce trigger mesure la distance séparant deux objets en éloignement (le camion auquel il est
aussi relié par un OL, lien omis auusi sur le screen, et l’avion allié). Il s’active lorsque cette
distance est égale ou supérieure à1200 m.
Voyons ses réglages :
A3
Tant que la distance reste inférieure à 1200 m il ne se passe rien (Proximity en mode Closer
toujours désactivé et Proximity en mode Further non encore validé). Dès que cette valeur atteint
1200 m le Proximity Further est validé et il enclenche la Commande Formation avec l’option
Continue Moving. Le camion repart. Le Proximity Further réactive le Proximity Closer. Le cycle
peut reprendre. On pourrait imbriquer plusieurs Proximity ainsi.
A4
ANNEXE
Liens vidéos
Sources PBO-Foxy, UF-Phoenix (Habu)
Tutoriels PBO-Foxy : chaîne You Tube "IL2 Editor"
https://www.youtube.com/channel/UCCWLLa_oyv_FO3t9tWH8Oxg
Tutoriel UF-Phoenix (Habu) : chaîne You Tube S33Phoenix
Séance en live d'apprentissage des bases de l'Editeur avec IRRE-Simpel
https://www.youtube.com/watch?v=lNbOr9IT_hY
Site internet :
http://il2-editor.com/presentations/
"Bienvenue sur ce site consacré à l’éditeur de mission de la saga Il2-Sturmovik.
Ce site est dédié aux créateurs novices ou confirmés qui désirent en apprendre plus sur l’éditeur de
mission.
Vous y trouverez des réponses à vos questions, des conseils, des tutoriels mais aussi et surtout des
group files et templates déjà prêt à être utiliser dans le but de vous permettre de créer des scénarios
le plus facilement possible et sans avoir à réinventer la roue à chaque nouvelle création de mission.
N’hésitez pas à vous inscrire et à venir poser vos questions sur le forum, l’échange des
connaissances et du savoir est l’essence même et le but de ce site !
A bientôt.
Foxy"
A5

Documents pareils