Oyez, oyez !

Les résultats du vote sur les meilleurs RPG de tous les temps sont désormais dévoilés dans ce message !

Merci à toutes et à tous pour votre participation !

N'hésitez pas à aller commenter, ajouter des jeux auxquels vous n'auriez pas pensé...

Vérifier si un sort existe lors de l'installation

Regroupe tous les sujets sur les commandes, les fonctions, les routines, les modifications des fichiers systèmes (ids, 2da...)...
Répondre
Avatar du membre
deratiseur
Golem de fer
Messages : 3697
Enregistré le : mer. 05 déc. 2007, 18:35
Localisation : Gap, Hautes alpes
Statut : Hors ligne

Vérifier si un sort existe lors de l'installation

.

Message par deratiseur »

Je voudrais savoir s'il y a un moyen avec Weidu de vérifier si CLERIC_CURE_MODERATE_WOUNDS (tiré de SPELL.IDS) existe, condition pour installer ou non un composant.
Le standard téléphonique est en rade : l'atelier du Deratiseur ne répondra plus à aucune demande personnalisée.
Bosse sur : Interplan v9, Derat's Kri'Binn, Todd : KOPP2.

Mes mods sont tous sur Mediafire et Github
Et leurs descriptions sont ici.
Selphira
Adepte de Grondemarteau
Blême
Messages : 942
Enregistré le : dim. 25 juil. 2004, 21:28
Contact :
Statut : Hors ligne
.

Message par Selphira »

Quelque chose comme ceci peut-être ?

Code : Tout sélectionner

OUTER_SET spellId = ((IDS_OF_SYMBOL (~spell~ ~CLERIC_CURE_MODERATE_WOUNDS~)) - 1000)

ACTION_IF ((spellId > 0) AND (FILE_EXISTS_IN_GAME ~sppr%spellId%.spl~)) THEN BEGIN
   // ...
END
Après, cela n'empêchera pas de choisir le composant, mais tu peux toujours lancer un ABORT pour annuler l'installation du composant.
Modifié en dernier par Selphira le mer. 29 mars 2023, 18:22, modifié 1 fois.
Avatar du membre
deratiseur
Golem de fer
Messages : 3697
Enregistré le : mer. 05 déc. 2007, 18:35
Localisation : Gap, Hautes alpes
Statut : Hors ligne
.

Message par deratiseur »

Ok, ça marche. Merci, c'est niquel. Avec ça je vais pouvoir préparer 2 scripts, un incluant le sort et l'autre ne l'incluant pas.
Le standard téléphonique est en rade : l'atelier du Deratiseur ne répondra plus à aucune demande personnalisée.
Bosse sur : Interplan v9, Derat's Kri'Binn, Todd : KOPP2.

Mes mods sont tous sur Mediafire et Github
Et leurs descriptions sont ici.
Avatar du membre
deratiseur
Golem de fer
Messages : 3697
Enregistré le : mer. 05 déc. 2007, 18:35
Localisation : Gap, Hautes alpes
Statut : Hors ligne
.

Message par deratiseur »

Re reviens pour compléter le biniou.

Comment je fais si je veux utiliser cette référence pour patcher un sort ? Dans ce genre :

Code : Tout sélectionner

OUTER_SET spellId = ((IDS_OF_SYMBOL (~spell~ ~CLERIC_DESTRUCTION~)) - 1000)
ACTION_IF ((spellId > 0) AND (FILE_EXISTS_IN_GAME ~sppr%spellId%.spl~)) THEN BEGIN
COPY_EXISTING	~pxdvie0.spl~	~override~	LPF ADD_ITEM_EQEFFECT INT_VAR opcode = 172 target = 1  STR_VAR resource = sppr%spellId%.spl END
END
Modifié en dernier par deratiseur le dim. 21 janv. 2024, 11:36, modifié 3 fois.
Le standard téléphonique est en rade : l'atelier du Deratiseur ne répondra plus à aucune demande personnalisée.
Bosse sur : Interplan v9, Derat's Kri'Binn, Todd : KOPP2.

Mes mods sont tous sur Mediafire et Github
Et leurs descriptions sont ici.
Selphira
Adepte de Grondemarteau
Blême
Messages : 942
Enregistré le : dim. 25 juil. 2004, 21:28
Contact :
Statut : Hors ligne
.

Message par Selphira »

Je vois que tu utilises ADD_ITEM_EQEFFECT alors que tu veux patcher un sortilège, ne devrais-tu pas utiliser ADD_SPELL_EFFECT à la place ?
Avatar du membre
deratiseur
Golem de fer
Messages : 3697
Enregistré le : mer. 05 déc. 2007, 18:35
Localisation : Gap, Hautes alpes
Statut : Hors ligne
.

Message par deratiseur »

Nah. j'utilise ADD_ITEM_EQEFFECT pour que ça s'inscrive dans le "casting features" du sort. C'est un sort relancé à chaque niveau du kit qui supprime certains sorts (obligatoire pour un kit de clerc parce qu'il regagne ses sorts à chaque niveaux), et il faut que ce soit là car si les effets de suppression sont dans les "extended effects", ça bugue parfois.
Vu sur le prêcheur des flammes il y a quelques année, qui me posait quelques soucis avant que je découvre ça sur un message dans un forum. Passer les effets de suppression dans le "casting features" à résolu les soucis.

Note, j'ai essayé le code que j'ai indiqué sur IWD pour ajouter CLERIC_STALKER (SPPR737). Et ça m'a rajouté à la place la ligne CLERIC_MIST_OF_ELDATH (sppr736)
EDIT : correction , j'ai essayé le code que j'ai indiqué sur IWD pour ajouter CLERIC_STALKER (SPPR737). Et ça m'a rajouté comme référence SPPR (sans rien derrière) (vu sur DLTECEP)
Modifié en dernier par deratiseur le dim. 21 janv. 2024, 13:33, modifié 2 fois.
Le standard téléphonique est en rade : l'atelier du Deratiseur ne répondra plus à aucune demande personnalisée.
Bosse sur : Interplan v9, Derat's Kri'Binn, Todd : KOPP2.

Mes mods sont tous sur Mediafire et Github
Et leurs descriptions sont ici.
Selphira
Adepte de Grondemarteau
Blême
Messages : 942
Enregistré le : dim. 25 juil. 2004, 21:28
Contact :
Statut : Hors ligne
.

Message par Selphira »

Ok. Je te suggère ce code.
J'ai tout de même remplacé ADD_ITEM_EQEFFECT par ADD_SPELL_CFEFFECT (et non pas ADD_SPELL_EFFECT) afin de bien mettre l'effet dans les "casting features".

Code : Tout sélectionner

OUTER_SET spell_num = IDS_OF_SYMBOL (~spell~ ~CLERIC_DESTRUCTION~)
ACTION_IF (spell_num >= 0) THEN BEGIN
   LAF RES_NAME_OF_SPELL_NUM INT_VAR spell_num RET spell_res END
   ACTION_IF FILE_EXISTS_IN_GAME "%spell_res%.spl" BEGIN
      COPY_EXISTING	~pxdvie0.spl~	~override~	LPF ADD_SPELL_CFEFFECT INT_VAR opcode = 172 target = 1  STR_VAR resource = %spell_res%.spl END
   END
END
Avatar du membre
deratiseur
Golem de fer
Messages : 3697
Enregistré le : mer. 05 déc. 2007, 18:35
Localisation : Gap, Hautes alpes
Statut : Hors ligne
.

Message par deratiseur »

Merci, encore une fois :)
Ça marche (sans le .spl ^^).
Avec ça je vais pouvoir renforcer mon mod, pour être sur qu'il n’oublie rien même après l'installation dans BG(2)EE des mods qui rajoutent les sort de IWDEE ou qui changent le niveau de certains sorts ( par exemple spell revision fait passer "Convocation d'elemental de terre" au niveau 6)
Le standard téléphonique est en rade : l'atelier du Deratiseur ne répondra plus à aucune demande personnalisée.
Bosse sur : Interplan v9, Derat's Kri'Binn, Todd : KOPP2.

Mes mods sont tous sur Mediafire et Github
Et leurs descriptions sont ici.
Répondre

Retourner vers « Programmation WeiDU »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 0 invité