Page 1 sur 1
Besoin d'une instruction de codage
Posté : mer. 11 janv. 2023, 22:27
par Prof Errata
Voilà, je me suis penché actuellement sur un autre mod de marchand que j'ai remanié personnellement en profondeur (Daniel Goodrich Items) qui rajoute en tout 42 objets dans le magasin de Deidre (l'un des 2 marchands officiels rajoutés dans BG2), or j'ignore précisément quelle est l'instruction de codage IE qui permet de faire ces rajouts (une - ou deux - ligne me suffirait, avec l'Anneau de Spectre par exemple); je place ici le résumé de mon travail. En espérant une aide utile de Couronniens experts dans quelque temps, merci d'avance.
Re: Besoin d'une instruction de codage
Posté : mer. 11 janv. 2023, 23:17
par JohnBob
Pour cette situation, je n'ai encore jamais trop regardé, mais en jetant un coup d’œil au mod RTT-itemPack (il ajoute des objets au magasin de Ribald)...
Cela semble assez simple, après avoir ajouté tes objets (sorts, effets et créatures) au jeu avec leurs descriptions, comme tu sais déjà le faire... la suite semble être :
Code : Tout sélectionner
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~ /// Dans ton cas le .STO correspondra à celui de Dreidre ///
ADD_STORE_ITEM ~RTT001~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT002~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT003~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT004~ #1 #0 #0 ~IDENTIFIED~ #1
Je te conseille donc de t'inspirer de ce mod, qui a une architecture vraiment très simple, tout est dans le rttitempack.tp2 qui est relativement concis...
Le mod est disponible dans
l'atelier de Dératiseur, mais tu peux simplement regarder le
rttitempack.tp2 à cet endroit, les lignes mentionnées ci-dessus sont
dans cette partie.
Voilà en espérant que cela t'apporte l'aide nécessaire, en attendant d'autres conseils...
Edit : Il y un sujet qui en parle ici !
Re: Besoin d'une instruction de codage
Posté : mer. 11 janv. 2023, 23:56
par Prof Errata
Merci pour ta rapide intervention, JohnBob. Or précisément je cherche à placer dans l'ordre 1 - les 5 sacs / 2 - les 6 livres / 3 - les 3 robes / 4 - les 11 anneaux / 5 - les 6 munitions / 6 - les 9 équipements guerriers APRÈS les 10 objets vendus par Deidre, ce qui donne ceci :
SAY NAME2 @10 // renomme le magasin de Deidre
COPY_EXISTING ~wmart2.sto~ ~override/wmart2.sto~ // adds all the items to Deidre
ADD_STORE_ITEM ~bag04b~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~bag04c~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~bag04d~ #1 #0 #0 ~IDENTIFIED~ #1
puis après bag04e / bag04f / book03 etc
or j'aimerais savoir si la totalité de l'ajout suivra l'ordre de codage que j'aurais à effectuer, si ça viendra APRÈS les objets vendus dans la boutique de Deidre, et dans l'ORDRE du codage que je vais faire; c'est tout bête mais j'aimerais bien en avoir le coeur net. Voilà, en espérant confirmation, merci d'avance. Je livre ici le readme du mod DG dans notre langue, bonne lecture !
Re: Besoin d'une instruction de codage
Posté : jeu. 12 janv. 2023, 00:13
par JohnBob
Pour RTT-itemPack cela semble être l'ordre inverse...
Les objets sont ajoutés au début du magasin et du dernier au premier...
Donc RTT051 au tout début, puis RTT050, RTT049.... ainsi de suite et après les objets déjà présents dans le magasin.
En changeant l'ordre d'installation des objets dans le .tp2, cela change leur ordre dans le magasin, donc à toi de calculer, les premiers installés seront les derniers et les derniers les premiers...
Par contre par rapport aux objets déjà existants, aucune idée...
Edit :
Une méthode qui semble fonctionnelle pour les ajouter à la fin du magasin...
► Afficher le texte
Code : Tout sélectionner
// add store
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~RTT001~ position=~LAST~ flags=~identified~
END
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
ADD_STORE_ITEM ~RTT002~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT003~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT004~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT005~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT006~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT007~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT008~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT009~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT010~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT011~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT012~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT013~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT014~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT015~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT016~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT017~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT018~ #1 #0 #0 ~IDENTIFIED~ #1
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~RTT019~ position=~LAST~ flags=~identified~
END
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
ADD_STORE_ITEM ~RTT020~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT021~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT022~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT023~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT024~ #1 #0 #0 ~IDENTIFIED~ #10
ADD_STORE_ITEM ~RTT025~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT026~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT027~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT028~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT029~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT030~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT031~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT032~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT033~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT034~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT035~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT036~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT037~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT038~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT039~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT040~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT041~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT042~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT043~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT044~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT045~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT046~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT047~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT048~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT049~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT050~ #1 #0 #0 ~IDENTIFIED~ #1
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~RTT051~ position=~LAST~ flags=~identified~
END
Donc pour chaque objet :
Code : Tout sélectionner
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~RTT019~ position=~LAST~ flags=~identified~
END
Je te laisse comparer avec le RTT-itemPack.tp2 original...
Re Edit :
Et une méthode qui semble fonctionnelle pour les ajouter ou tu veux...
► Afficher le texte
Code : Tout sélectionner
// add store
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~RTT001~ position=~LAST~ flags=~identified~
END
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
ADD_STORE_ITEM ~RTT002~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT003~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT004~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT005~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT006~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT007~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT008~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT009~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT010~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT011~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT012~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT013~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT014~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT015~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT016~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT017~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT018~ #1 #0 #0 ~IDENTIFIED~ #1
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~RTT019~ position=~LAST~ flags=~identified~
END
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
ADD_STORE_ITEM ~RTT020~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT021~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT022~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT023~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT024~ #1 #0 #0 ~IDENTIFIED~ #10
ADD_STORE_ITEM ~RTT025~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT026~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT027~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT028~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT029~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT030~ #1 #0 #0 ~IDENTIFIED~ #1
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~RTT031~ position=~AFTER SCRL9E~ flags=~identified~ // BEFORE fonctionne aussi
END
BUT_ONLY
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
ADD_STORE_ITEM ~RTT032~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT033~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT034~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT035~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT036~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT037~ #1 #0 #0 ~IDENTIFIED~ #1
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
LPF ADD_STORE_ITEM_EX
INT_VAR stack=5 // Vend 5 objets similaires
STR_VAR item_name=~RTT038~ position=~AFTER AROW01~ flags=~identified~ // BEFORE fonctionne aussi
END
BUT_ONLY
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
ADD_STORE_ITEM ~RTT039~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT040~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT041~ #1 #0 #0 ~IDENTIFIED~ #1
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
LPF ADD_STORE_ITEM_EX
INT_VAR unlimited=1 // Vente illimité
STR_VAR item_name=~RTT042~ position=~BEFORE AROW01~ flags=~identified~ // BEFORE fonctionne aussi
END
BUT_ONLY
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
ADD_STORE_ITEM ~RTT043~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT044~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT045~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT046~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT047~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT048~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT049~ #1 #0 #0 ~IDENTIFIED~ #1
ADD_STORE_ITEM ~RTT050~ #1 #0 #0 ~IDENTIFIED~ #1
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~RTT051~ position=~LAST~ flags=~identified~
END
Donc pour chaque objet :
Code : Tout sélectionner
COPY_EXISTING ~ribald3.sto~ ~override/ribald3.sto~
LPF ADD_STORE_ITEM_EX
INT_VAR stack=5 // Indique le nombre d'objet à la vente
STR_VAR item_name=~RTT038~ position=~AFTER AROW01~ flags=~identified~ // Indique la position AFTER ou BEFORE tel ou tel objet (il suffit de regarder dans NearInfinity leurs emplacements) dans ce cas AROW01...
END
BUT_ONLY
Les idées viennent d'ici, le mod
D2-Weapon de Dan_P !
Re: Besoin d'une instruction de codage
Posté : jeu. 12 janv. 2023, 17:19
par Prof Errata
Bon, on y est presque ; ça veut-il dire qu'il faudra désormais coder les 40 nouveaux objets ainsi :
SAY NAME2 @10 // renomme le magasin de Deidre
COPY_EXISTING ~wmart2.sto~ ~override/wmart2.sto~ // adds all the items to Deidre shop
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~bag04b~ position=~LAST~ flags=~identified~
END
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~bag04c~ position=~LAST~ flags=~identified~
END
etc, du premier objet - le sac 04b - au dernier - le cimeterre d'Amnésie - soit donc 40 ordres d'installation en tout ? Voilà j'aimerais en avoir le coeur net. Et merci pour ta précieuse contribution !
Re: Besoin d'une instruction de codage
Posté : jeu. 12 janv. 2023, 18:13
par JohnBob
COPY_EXISTING ~wmart2.sto~ ~override/wmart2.sto~ // adds all the items to Deidre shop
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~bag04b~ position=~LAST~ flags=~identified~
END
COPY_EXISTING ~wmart2.sto~ ~override/wmart2.sto~ // adds all the items to Deidre shop
LPF ADD_STORE_ITEM_EX
STR_VAR item_name=~bag04c~ position=~LAST~ flags=~identified~
END
Il faut ajouter à chaque fois COPY_EXISTING ~wmart2.sto~ ~override/wmart2.sto~ (pour chaque objet)
En fait pas sûr !!!!
Non tu as raison cela ne semble pas nécessaire...
Donc oui comme tu le présentes dans ton post précédent cela devrait fonctionner, je ne sais pas si sauter une ligne entre chaque block a de l'importance ou non...
Par contre, je ne suis vraiment pas sûr que cette méthode conserve la compatibilité avec les jeux originaux...
Et sans pouvoir tester avec le mod en question ce ne sont que des hypothèses...
Re: Besoin d'une instruction de codage
Posté : jeu. 12 janv. 2023, 18:20
par Prof Errata
Bon, à moi de jouer à présent…je te tiendrais au courant.
Re: Besoin d'une instruction de codage
Posté : jeu. 12 janv. 2023, 19:14
par JohnBob
Petit test avec RTT-itemPack sur bg2 original, la méthode semble valable pour la version vanilla aussi !
Re: Besoin d'une instruction de codage
Posté : jeu. 12 janv. 2023, 21:05
par Prof Errata
tiens à ce sujet JohnBob, as-tu reçu mes 2 emails sur ta messagerie GMail ?
Re: Besoin d'une instruction de codage
Posté : lun. 06 févr. 2023, 00:24
par Prof Errata
Amis Couronniens,
Voilà, je suis en train de revoir en ce moment mon mod DG Items, et j'ai effectué désormais des changements assez notables dessus, après avoir rencontré quelques déboires ici et là… J'ai à présent décidé de prévoir le mod pour BG2EE 2.6.6.0 seulement (et non plus BG2ToB/BG2EE comme avant), vu qu'il y a à présent une VF assez bien révisée disponible surtout grâce à la CDC ; de plus il faudrait voir les détails suivants justement :
- le Setup-DGItems.tp2 et le main_component.tpa sont ils correctement écrits à présent ? Surtout les installations qui s'opèrent dans le magasin de Deidre comme c'est prévu (40 objets en tout), je ne sais pas à quoi sert la commande BUT_ONLY exactement en bas, est-il aussi normal aussi que chaque objet pointé se termine par la commande END ? Et les BAMs sont-ils correctement convertis au passage ?
- le passage en version EE opère-t-il correctement sur le dialog.tra en anglais sur une session de BG2EE en anglais ? Car en dépit de tous mes efforts je ne suis pas arrivé à passer ce fichier en UTF-8 via Notepad++ (et d'autres tentatives ont échoués), or j'ignore si en l'état des fichiers ANSI peuvent passer sur les jeux EE et donc me faciliter la tâche.
- une fois tout cela en place, j'ai buté auparavant sur un bug énervant lors de mon travail, le dernier objet indiquant le magasin de Deidre et non pas le Cimeterre d'Amnésie comme prévu ; il serait bon de vérifier via NearInfinity que tout se pointe correctement cette fois-ci.
Voilà en espérant une aide de votre part et une réponse positive dans quelque temps, et merci d'avance,
(PS : placer un exe Setup-DGItems.exe avec un WeiDU 249.exe pour lancer le tout)
Re: Besoin d'une instruction de codage
Posté : mer. 08 févr. 2023, 21:26
par Prof Errata
Bon je me suis penché à présent en détail sur le mod que j'ai adapté, j'ai rencontré des problèmes initiaux :
- des erreurs de caractères sur le main_component.tpa, qui pointaient sur des caractères  qui pourtant paraissaient normaux comme des A dans une ligne SAY DESC dans Notepad++… Après de longs essais infructueux, j'ai trouvé finalement l'astuce de recopier de précédents SAY DESC tout au long des SAY DESC suivants, ça a marché étonnamment.
- Le Cimeterre d'Amnésie, qui pointait en fait toujours sur dans sa description le SAY NAME2 @10 /@10 = ~Articles de Deidre~
; en retirant à tout hasard la ligne incriminée dans le main_component.tpa tout est rentré dans l'ordre curieusement… J'ai retiré enfin le BUT_ONLY final du fichier tpa, sans changement dans le listing des objets.
Voilà, après quelques retouches effectuées ici et là, à présent il faudra voir que tout fonctionne correctement pour la VO, et si les BAM sont correctement ajustés dans leurs descriptions sur BG2EE dans le magasin de Deidre. Si des Couronniens veulent bien jeter un oeil éventuellement, voici le dossier revu par mes soins :
Re: Besoin d'une instruction de codage
Posté : sam. 18 févr. 2023, 12:58
par Prof Errata
Voilà, après des heures de labeur sur mon clavier, je peux certifier que mon mod DG Items est enfin disponible dans sa version V6 ici sur la Couronne de Cuivre, ayant fignolé les ultimes détails il y a peu ; vous pourrez à présent équiper efficacement vos aventuriers avec les chouettes objets que vous vendra Deidre. Bon jeu à tous ! Je me dois cependant de rappeler que cette dernière version est désormais pour BG2EE 2.6.6.0 seulement.
PS : au passage, quelqu'un pourrait-il me dire ce qu'est cette curieuse fonction BUT_ONLY qu'on voit à la fin de certaines listes d'objets? Si ça peut éclairer ma lanterne - et celle d'autres Couronniens aussi - je saurais à quoi m'en tenir si besoin est.
PPS : pour Fossy, pourrais-tu dans quelque temps accroître encore la taille des fichiers que l'on peut joindre ici sur le forum, jusqu'à 4/5 Mo au moins ? Ça serait d'une grande aide pour les moddeurs que nous sommes, merci d'avance.
Re: Besoin d'une instruction de codage
Posté : dim. 19 févr. 2023, 14:00
par Akadis
Extrait de la documentation du weidu (README-WeiDU.html) :
BUT_ONLY_IF_IT_CHANGES
True only if the file is actually changed by patching actions. Unlike all other when clauses, this one is evaluated just before the result would be written out to the disk. You may use BUT_ONLY as a synonym for BUT_ONLY_IF_IT_CHANGES.
Je suis surpris que tu continues à modder sans utiliser cette doc.
Re: Besoin d'une instruction de codage
Posté : dim. 19 févr. 2023, 14:59
par Selphira
Merci pour ce mod !
J'aurais quelques petites remarques et questions.
- Comme tu as décidé que le mod ne serait compatible qu'avec la version EE, il n'est plus nécessaire d'ajouter les "Utilisable par" dans les descriptions. Tu as bien la fonction GW_WRITE_EE_ITM_DESCRIPTIONS de Freddy_Gwendo disponible, mais elle n'est pas utilisée. Cela fait que cette partie de la description est doublée une fois en jeu.
- Je n'ai pas les nouvelles icônes des objets en jeu. Sans doute est-ce lié à ce bout de code ~IRStore/bam/~ ~^.+\.bam$~ (IRStore devrait devenir DGItems)
- Dans le screen d'exemple, on voit aussi qu'un guerrier/mage pourrait porter l'arme, ce n'est peut-être pas voulu.
- Secondaire, mais dans ton tp2, tu charges le fichier DGItems/lib/gw_functions.tpa manuellement, uniquement si le jeu est BG2EE, mais ce même fichier est déjà inclus (et quelque soit la version du jeu) via ton fichier DGItems/lib/always.tph
- Pourrais-tu rendre compatible le mod avec EET ? De ce que je vois, ce sera très simple, ça devrait se résumer à modifier les GAME_IS ~BG2EE~ en GAME_IS ~BG2EE eet~ dans les différents fichiers.
- Beaucoup de mod ajoutent déjà des objets dans le store de Deirdre, ne serais-tu pas intéressé par dispatcher ces objets un peu partout dans le jeu ?
J'ai mis 2 screenshots en pièce jointe pour que tu puisses facilement visualiser les 2 premiers problèmes remontés.
Re: Besoin d'une instruction de codage
Posté : dim. 19 févr. 2023, 16:02
par JohnBob
Si vous voulez bien
tester cette version qui est censé conserver la compatibilité vanilla...
Le mod est sur github car trop gros pour être posté, mais il n'y restera pas.
Normalement les bam sont bien visibles maintenant.
J'ai vraiment galéré avec cette histoire d'encodage, ce serait cool si quelqu'un vérifie que cela fonctionne bien chez vous aussi...
Voici la liste des changement :
► Afficher le texte
- Add bg vanilla compatibility
- Change Handle charset
- Delete Always.tph and gw.bam.convert.tph
Bam are already for EE and item use original game bam for vanilla
- Add itemsOld folder with items for bg2 vanilla
- Add GW_WRITE_EE_ITM_DESCRIPTIONS where needed.
- Dialog.tra to ANSI
A toi de voir ce que tu en penses Prof Errata !
Une remarque, tu as changé les Bam en vert, malheureusement lorsque les objets sont équipés ils apparaissent dans une autre couleur...
Ce n'est problématique que pour le bouclier, l'armure et, le casque.
► Afficher le texte
Avant
Aprés
La première capture d'écran montre les bam tels qu'ils seront affichés dans BG2 vanilla et la deuxième pour BG2EE.
Re: Besoin d'une instruction de codage
Posté : lun. 20 févr. 2023, 23:52
par Prof Errata
Merci pour vos retours !
Après avoir lu - et téléchargé - le mod ainsi corrigé par JohnBob, je me suis mis à l'ouvrage. La V7 est disponible ici, mais comme la taille maxi pour les fichiers à télécharger sur le forum est hélas de 2 Mo (Fossy, si tu me lis, il serait là vraiment utile de passer à 4/5 Mo maxi, pour les fichiers joints en forum, en espérant que ma requête sera prise en considération d'ici peu), j'ai donc coupé mon mod DGItems en 3 parties ; il faudra d'abord pour installation placer le dossier V7 (Mod DGItems V7sans.rar) puis mettre le dossier autotra (autotrav7.rar) dans le dossier lang et enfin placer le Setup-DGItems.exe à la fin pour finir le tout. Ainsi vous pourrez enfin profiter des beaux objets que Deidre vous vendra…
@ Selphira : les descriptions d'objets pour la version EE ont été remis en place maintenant grâce à JohnBob, leurs icônes apparaissent désormais bien comme il faut sur BG2EE. Le fait que les guerriers-mages peuvent utiliser le Cimeterre d'Amnésie n'est pas une erreur de ma part, ils peuvent utiliser toutes les armes de mêlée justement (sauf les belluaires). Les scripts de fonctions ont été corrigés à présent. L'intégration de EET a été remis en place par mes soins (facile…). Enfin je ne prévois pas de répartir dans quelque temps ces objets dans le jeu, je préfère que les joueurs aient tout le contenu (40 objets en tout, 42 à l'origine) sous la main ; auparavant les objets de ce mod étaient tous disponibles chez Joluv, je les ai transférés chez Deidre pour plus de commodité…
@JohnBob : encore merci pour ton travail minutieux sur les scripts, ça m'ôte une belle épine du pied (au passage tu es remercié dans les readmes VO/VF). J'ai retravaillé le tout ici, à présent mon mod ne concernera que BG2EE/EET, il me paraît inutile de prévoir des scripts d'installation pour BG2ToB "vanilla" (dossier ItemsOld supprimé en conséquence), vu que la correction de la VF de BG2EE est bien avancée en ce moment ; les 3 fichiers incriminés que tu m'as indiqué ont été corrigés (en regardant la Plate de Gorgones attentivement) et j'en ai profité en plus pour revoir les BAMs de 3 anneaux pour les rendre plus visibles. Si tu pouvais reprendre les 3 fichiers de la V7 joints ici et glisser le tout sur GitHub ça serait bien de ta part, merci d'avance.
Re: Besoin d'une instruction de codage
Posté : mar. 21 févr. 2023, 00:07
par JohnBob
Je peux savoir ce que ça te coûte de laisser la compatibilité vanilla ?
Il y a toujours pas mal de joueurs qui utilisent les version originales, peut-être pas sur ce forum mais chez les anglophones oui...
Le dossier itemOld pèse 32,0 Ko (32 768 octets), alors pourquoi s'en priver ?
Re: Besoin d'une instruction de codage
Posté : mar. 21 févr. 2023, 00:14
par Prof Errata
OK, je prends ta remarque en conséquence. Est-ce qu'il faudra faire passer les BAMs des objets - 24 en tout - de la version BG2EE vers BG2ToB, vu que je les ai modifiés au passage ? Comme par exemple l'armure qui n'est plus violette mais verte à présent.
Re: Besoin d'une instruction de codage
Posté : mar. 21 févr. 2023, 00:24
par JohnBob
Non, dans ce cas les objets utiliseront les bam du jeu et pas ceux que tu as créés...
Donc ils apparaitront ainsi sur bg2 :
Mais sur BG2EE ce seront bien tes nouveaux bam qui apparaitront !
Es-tu capable de convertir tes bam pour bg2 vanilla ?
Aurais-tu des indications à me donner sur les méthodes / logiciels que tu utilises pour créer / modifier les bams ? Ou un tuto à suivre ?
J'ai regardé dans NearInfinity, mais n'arrive à rien...
A l'origine l'objectif était de convertir tes nouveaux bam pour bg2 et utiliser la fonction de Freddy-Gwendo qui les convertirai à nouveau pour BG2EE à l'installation, mais ça ne fonctionne pas, raison pour laquelle l'alternative imparfaite "itemOld" a été utilisée.
Edit :
Tes corrections ont été mises sur Github.
Modification de la description du Ceinturon de Force de géant du feu :
Cette ceinture donne à son porteur la Force
de Géant du Feu
/ devient /
Cette ceinture donne à son porteur la Force
d'un Géant du Feu
/ mais peut-être aurais-tu préféré /
Cette ceinture donne à son porteur la Force
des Géants du Feu
Voici le résultat :
► Afficher le texte
J'aurais pas du mettre le zoom au maximum...
Je sais pas si c'est facile à faire, mais ce serait sûrement bien de changer l'animation et le dessin de la description du casque pour un avec des cornes.
Edit 2 :
Tu devrais probablement remettre les deux objets que tu as supprimer afin que le mod reste comme son auteur le voulais, la communauté est assez stricte sur la récupération d'ancien mod sans l'accord de leur créateur... (je ne sais pas si tu as modifier d'autres choses, pareil pour IRStore)