Comme vous le savez, le développement de la nouvelle nouvelle version avance régulièrement. J'envisage de mettre en place les scripts. Pour être clair, cela concerne tous les fichiers de texte qui permettent de configurer le jeu (base et mods) :
- configuration (objets, bâtiments, races, etc)
- bots
- scénarios
Une fois le support des anciens fichiers (version de Syl) mis en place, celui-ci sera conservé, afin de pouvoir continuer à faire marcher les anciens fichiers de configuration et donc mods. Cependant, les langages utilisés sont un peu simples et il serait intéressant d'envisager une alternative. Je pense qu'il faut choisir entre deux langages : Python ou Lua.
Lua est très simple et Python presque aussi simple mais plus puissant. J'ai personnellement une préférence pour le second. Je vous invite à jeter un œil à
https://wiki.python.org/moin/SimplePrograms (Python) et à
https://github.com/dividuum/infon/wiki/SimpleBots (Lua) pour avoir un aperçu de ces langages.
Pour référence, voici ce que pourrait devenir la configuration d'un objet :
- Code:
-
; exemple d'objet configuré en .ini
[Objet_1]
Nom = Vêtement de travail
Description = Habit utilisé par les ouvriers.
Categorie = 2
PrixRessources(5) = 8
BonusEnergie = 10
BonusVitalite = 0.1
-- le même en Lua
o = Item:new("Vêtement de travail", Vetement)
o:description = "Habit utilisé par les ouvriers"
o:need["Laine"] = 8
o:bonus["Énergie"] = 10
o:bonus["Vitalité"] = 0.1
# le même en Python
o = Item("Vêtement de travail", Vetement)
o.description = "Habit utilisé par les ouvriers"
o.need["Laine"] = 8
o.bonus["Énergie"] = 10
o.bonus["Vitalité"] = 0.1
Je vais commencer par supporter les fichiers d'origine. C'est déjà fait (au moins partiellement) pour les fichiers de configuration et je vais m'attaquer aux scripts d'IAs.