J'ai vu beaucoup de jeux qui définissent les composants d'entité dans des fichiers de script, mais lorsqu'ils configurent chaque entité et spécifient quels composants elle possède, ils utilisent un autre format de fichier (comme XML). Pourquoi font-ils ça?
Je demande surtout à voir quelle était la justification des autres pour cela. Je configure également mes entités en dehors des scripts (même si j'ai choisi JSON et non XML). Mes raisons pour cela sont de me faciliter l'implémentation des sauvegardes et aussi parce que je pense que ce type de configuration est mieux organisé en quelque chose comme XML ou JSON.
@ Réponse de Christopher Larsen: Trop long pour poster un commentaire
Je crains que vous ne vous soyez un peu écarté du sujet de la question. Les problèmes que vous décrivez sont davantage liés aux entités basées sur la hiérarchie; note dans ma question, j'ai mentionné que je parlais d'entités basées sur les composants.
Voici un exemple de ce que je voulais demander. Vous trouverez ci-dessous deux façons alternatives de configurer une entité: via le script et via un fichier JSON externe. Ma question était, pourquoi tant de gens préfèrent-ils configurer l'entité en dehors des scripts?
Une classe d'entité de base:
class Entity:
def __init__(self, name):
pass
def addComponent(self, comp):
pass
L'approche script:
orc = Entity('Orc')
orc.addComponent(PositionComponent(3.4, 7.9))
L'approche JSON:
{
"name" : "Orc",
"components":
{
"PositionComponent": {
"x" : 3.4,
"y" : 7.9
}
}
}
J'ai déjà indiqué mes raisons pour utiliser cette approche, qui sont techniques et organisationnelles. Je voulais savoir pourquoi tant d'autres (d'après ce que j'ai vu) utilisent cela.