Système TeamSpeak du Réseau Jeux-Strategie.com Abonnez-vous à nos flux RSS Mur du Réseau Jeux-Strategie.com
 

      

Guide de création de scénarios

Créé le : 11 September 2004

Edition du : 27 October 2004

Auteur : Namspopof

 

I - Guide d’Edition de Scénario


111. Nom de scénario


Celui-ci est défini avec le terme ‘name’ : name = "1936 scenario"
Note: Le nom du scénario montre la date réelle du début du scénario, permettant de savoir rien qu’en lisant le nom du scénario quelle période cela concerne.


112. Dates du scénario


Les dates de scénario sont définies en utilisant les termes startyear et endyear :


 Startyear = 1936
 Endyear = 1949


Note : Les vraies dates sont définies plus loin. Dans la mesure où je peux les voir celles-ci sont ignorées aussi.


113. Pays dans le scénario


La dernière chose définie dans le scénario est les pays qui seront sélectionnables pour les joueurs, et (jusqu'à) les huit ont pré sélectionné des pays.


 selectable = {
  ENG FRA SOV GER SWE SPR TUR POL POR IRE HOL
  BEL DEN NOR EST LAT LIT SCH AUS CZE YUG HUN
  GRE BUL ROM USA NZL AST CAN USA MEX FIN ETH
  SIA
 } 
 ENG = {
 }
 FRA = {
 }
 SOV = {
 }
 GER = {
 }
 USA = {
 }
 POL = {
 }
 ITA = {
 }
 JAP = {
 }


Les identifiants des pays énumérés dans la liste sélectionnable sont ceux des pays que tu peux changer par un clic-droit sur le masque au début du jeu, lorsqu’on sélectionne un scénario. La liste suivante des pays est celle des pays qui est présélectionné. De un a huit pays maximum peuvent être présélectionné.


114. Global data


Le global data est le prochain terme de niveau supérieur. Quant à l'en-tête ceci doit tenir tous ses termes contenants dans les parenthèses fermées :


globaldata = {
 #info here
}
 


Le globaldata donne des informations sur les sujets montrés ci-dessous.


115. Date de Scénario


 Startdate = {
 Year = 1936
 Month = January
 Day = 0
 }
    Enddate = {
 Year = 1949
 Month = January
 Day = 0
 }


C'est où les dates de début et de fin pour le scénario sont fixées.


116. Alliances


Il y a seulement trois alliances possibles dans HoI : Les alliés, l'axe et Comintern :  

            
 
allies = {
  id = { type = 15000 id = 1 }
  participant = { ENG FRA }
  }
 axis =  {
  id = { type = 15000 id = 2 }
  participant = { GER ITA }
 }
 comintern =  {
  id = { type = 15000 id = 3 }
  participant = { SOV }
 }


Les seuls changements qui sont possible ici sont d’ajouter ou enlever des pays d'une des trois alliances. Par défaut les chefs d'alliance sont l'Angleterre, l'Allemagne et l’Union soviétique.
 Note : Si tu enlèves l'Axe, ou enlèves tous les pays de l'Axe le jeu finira au démarrage !


117. Guerres


La guerre peut démarrer au début des scénarios. Ceux-ci sont définis de la manière suivante :


 war = {
  id = { type = 9430 id = 1 }
  attackers = {
   id = { type = 9430 id = 2 }
   participant = { ITA }
  }
  defenders = {
   id = { type = 9430 id = 3 }
   participant = { ETH }
  }
 }

Les flags (identifiant du pays) des pays attaquants et des pays attaqués sont mis dans la commande participant. Notez que toutes les combinaisons de type/id doivent être uniques dans le scénario.


118. Marché mondial


Sur le marché mondial chaque pays peut offrir les marchandises en surplus pour le commerce. Le script ressemble à ceci :

 worldmarket = {
  trade = {
   id = { type = 12439 id = 1 }
   country = ger
   from = steel
   to = oil
   price = 2
   amount = 2
  }

 (more trade offers)
 }


Ce qui est défini ci-dessus est l'Allemagne (GER) offrant d’échanger deux unités d'acier pour un pétrole donc à un prix de 2 à 1 (acier deux pour un pétrole).


119. Définition des provinces


A chaque province peut être assignée par exemple des points de victoire (VP) et des fortifications. Ceci peut être fait ici, ou dans le fichier du pays (si c’est dans le fichier pays, ne pas le mettre de nouveau dans le scénario). Les changements de province peuvent ressembler à ceci :


province = { id = 602 points = 10 }
province = { id = 542 landfort = 10 }
# part of the Maginot line
province = { id = 664 coastalfort = 1 }


Ceci assignera 10 VP à la province 602 (Berlin), à une fortification terrestre du niveau 10 à la province 542 (Colmar) et à un fort côtier du niveau 1 à la province 664 (Oslo).
Les changements possible sont aussi:


province = { id = [province id] antiair = x }
province = { id = [province id] coalpool = x }
province = { id = [province id] coastalfort = x }
province = { id = [province id] ic = x }
province = { id = [province id] infra = x }
province = { id = [province id] ironpool = x }
province = { id = [province id] landfort = x }
province = { id = [province id] maxic = x }
province = { id = [province id] maxinfra = x }
province = { id = [province id] oilpool = x }
province = { id = [province id] points = x }
province = { id = [province id] rubberpool = x }
province = { id = [province id] supplypool = x }


Vous pouvez ainsi combiner les changements dans une même province :


province = { id = [province id] landfort = x  coastalfort = y }


120. Liens de définition de pays


Comme mentionné ci-dessus, chacun des pays inclus dans le scénario a habituellement un dossier d'inc avec la définition de chaque pays concerné. Ils sont liés comme ceci :


include = "scenarios/1936/germany.inc"


Celui-ci inclura toute l'information pour l’Allemagne dans le dossier germany.inc dans le dossier répertoire du scénario 1936. Chaque pays devra avoir une ligne dans la définition de scénario avec un lien comme précédemment.


121. Liens de définition d'événement


Pour finir tu définis un lien à la liste d'événement :


include = "db\events.txt"


Pour plus d’explications sur les fichiers des Events, voir à Ecriture des Events.

II - Définitions de pays


Habituellement chacun des pays inclus dans le scénario a un fichier de type *.inc avec le nom du pays dans ce fichier. Ces fichiers sont le dossier des textes qui contient toute l'information requise pour définir un pays dans un scénario de HoI. Cette information pourrait également être incluse dans le dossier de scénario. Une partie d'information est stockée dans ce dossier, alors que les autres informations sont liées à d'autres dossiers.
La définition du pays se composent des codes du drapeau du pays, leur capitale et AI, alignement politique et diplomatie, la mise en place de convois existants déjà, les technologies acquises au démarrage, les provinces du pays et les unités militaires existantes. Tout les paramètres sont notifiés dans le script nommé  ''country = { }'.


201. Drapeaux, Capitales et AI


Ce sont habituellement les premières choses que tu stipules pour un pays. Le début d'une définition de pays peut ressembler à ceci :

 

country = {
        tag = XXX
        capital = xxx
        ai = "filename.ai"
        ...


  
Le drapeau du pays (XXX) est spécifique à chacun des pays inclus. Pour aller à la liste des pays, se rendre sur le répertoire de la période concernée (1936 – 1939 – 1941). La capitale (xxx) est un numéro d'identification de province (fichier province.csv dans le répertoire db). Enfin tu peux indiquer un fichier de type *.ai pour un pays non sélectionné par un humain. Si cette spécification n’est pas indiqué, par défaut HoI prendra le fichier existant de type *.ai pour simulé un joueur.


202. Alignement politique et diplomatie


L'alignement politique est la position où se situe le pays se tient par rapport à la démocratie, au communisme et au fascisme des trois idéologies. L'alignement est donné par des coordonnées avec des composants de x et de y, comme ceci :


        alignment = { x = 40 y = -30 }
  
Les coordonnées donnent une position dans le triangle de la diplomatie que tu connais dans l’écran politique de HoI. La coordonnée X donne la position de gauche à droite entre communiste (x = -100) et démocrate (x = 100). La coordonnée Y donne la position du haut vers le bas entre fasciste (y = -100) ou non (y = 0). Donc, par exemple, un pays parfaitement neutre, aussi bien vis-à-vis des communistes, fascistes et démocrates aura une valeur x = 0 et y = 0. Le curseur sera positionné exactement au centre parfait du triangle politique vu dans l’écran de HoI.
Tu peux aussi définir l’accès militaire :


        diplomacy = {
            relation = { tag = YYY access = yes }
        }
  
Ceci accordera l'accès militaire au pays défini par le code YYY. Pour diverses raisons (code légal à l’origine du jeu Europa Universalis) l'accès militaire est précisé via la commande diplomacy. Ce n’est pas par cette commande que l’on précise les relations entre des pays et leurs états fantoches ou marionnettes, ainsi que leurs contrôles militaires. Par exemple, les USA peuvent avoir un libre accès à la France sans pour cela que la France soit un puppet (pays contrôlé) des USA.
        puppet = USA
        control = USA
Ce qui précède définit le pays des USA comme un état fantoche ou puppet et accorde le contrôle des armées des USA au pays défini (en général c’est le contraire !! dans le cas des USA, ce pays aura comme puppet le Libéria par exemple).
C'est également ici où tu définis le niveau de warentry courant pour le pays (appelé communément WE, qui précise que tant qu’un pays n’a pas atteint 100 de WE il ne peut déclarer la guerre de lui-même), et le niveau de la dissidence de départ :

 

        warentry = 50
        dissent = 5
  
Dans cet exemple ci-dessus le niveau d’entrée en guerre (ou WE) sera au démarrage du jeu de 50 (50 %) et la dissidence sera à 5 %. Les pays démocratiques ne peuvent pas déclarer la guerre avec un WE inférieur à 100, par contre, s’ils sont alliés avec un pays qui lui déclare la guerre ils seront automatiquement en guerre avec ce pays, quelle que soit le niveau de WE qu’ils auront à ce moment là.


203. Provinces


Il y a trois types de provinces définies pour chaque pays : provinces du pays au départ, provinces contrôlées durant les opérations de guerre et les provinces extranationales.
Les provinces du pays au départ sont bien sur les provinces que le pays possède et commande. Ce seront toujours les mêmes, à moins que le pays soit en guerre et ait capturé des provinces ou pire en ait perdu ! Mais cela n’affecte que les provinces dites contrôlées. Par exemple, une province appartenant au pays au départ, capturée par un ennemi et reprise ensuite gardera son statut de province du pays d’origine. Une province étrangère capturée durant la guerre et reprise par l’ennemi sera la propriété de l’ennemi.
Les provinces extranationales sont ceux que le pays considèrent comme leur "patrie". Ainsi, les Allemands ont des exigences nationales sur toutes les provinces autrichiennes, le  Sudetenland tchèque et le "couloir de Danzig" polonais. Un pays peut exiger les provinces nationales de leur propriétaire diplomatiquement. Dans ce cas, ces provinces, récupérées soit par guerre soit par cession, deviennent des provinces du pays (donc entre en plus dans le calcul du manpower par exemple, car les provinces autres envahies aussi amèneront leurs ressources (en partie du moins tant qu’il n’y aura pas d’annexion, mais pas le MP (manpower) de cette province).


204. Ressources et convois de départ


Chaque pays démarre avec un stock de base de matières premières, ressources immédiatement disponibles. On le définit de la manière suivante :

 

        # Manpower
        manpower = 2200

        # Resource Reserves
        oil  = 200
        steel = 200
        coal = 200
        rubber = 200
        supplies = 50

        diplomats = 25

C'est, de haut en bas : Le nombre de main d'œuvre, les stocks de pétrole, acier, charbon, caoutchouc et approvisionnements des unités militaires et l'influence diplomatique. En outre vient le nombre de convoi disponible au départ de jeu (cargo de transport virtuel existant dans le masque convoi de HoI) :

 

        transports = 400
        escorts = 20

C'est la quantité de bateaux de transport et des bateaux d'escorte que tu as au départ du jeu. Des convois peuvent être définis comme ceci :

 

 convoy =
  {
   id = { type = 17120 id = 10004 }
        # convoy shipping supplies to Libya
         path = { 898 895 1087 }
         transports = 5
         escorts = 1
         oil = no
       coal = no
   supplies = yes
        steel = no
         rubber = no
    }


C'est un convoi italien paramétré pour aller de Siracusa (898) à Sirt (1087). Les provinces énumérées dans le 'path={}' est l'itinéraire que ce convoi prendra et est par conséquent le secteur que tu dois protéger pour t’assurer qu'il fonctionne sans interférence ennemie. Ces zones de mer seront identifiées par une couleur plus pourpre sur la carte d'approvisionnement, en étant sous le masque convoi ou sur écran ravitaillement. Ce convoi se compose de 5 transports et d’un bateau d’escorte. Rappel : Comme toujours le type/id doit être unique pour le scénario.


205. Technologies


Dans le paramétrage du pays, il y a deux points essentiels concernant les technologies : techlevels et techapps. La commande techlevels définira une liste de n'importe quelle connaissance théorétique de technologie, alors que la commande techapps définira une liste d'applications pratiques que le pays est capable de chercher. En plus clair, la liste des techlevels reprend les technologies qui ouvrent à des applications pratiques, alors que les techapps sont les technologiques qui ont des effets immédiats sur le jeu (unités, industrie, électronique). Un exemple :

 

    techlevels = {
        12000 13000 11000 14000 1000 1100
        2000 5000 6000 9000 10000 8000
        8100 3000 3100 4000 4100 4200 4300
    }
    techapps = {
        12001 11001 11004 14001 14014 1001 6003 6004
        3002 3005 4001 4101 4102 4201 4202 4203 4204
        3101 14005 1107 4301 4302 4303
 }


Pour plus d’information au sujet des niveaux et des applications de technologies, voir la partie concernant les technologies.


206. Ordres de Bataille


Les ordres de bataille (OOB) sont la création des troupes. Voir le chapitre plus loin sur les OOB.


207. En construction, développements


Tu peux également définir des unités en construction ou en train d’être remis à niveau. Voici un exemple, concernant la construction de l'Allemand du Blücher dans le scénario 1939 :


development = {
    id = { type = 30010 id = 173 }
    name = "Blücher"
    type = cruiser
    model = 1
    cost = 9
    date = { year = 1939 month = september day = 20 }
}


Comparons ceci avec un croiseur existant déjà et ayant le même nom :

 

navalunit= {
    id = { type = 30010 id = 174 }
    name = "Blücher"
    location = [province id]
    division = {
        id = { type = 30010 id = 173 }
        name = "Blücher"
        type = cruiser
        model = 1
    }
}

Nous identifions les navires par id (identification) précisant son type et son id spécifique (le premier n° 173 est en cours de construction et le deuxième n° 174 est basé sur la province identifiée par son numéro spécifique d’id – fichier province.csv). Fondamentalement l’objectif est de donner les informations indispensables à l’existence de l’unité (le type et son numéro d’identification – pour éviter les doublons – si nous avons déjà une unité existante sous un numéro d’id et que par event on en crée une nouvelle ayant le même numéro, il y aura un bug).

Le cost chiffre le coup en PP pour construire cette unité. La date précise le moment où elle sera terminée et donc, le moment où le joueur pourra la déployer.
 
Tu peux également avoir d'autres types d'unité en construction, comme cette unité de panzer :

 

development = {
    id = { type = 30020 id = 466 }
    name = "10. Tank Corps"
    type = panzer
    cost = 5
    model = 15
    date = { year = 1942 month = january }
}

Pour plus d'informations sur les event pour créer des unités, voir le chapitre de l’OOB.


III - Ordres de Bataille (OOB)


Puisque c'est un wargame il y a des troupes à positionner au démarrage du jeu. Le script pour faire cela se situe dans les fichiers pays (extension inc) dans le répertoire scénario et s’appelle les Ordres de Bataille ou plus simplement OOB ;
Les unités militaires ont chacune leur propre particularité, et un certain nombre de divisions par pays. Le format de script standard peut être esquissé comme ceci :

 

    [unittype] = {

        [unit definition]

        division = {
            [division definition]
        }
        division = {
            [division definition]
        }
        [more divisions]
    }


301. Définition de l’unité


Il y a principalement trois types d’unités militaires : les unités terrestres, navales et aériennes. Chaque unité doit avoir des numéros précis de type/id, un nom et un endroit (la province où elle sera positionnée). En outre tu peux affecter un chef. Un exemple :


    landunit = {
        id = { type = 28008 id = 1 }
        name = "7e Armée"
        location = 556
        leader = 24130 #Giraud


Ceci stipule que cette division s’appelle 7e Armée. Elle est localisée dans la province 556 (Chaumont) et se trouve sous le commandement du Maréchal Giraud (fichier french.csv sous répertoire leaders situé lui-même dans le répertoire db).
La commande type est stipulé pour chaque pays, alors que la commande id doit être incrémentée (augmentée) de 1 à chaque fois qu’il y aura une nouvelle unité. Il est vital que tu es un seul numéro pour le type/id pour toutes les divsions créées dans ton OOB (sinon doublon assuré !!).


302. Définition de la division


La 7e Armée se compose de 4 divisions :


        division = {
            id = { type = 28008 id = 2 }
            name = "4e d'Infanterie"           
            type = infantry       
        }
    
        division = {
            id = { type = 28008 id = 3 }
            name = "21e/60e d'Infanterie"
            type = infantry
        }
    
        division = {
            id = { type = 28008 id = 5 }
            name = "1e Légère Mécanique"
            type = panzer
            model = 2
        }
    
         division = {
            id = { type = 28008 id = 6 }
            name = "4e/25e d'Infanterie Motorisée"
            strength = 70
            type = motorized
        }


Comme tu vois, il y a deux divisions d'infanteries, une division de panzer et une division d'infanterie motorisée (aucune brigade de renfort n’est ici affectée).


303. Unités terrestres


Exemple sur un corps créé comprenant 3 divisions :


 ###    OOB    ###
landunit= {
    id = { type = panzer id = 1 }
    name = "Division Fantôme"
    location = 602
    division = { 
        id = { type = panzer id = 2 }
        name = "I th Panzer"
        strength = 100
        type = panzer
        extra = antitank
        model = 23
    }
    division = { 
        id = { type = panzer id = 3 }
        name = "II th Panzer"
        strength = 100
        type = panzer
        extra = antitank
        model = 23
    }
    division = { 
        id = { type = panzer id = 4 }
        name = "III th Panzer"
        strength = 100
        type = panzer
        extra = engineer
        model = 23
    }
}

Ceci comprend trois divisions de panzers de type Pz V « Panther » avec canon de 70 mm. Elle sera positionné à Berlin et le corps d’armée sera appelé « Division Fantôme ».

Même principe pour les unités navales et aériennes.
 
RETOUR AU SOMMAIRE DES ARTICLES

Réseau Gamers et Stratégie. Association Loi 1901 à capacité juridique.
©1998-2017 Réseau Gamers et Stratégie - Tous droits réservés - Mentions légales