Page 1 sur 1
[SCRIPT] Comment rendre un équipement confisqué ?
Posté : mar. 13 août 2013, 19:54
par Cocrane
Le Charname se voit perdre l'équipement de son personnage. La possibilité de récupérer cet équipement est proposé plus tard.
Ce cas est il gérable dans le jeu?
Cela implique de garder en mémoire la liste des objets perdus. De ce que j'ai compris, les variables que l'on peut créer et gérer stocke des nombres, on ne peut donc pas stocker un nom d'objet.
Qui a une solution pour ce cas?
Cocrane
Posté : mar. 13 août 2013, 19:57
par Smidge
stocker le code CLUA en convertissant les lettres en nombres (via le code ASCII par exemple, ou moins gourmand en taille : de 01 à 26 la lettre correspondante, et par exemple de 90 à 99 les chiffres) ?
Exemple :
sw1h32 -> 192391089392
ça loge dans une variable ça ?
EDIT :
ou une autre possibilité encore : lister tous les itm en les associant à un numéro, et sauver ce numéro dans une variable
Posté : mer. 14 août 2013, 18:39
par Cocrane
C'est une idée à mesurer en terme de faisabilité. Je n'ai pas encore moddé. J'ignore si un script pourrait mettre en place ce système de notation.
Qui donne son avis?
Cocrane
Posté : mer. 14 août 2013, 19:16
par Smidge
bon, à mon avis, le stockage d'un nombre à 12 chiffres, ça risque d'être trop pour une global variable...
par contre, un listage complet des itm et une association à une valeur (enregistrée dans une variable, donc), c'est peut-être long à coder (yen a 1490 quand même...), mais c'est simple et ça fonctionne.
(en y réfléchissant d'ailleurs, ça pourrait se stocker dans un fichier de type tableur, genre .csv)
Posté : mer. 14 août 2013, 20:49
par Cocrane
Je pense que le moteur du jeu ne propose pas l'export de données ou de lecture avec comme support un fichier CSV.
Cocrane
Posté : mer. 14 août 2013, 20:53
par Smidge
hé bien sinon, une (très) longue série de PATCH_IF
si j'ai le temps, je ferais une petite routine (avec un autre programme externe) pour faire automatiquement tous les PATCH_IF correspondants, et je te le mettrais en pièce jointe.
Tu n'auras plus qu'à copier coller
Posté : mer. 14 août 2013, 21:47
par Cocrane
Je détaille un peu plus mon besoin pour être clair.
Le but est donc de:
1-mémoriser la liste des objets d'un personnage ciblé du groupe
2- de lire cette liste
3- de créer ces objets dans le jeu (dans un coffre par exemple)
Je te remercie pour ta proposition qui m'intéresse. Le PATCH_IF consiste en quoi?
Si le travail à réaliser est conséquent, il est plus raisonnable de faire le tour des idées de ceux qui sont intéressés par le sujet pour être sur que c'est la meilleure option.
Je ne tiens pas à te faire perdre du temps.
Cocrane
Posté : mer. 14 août 2013, 23:07
par Smidge
Cocrane a écrit :Je détaille un peu plus mon besoin pour être clair.
Le but est donc de:
1-mémoriser la liste des objets d'un personnage ciblé du groupe
2- de lire cette liste
3- de créer ces objets dans le jeu (dans un coffre par exemple)
Je te remercie pour ta proposition qui m'intéresse. Le PATCH_IF consiste en quoi?
Si le travail à réaliser est conséquent, il est plus raisonnable de faire le tour des idées de ceux qui sont intéressés par le sujet pour être sur que c'est la meilleure option.
Je ne tiens pas à te faire perdre du temps.
Cocrane
mon idée en fait, c'est de balayer les équipements du joueur à un moment donné, et de créer les 37 variables correspondant aux 37 emplacements d'objets possible.
Le truc, c'est que je connais pas grand chose au modding (j'ai dû créer 3 ou 4 pauvres tp2), mais j'ai quelques notions de programmation. Et je me doute bien qu'il va falloir tester la valeur du code CLUA de l'objet, pour ensuite le transformer en nombre stockable sous la forme d'une variable chiffrée.
("PATCH_IF", c'est une des fonctions de test en weidu, j'ai cru que tu aurais besoin de ça...)
Je ne sais pas du tout quelle syntaxe tu auras besoin pour coder un truc pareil. Dans mon idée, il faudrait... 1490 tests, pour chaque itm...
En gros,
Code : Tout sélectionner
if (code_clua==blabla.itm) then variable=1
else if (code_clua==blabla2.itm) then variable=2
else if...
Donc tu me donnes la syntaxe de ce dont tu as besoin, et je peux te générer les 1490 lignes correspondantes sans trop de mal.
Posté : jeu. 15 août 2013, 08:30
par Cocrane
1490 tests par case de l'équipement car il y a 1490 item possibles dans le moteur du jeu?
Au niveau syntaxe, je ne vois pas quoi te répondre .
J'ai un besoin sans savoir comment le coder.
Cocrane
Posté : jeu. 15 août 2013, 09:49
par Smidge
Cocrane a écrit :1490 tests par case de l'équipement car il y a 1490 item possibles dans le moteur du jeu?
précisément
Cocrane a écrit :
Au niveau syntaxe, je ne vois pas quoi te répondre .
J'ai un besoin sans savoir comment le coder.
Cocrane
arf, je ne peux trop t'aider alors... Je ne sais pas comment programmer des scripts en jeu ni quel langage utiliser... J'ai bien une idée "algorithmiquement parlant", mais je ne saurais pas la mettre en forme de façon intelligible pour un mod...
Posté : ven. 16 août 2013, 23:51
par Isaya
Il y a un voire plusieurs mods qui font quelque chose de ce genre, pour la partie Spellhold. Il me semble que ce sont Big Picture et SCS II. J'ignore leur façon de procéder. Le plus simple est sans doute de chercher à s'en inspirer.
Posté : sam. 17 août 2013, 08:59
par Armand
J'essaierais de regarder à l'occasion coco même si je pense que ça risque d'être un peu technique.
Posté : dim. 18 août 2013, 10:38
par Cocrane
Si un mod le fait, il y a donc bon espoir.
il n'y a pas un mot clé qui renvoie le nom du fichier ITM présent dans l'équipement? A l'inverse on a le mot clé qui recherche si un nom d'objet est présent dans l'équipement. (exemple: les forgerons qui scrutent votre équipement).
La difficulté étant que l'équipement doit être mémorisé un bou de temps et potentiellement restitué sur une autre map etc...