WB Tutoriel: Comment faire son propre mod? Partie 3 disponible!

Users who are viewing this thread

MrRoy

Sergeant Knight at Arms
Vous voulez faire un mod? Vous ne savez pas trop par où commencer? Et bien vous êtes au bon endroit! Dans ce tutoriel j'expliquerai en étapes comment commencer et développer votre propre module!

Note : Le guide n'est pas encore complet, je rajouterai du contenu jour après jour, et éventuellement il sera complet.

Partie 1 : Le python said:
Avant même de télécharger le «Module system», ou «Système de module», vous devez avoir le programme Python installé sur votre ordinateur. Pour ce faire, téléchargez la version 2.6*. Suivez les instructions fournies dans l'installeur. Installez-le dans C:\Python26 (c'est par défaut, donc ne le modifiez pas).

Une fois installé, vous devez configurer un petit peu votre ordinateur. Il existe deux méthodes différentes, pour XP et pour Vista :
Allez dans poste de travail, puis, dans le blanc, cliquez de la droite, puis «Propriétés». Allez dans l'onglet avancé, pour cliquez sur le bouton «Variables d'environnement».



Dans la fenêtre du bas, «Variables Système», trouvez la variable «Path». Double-cliquez-là et, à la fin, ajoutez ceci :

Code:
;C:/Python26

Faites «OK», puis «OK», puis «OK».
Allez dans «Ordinateur», puis cliquez de la droite et choisissez «Propriétés». Sur la barre dans le côté gauche et dans le haut, cliquez sur «Paramètres système avancés». Cliquez ensuite sur le bouton «Variables d'environnement».

Dans la fenêtre du bas, «Variables Système», trouvez la variable «Path». Double-cliquez-là et, à la fin, ajoutez ceci :

Code:
;C:\Python26

Faites «OK», puis «OK», puis «OK»
*Ne téléchargez surtout pas la version 3.0, elle ne fonctionne pas.


Partie 2 : Le module system said:
Vous êtes maintenant prêt à télécharger le si dit «Module System». Extrayez le n'importe où dans votre ordinateur. Son emplacement n'a aucun importance, mais je suggère de le mettre dans le dossier «Modules» de Mount & Blade, simple question de propreté.

Une fois cela fait, ouvrez le dossier.[Oui, il y a beaucoup de choses, mais n'ayez pas peur, vous n'allez qu'éditer que le quart (¼) du contenu.] Trouvez module_info.py, cliquez de la droite, puis "Edit with IDLE" et vous devriez trouver :

Code:
# Point export_dir to the folder you will be keeping your module
# Make sure you use forward slashes (/) and NOT backward slashes (\)


export_dir = "C:/Program Files/Mount&Blade/Modules/Native/"

Par défaut c'est où Mount & Blade est installé, s'il n'est pas à cet endroit, modifiez-le correctement.

Maintenant il faudra trouver un nom à votre module. Où c'est écrit «Native», c'est le nom de votre mod, donc éditez ce «Native» par le nom du mod que vous voulez.

2.1. Tester

Avant de compiler, vous devez «créer» votre mod, alors copier le module «Native», de préférence vierge (sans édition), ou téléchargez-en une version vierge ici. Renommez-le comme vous voulez (le même nom que précédemment).

Une fois cela fait, exécutez le fichier «batch» nommé «build_module.bat» dans le module system. S'il n'y a aucune erreur, c'est bon, ça a marché!

[quote author=Partie 3 : Modifier le Module System]

Note : La partie 3 n'est pas pour la version 1.011 du jeux, donc ne vous fiez pas à ça pour vous faire un mod, une version à jours viendra dans quelques jours, ainsi que la partie 4

Avant de commencer vous devez savoir trois choses :[list type=decimal]
[*]Vous avez seulement besoin des fichiers qui commencent par 'module_'. Les autres, ignorez les.
[*]Lorsque vous avez fait un changement, et que vous voulez l'intégrer au jeux, vous devez exécuter le fichier «build_module.bat». Cet outil vous dira s'il y a des erreurs dans les changements que vous avez fait. Si tout compile (car c'est ce qu'il fait, il compile le contenu du module system et le transforme en fichiers texte) comme il faut, c'est-à-dire sans erreurs, le code est bon.
[*]Certains changements requièrent que vous commencez une nouvelle partie pour voir les changements. C'est à dire que votre partie en cours peut ne pas être affectée par les changements, ou pourrais être corrompue/dysfonctionnelle.
[/list]

Le module system utilise des listes de python pour représenter des objets dans le jeux. Une liste python commence par un '[' et termine par un ']'. Son contenu contient des objets séparés par des virgules. Voici un exemple dans module_map_icons.py :
map_icons = [
  ("player",0,"player", 0.2, snd_footstep_grass),
  ("player_horseman",0,"player_horseman", 0.2, snd_gallop),
  ("gray_knight",0,"knight_a", 0.2, snd_gallop),
  ("vaegir_knight",0,"knight_b", 0.2, snd_gallop),
  ("peasant",0,"peasant_a", 0.2,snd_footstep_grass),
  ("khergit",0,"khergit_horseman", 0.2,snd_gallop),
  ("axeman",0,"bandit_a", 0.2,snd_footstep_grass),
  ("woman",0,"woman_a", 0.2,snd_footstep_grass),
  ("town",mcn_no_shadow,"City", 0.9,snd_footstep_grass),
]

C'est une liste de python, contenant des objets 'map_icons' c'est la dire les icônes sur la carte (par exemple, une ville, un joueur). Dans l'exemple : ("player",0,"player", 0.2, snd_footstep_grass) c'est un objet. En anglais, on les appelle des 'Tuples' alors je vais les appeler comme ça. Ces tuples contiennent des éléments qui sont séparés par des virgules, mais commencent et terminent par des parenthèses. Voici comment ces éléments sont structurés dans le module_map_icons.py :

[list type=decimal]
[*]nom de l'icône
[*]'flags' de l'icône
[*]Nom du 'mesh1'
[*]Taille du 'mesh'
[*]No du son
[/list]

Et donc avec l'example ("player",0,"player", 0.2, snd_footstep_grass) :

[list type=decimal]
[*]nom de l'icône = "player"
[*]'flags' de l'icône = 0
[*]Nom du 'mesh' = "player"
[*]Taille du 'mesh' = 0.2
[*]No du son = snd_footstep_grass
[/list]

Vous pouvez donc modifier les tuples en modifiant la structure.

Nom de l'icône : Le nom auquel vous ferez référence dans des codes à venir.
'Flags' de l'icône : Se trouvent dans ID_map_icons.py.
Nom du 'mesh' : Se trouve dans le brf approprié2.
Taille du 'mesh' : 1 = taille normale
No du son : Se trouve dans module_sounds.py.

1 : Mesh = Un 'mesh' est un objet, donc le modèle de l'objet plus la texture.
2 : Un BRF est un fichier regroupant différents modèles et textures. Le nom du BRF dit parfois ce qu'il contient, mais desfois c'est moins évidant. Ouvrez celui que vous pensez que c'est, par exemple, dans l'exemple que j'ai pris, c'est map_icons_meshes.brf, puis dans l'onglet mesh, c'est le nom d'un mesh.[/quote]
 
Bonjour Mr.Roy,

Tout d'abord merci pour ton Tutoriel ; Voici maintenant le revers de la médaille, les questions des débutants vis à vis de ton œuvre. Visant à créer un module personnel, voici mes premiers pas, et donc ma première erreur, qui survient dans l'étape 2, juste avant de tester. Au moment où je lance le "build_module.bat", voici le message :

Erreur%20Python1.JPG


Que dois-je faire ? Merci !

 
Es-tu sûr d'avoir fait la première partie comme il faut?

Tu es sensé avoir la version 2.6 de Python, et de l'avoir ajouté à tes variables d'environnement.
 
Oui c'est ça, tu n'es pas obligé de l'installer dans C:\, mais si tu l'installe ailleurs, tu dois modifier ça dans les variables d'environnement. Donc aulieu de ;C:\Python, ;...\Python évidemment en remplacent le ... par le chemin exacte de l'endroit où il est installé.

Bonne chance,
MrRoy
 
Bonjour et tout d'abord merci pour ces tutoriaux. Moi j'ai fais tout comme tu as décrit de faire pour créer le mod mais ça n'a pas l'air de marcher.

Je copie le native vierge et je le renomme comme j'ai nommer le mod dans le fichier  module_info.py puis après j'execute le fichier build_module.bat, j'ai un tas de message qui apparait dans le tableau de commande mais je sais pas si sa a marché. Que doit-on avoir comme message  dans le tableau de commande pour considérer que cela à marché?

 
Je ne sais pas alors, quesque tu as mut dans ton module_info.py? Le bon chemin t'est sur?

Ya marqué comme erreur: "no such file or directory: C:/Programe files/moutn and blade/modules/mynewmodule/menus.txt" Pourquoi le menu.txt à la fin? Le bon chemin devrais être: "C:/Programe files/moutn and blade/modules/mynewmodule"
 
C'est parce que le compileur ne reconnais pas les fichiers texte. Je crois voir d'après l'interface de la console CMD que tu es sur vista, essaie de mettre le fichier de ton module HORS de program files, et de compiler ensuite.
 
Je pense que MrRoy a raison.

Je n'ai pas Vista, mais à force de dépanner famille et amis, j'ai compris qu'il ne faut rien installer dans le dossier "Program Files". Il est verrouillé. Impossible d'écrire dedans.

Admosdean said:
Je ne sais pas alors, quesque tu as mut dans ton module_info.py? Le bon chemin t'est sur?

Ya marqué comme erreur: "no such file or directory: C:/Programe files/moutn and blade/modules/mynewmodule/menus.txt" Pourquoi le menu.txt à la fin? Le bon chemin devrais être: "C:/Programe files/moutn and blade/modules/mynewmodule"

Le script Python essaye d'écrire dans le fichier .txt, mais comme le dossier est verrouillé, il renvoie l'erreur "no such file or directory etc..."
 
Back
Top Bottom