Principe

Les masques permettent de générer automatiquement le rapport de tour en fonction de la réussite (ou de l'échec) des ordres. L'éditeur de masque permet d'augmenter les possibilités de ce retour d'informations pour les différents ordres. Des mots-clés sont nécessaires à la contextualisation :

A un ordre peut correspondre plusieurs masques suivant les possibilités de cas de figures que cet ordre peut entraîner. Pour les ordres automatiques (réussite garantie), un seul ; pour le kidnapping (#620), 5 masques sont nécessaires:

  1. 620 : kidnapping réussi
  2. 620.1 : kidnapping manqué
  3. 620.2 : kidnapping impossible (cible non présente)
  4. 620.5 : masque pour le joueur de l'otage → son héros a réussi à s'échapper
  5. 620.6 : masque pour le joueur du kidnappeur → l'otage s'est enfui

Visibilité

A chaque ordre est associé un paramètre dit de visibilité, par exemple

Visibility = 0003000000001000000000000

Ici, le résultat de l'ordre à retourner peut donc concerner potentiellement 25 nations. Suivant le rôle de chaque nation dans l'ordre initié, 7 qualités différentes d'implications sont énoncées :

  1. auteur
  2. cible ou allié
  3. témoin
  4. allié du témoin
  5. témoin indirect, infos limitées
  6. allié du témoin indirect
  7. rumeur

Suivant toujours l'exemple, on constate que seulement 2 nations ont une valeur différente de 0 (3 pour la 4ème et 1 pour la 13ème). En suivant les correspondances ci-dessus, on voit alors que la nation 4 est témoin de cette action alors que la nation 13 est celle du héros qui l'a initiée.

Structure de contrôle : if

Le test principal permettant d'adapter le texte de magazine à une condition particulière est le if. A utiliser entre @…@ tel que :

@if@mot-clé@condition@
instructions
@endif@

Il est possible d'utiliser des boucles imbriquées en indexant chaque boucle :

@if1@mot-clé@condition@
instructions si la condition de if1 est satisfaite
@if2@mot-clé@condition@
instructions si les conditions de if1 et if2 sont satisfaites
@endif2@
@endif1@

On peut tester si le paramètre suivant le if existe ainsi :

@if@paramètre-testé@exists@ blabla @endif@

Puisque le else n'est pas (encore?) implémenté, on a aussi le test réciproque pour savoir si le paramètre est vide :

@if@paramètre_testé@empty@ blabla @endif@

Mots-clés

Les mots-clés disponibles, à utiliser entre #…# :

  • player : numéro de nation du joueur (module 1650 : de 1 à 25)
  • player_as__nation_name : nation of the player
  • aera_name
  • previous_area_name
  • hero_nation : nation of the hero, from 1 to 25
  • hero_nation_name : nation of the hero
  • hero_name : hero full name
  • hero_allegiance : hero's allegiance number
  • hero_allegiance_name : hero's allegiance full name
  • hero_status : current hero status, in this list = general, hero, captain, leader, fellow, hostage, dismissed, dead
  • previous_hero_status : last turn hero status
  • hero_health : current health, up to 100, can be negative
  • target_nation : target nation
  • target_hero : target hero full name
  • target_town : target town full name
  • town_nation : nation of the town, from 1 to 25
  • town_nation_name : nation of the town
  • town_name : current town full name
  • town_allegiance : town's allegiance number
  • town_allegiance_name : town's allegiance full name
  • previous_town_name : last turn town full name
  • town_loyalty : current town loyalty level
  • previous_town_loyalty : last turn town loyalty level
  • pos_x : current position X from 1 to 44
  • pos_y : current position Y from 1 to 39
  • previous_pos_x : last turn position X from 1 to 44
  • previous_pos_y : last turn position Y from 1 to 39
  • hex_terrain : current hexagon terrain type from 1 to 9
  • previous_hex_terrain : last turn hexagon terrain type from 1 to 9
  • is_hero_general : returns yes, if the hero generating the news is general of the army, otherwise returns no (meaning he would be a captain in the army)
  • army_general_name : returns the name of the hero leading the army
  • fellowship_leader_name : returns the name of the hero leading the fellowship
  • parameters are numbered from parameter1 to parameter3
  • parameter1_value : returns the raw value of the parameter

next are possibly useful translation of the parameters value

  • parameter1_as_nation_name : returns the nation based on the parameter value
  • parameter1_as_resource_name : returns the resource based on the parameter value
  • parameter1_as_wagon_name : returns the wagon item based on the parameter value
  • parameter1_as_relation : returns the relation level based on the parameter value
  • parameter1_as_hero_bonus : returns the hero bonus based on the parameter value
  • parameter1_as_nation_bonus : returns the nation bonus based on the parameter value

les mots clés liés à la visibilité

  • is_mine : returns yes, if reader is owner of hero/town, otherwise returns no
  • is_allied : returns yes, if reader considers hero/town to be a friend, otherwise returns no
  • is_enemy : returns yes, if reader considers hero/town to be an enemy, otherwise returns no
  • is_target_me : returns yes, if the action is targeted at the reader, otherwise returns no
  • is_witness : pour les témoins de l'action (visibilité à 5 ou 6)

Pour les ordres les plus complexes (avec beaucoup d'entrées), il existe le mot-clé #long_parameter#. Pour un ordre de division d'armée, on aurait la possibilités de rendre compte du transfert des différentes troupes par ces instructions :

~#long_parameter-1# Cavaliers Lourds, ~#long_parameter-2# Cavaliers Légers, ~#long_parameter-3# Fantassins lourds, ~#long_parameter-4# Fantassins légers, ~#long_parameter-5# archers,<br>~#long_parameter-6# Mercenaires~

ici, le ~ permet de supprimer le type de troupe si aucune unité n'est présente.

Nation

1: Woodmen, 2: Northmen, 3: Eothraim, 4: Arthedain, 5: Cardolan, 6: North Gondor, 7: South Gondor, 8: Dwarves, 9: Sinda Elves, 10: Noldo Elves, 11: Witch King, 12: Dragon Lord, 13: Dog Lord, 14: Cloud Lord, 15: Blind Sorcerer, 16: Ice King, 17: Quiet Avenger, 18: Fire King, 19: Long Rider, 20: Dark Lieutenants, 21: Corsairs, 22: Dunlendings, 23: Haradwaith, 24: Rhudaur, 25: Easterlings,

Statuts

general: Leading an army, hero: Hero alone, captain: Following an army, leader: Leading a fellowship, fellow: Following a fellowship, leech: Spying, hostage: Held hostage, dismissed: Has been dismissed,

Terrain

1: Plain, 2: Coast, 3: Forest, 4: Marsh, 5: Hill, 6: Mountain, 7: Desert, 8: Coastal sea, 9: Open sea,

Resource

1: Leather, 2: Bronze, 3: Steel, 4: Mithril, 5: Food, 6: Timber, 7: Stone, 8: Mounts, 9: Gold,

Wagon

1: none, 2: bronze weapons, 3: steel weapons, 4: mithril weapons, 5: leather armors, 6: bronze armors, 7: steel armors, 8: mithril armors, 9: food rations, 10: war machines,