Vers l'Infinity et Baldur's Gate
 
AccueilAccueil  PortailPortail  FAQFAQ  RechercherRechercher  MembresMembres  GroupesGroupes  S'enregistrerS'enregistrer  ConnexionConnexion  

Partagez | 
 

 Macros : j'ai rien compris

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
deratiseur
Clown triste
avatar

Nombre de messages : 722
Age : 41
Localisation : GAP, Hautes alpes.
Date d'inscription : 06/07/2008

MessageSujet: Macros : j'ai rien compris   Jeu 4 Fév 2010 - 12:12

J'ai eu la surprise après avoir installé des mods après le dukp de trouver certains des sorts du dukp édités et modifiés.
J'en conclu donc que certains modules que j'ai installé après ont la capacité d'éditer "tous" les sorts, et pas seulement les sorts de base du jeu.

Le mod en question, en l'occurrence, est "spell pack beta 5", qui utilise des macros. SCS et SCS II aussi...

J'aimerais bien que le protection contre les nuée (fatalité rampante, fléau d'insectes, etc..), protège contre tous les sort de ce types, y compris ceux rajoutés par les mods.
Le point commun de ces sorts est l'animation,bien sûr, donc ça doit être faisable.

Problème, je n'ai rien compris aux macros, ça semble être très loin du weidu....

_________________
Plein d'idées, des milliers de lignes écrites, mais encore et toujours bloqué par le manque de ressources....
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Armand
Mexicanos Muy Bien
avatar

Nombre de messages : 622
Age : 31
Localisation : Tréfonds Obscurs
Date d'inscription : 29/07/2008

MessageSujet: Re: Macros : j'ai rien compris   Ven 5 Fév 2010 - 19:52

Concernant les macros je t'invite à jeter un oeil dans le read me de weidu ici :

http://www.weidu.org/~thebigg/README-WeiDU.html

Dans la partie 9.17.


Il se sert de la commande dans un fichier tph qui lui permet de faire ses manips en externe mais à première vue je dirais que ça n'a rien ça voir avec tes sorts. Je pencherais plutôt pour la création de nouveaux effects en fait...


Mais quand tu parles d'édition et de modification tu aprles de quoi en fait ? Texte, effect...?

_________________
J'ai oublié la rancoeur. Je ne connais plus que l'amour, le bonheur... Bordel je baisse ! C'est pas bon ça, pas bon.....

Armand dit :
*t'a vu bat est d'accord avec moi !
*àa prouve bien que...
*ça
*putain mais avec ces conneries mon area a planté
*je dosi tout refaire Neutral
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
deratiseur
Clown triste
avatar

Nombre de messages : 722
Age : 41
Localisation : GAP, Hautes alpes.
Date d'inscription : 06/07/2008

MessageSujet: Re: Macros : j'ai rien compris   Ven 5 Fév 2010 - 20:01

je voudrais jute un sort qui "inspecte" tous les sort du jeu, et s'ils utilisent l'anim INSECT1 ou INSECT2, patcher mon sort pour que soit rajoutée la ligne "protection contre le sort [repéré]".
Ceci à l'install du kit. (ça c'est pour le maitre de l'essaim)


Sinon une autre macro qui inspecte toutes les créatures du jeu, note toute celles qui ont l'anim "drow male" ou "drow female" et ensuite patch un de mes fichier pour ajouter +3 dégâts contre chacune des créatures [repéré]" (ça c'est pour le trompe-la-mort)

_________________
Plein d'idées, des milliers de lignes écrites, mais encore et toujours bloqué par le manque de ressources....
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Zranoff
Prétendant Cargoliste
avatar

Nombre de messages : 147
Age : 26
Localisation : Arles
Date d'inscription : 14/02/2009

MessageSujet: Re: Macros : j'ai rien compris   Dim 7 Fév 2010 - 22:17

Salut, ce que tu appelles des macros ne sont autres que des commandes tp2.
Les macros sont en fait des commandes tp2 permettant de créer des commmandes.
Dans ton cas, je ne pense pas que ce soit nécessaire. Les modifications que tu demandes ne sont pas trop complexe.
Par rapport à ton étonnement, il est monnaie courante de prendre en compte non seulement les éléments du jeu mais aussi les éléments d'autres mods dans son installation via le tp2.
Je te donne tout de suite le code que tu réclames pour tes mises à jour de sorts,
Ce code remplace la copie de ton sort dans l'override:


COPY_EXISTING_REGEXP - GLOB ~.*\.spl~ ~override~
PATCH_IF (%SOURCE_SIZE%>0x71) THEN BEGIN
READ_LONG 0x0064 off_ext_head
READ_SHORT 0x0068 nb_ext_head
FOR (a=0;a<%nb_ext_head%+1;a=%a%+1)BEGIN
READ_SHORT (%off_ext_head%+0x0026*a) anim
PATCH_IF (%anim%=227 OR %anim%=228)THEN BEGIN //Placer ici les numéros de projectiles
SPRINT nom_sort ~%SOURCE_RES%~
INNER_ACTION BEGIN
COPY ~Tonsort.spl~ ~override~ //Placer ici l'emplacement et le nom de ton sort
READ_LONG 0x0064 off_ext_headA
READ_SHORT 0x0068 nb_ext_headA
READ_LONG 0x6a table_feat
FOR (a=0;a<%nb_ext_headA%;a=%a%+1)BEGIN
READ_SHORT (%off_ext_headA%+0x28*a+0x0020) off_feat_blo
READ_SHORT (%off_ext_headA%+0x28*a+0x001e) nb_feat_blo
INSERT_BYTES (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)) 0x30
WRITE_SHORT (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)) 206//Opcode
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x02) 1//Target
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x03) 0//Power
SAY (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x04) @0//Texte expliquant le phénomène
WRITE_LONG (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x000e) 5//Duration
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x0012) 100//Probability
WRITE_ASCIIE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x0014) ~%nom_sort%~//Resource
WRITE_SHORT (%off_ext_headA%+0x28*a+0x001e) %nb_feat_blo%+1
END
END
END
END
END


Donc en rouge tu as tout ce que tu dois modifier à ta convenance.
Astuce: Si tu veux augmenter la Duration en fonction du niveau, tu as la variable "a" qui est à 0 pour le premier extend_header, à 1 pour le 2e, à 2 pour le 3e, etc...
Donc si tu fais un extend_header tous les 3 niveaux, et que tu ajoutes 4 de Duration tous les 3 niveaux, tu peux faire (en commençant à 2 au niveau 1 par exemple):

2+4*%a% //Duration

Voilà, la taille des variables mise à part, je pense avoir fait le plus simple possible en tp2.
Reste à vérifier avant d'utiliser mon code si, par hasard, l'effect 83 ne serait pas bien plus adapté dans ton cas Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
deratiseur
Clown triste
avatar

Nombre de messages : 722
Age : 41
Localisation : GAP, Hautes alpes.
Date d'inscription : 06/07/2008

MessageSujet: Re: Macros : j'ai rien compris   Lun 8 Fév 2010 - 12:19

hu ho.....

je te remercie beaucoup de m'avoir maché le travail.
Mais ce qui m'intéresse c'est de comprendre comment ça marche pour le reproduire par moi même et pouvoir l'appliquer à plein de choses.

Svp, pourrais tu faire un copié collé avec un commentaire explicatif pour chaque ligne ?

READ_LONG 0x0064 off_ext_headA
READ_SHORT 0x0068 nb_ext_headA
READ_LONG 0x6a table_feat
FOR (a=0;a<%nb_ext_headA%;a=%a%+1)BEGIN

C'est obscur......

_________________
Plein d'idées, des milliers de lignes écrites, mais encore et toujours bloqué par le manque de ressources....
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Zranoff
Prétendant Cargoliste
avatar

Nombre de messages : 147
Age : 26
Localisation : Arles
Date d'inscription : 14/02/2009

MessageSujet: Re: Macros : j'ai rien compris   Lun 8 Fév 2010 - 17:18

L'explication détaillée serait un abominable chemin tortueux pour comprendre ces quelques lignes. Mais je peux te faire une explication générale (va sérieusement falloir que je fasse des tutoriaux, moi).
Commençons:
COPY_EXISTING_REGEXP - GLOB ~.*\.spl~ ~override~
PATCH_IF (%SOURCE_SIZE%>0x71) THEN BEGIN

Ces deux lignes permettent de prendre tous les fichiers(REGEXP) existants avant l'install(EXISTING) ayant l'extension spl (.*\.spl), qu'ils viennent des mods ou du jeu original (GLOB) et de ne pas les copier (-). Je ne prends pas les fichiers spl dont la taille est inférieure à 0x71 octets (fichiers défectueux). Avec ces deux lignes, j'ai pris tout ce que je devais analyser pour trouver les projectiles qu'ils utilisent. (fichiers pro)

Avec:
READ_LONG 0x0064 off_ext_head
READ_SHORT 0x0068 nb_ext_head
FOR (a=0;a<%nb_ext_head%+1;a=%a%+1)BEGIN
READ_SHORT (%off_ext_head%+0x0026*a) anim

J'obtiens le numéro du projectile de chaque sort existant. (les numéros viennent de projectl.ids)
Je ne peux pas être plus précis de ce côté-là, il faut vraiment connaître la structure d'un fichier spl et seul un bon tuto sera apte à te donner les indications nécessaire à la compréhension profonde de ces lignes.

Puis:
PATCH_IF (%anim%=227 OR %anim%=228)THEN BEGIN
SPRINT nom_sort ~%SOURCE_RES%~
INNER_ACTION BEGIN

Si je trouve l'un de tes projectiles dans le sort , je sauvegarde le nom du sort et j'enclenche une action.

COPY_EXISTING ~Tonsort.spl~ ~override~
READ_LONG 0x0064 off_ext_headA //Adresse des extend_headers de ton sort
READ_SHORT 0x0068 nb_ext_headA //nombre d'extend_headers de ton sort
READ_LONG 0x6a table_feat //Adresse des effects de ton sort
FOR (a=0;a<%nb_ext_headA%;a=%a%+1)BEGIN
READ_SHORT (%off_ext_headA%+0x28*a+0x0020) off_feat_blo //Adresse du premier effect du sort
READ_SHORT (%off_ext_headA%+0x28*a+0x001e) nb_feat_blo //nombre d'effects du sorts

L'action enclenchée n'est autre que la copie de ton sort dans le dossier override avec une modification (patch)
Pour ces lignes, il s'agit juste de récupérer des informations sur ton sort histoire de savoir où je vais placer l'immunité au sort.

INSERT_BYTES (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)) 0x30 //insertion d'un bloc de la taille d'un effect derrière le dernier effect de ton sort
WRITE_SHORT (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)) 206
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x02) 1
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x03) 0
SAY (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x04) @0
WRITE_LONG (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x000e) 5
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x0012) 100
WRITE_ASCIIE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x0014) ~%nom_sort%~
WRITE_SHORT (%off_ext_headA%+0x28*a+0x001e) %nb_feat_blo%+1 //On rajoute un effect dans la référence au nombre d'effect de ton sort.

Enfin vient l'ajout de l'immunité au sort en lui-même, et ce pour tout sort ayant les projectiles que tu as spécifié.
L'effect est écrit du début à la fin dans le bloc ajouté.

Désolé pour mon explication quelque peu vaseuse, j'ai énormément de tutos à faire si je veux expliquer tout ce que contient ce code. Un par ligne en moyenne.
J'espère en tout cas que je t'ai éclairci la plupart du code au moins de façon intuitive.

Après, l'adapter à d'autres choses, tu peux. Je t'aiderai autant que tu veux.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
deratiseur
Clown triste
avatar

Nombre de messages : 722
Age : 41
Localisation : GAP, Hautes alpes.
Date d'inscription : 06/07/2008

MessageSujet: Re: Macros : j'ai rien compris   Lun 8 Fév 2010 - 18:04

Bon, je vais essayer de me débrouiller avec ça, et je tripatouillerais pour le faire à ma sauce.
Il faut que je fasse avec ce code tout ça :
- Un sort qui immunise contre tout sort qui a comme projectile Y
- Un sort qui renvoi tout sort qui a comme projectile Y
- Un sort qui donne +x au taco et au toucher contre toute créature dont l'anim est Z
- Un sort qui donne la protection contre lui même a toutes les créatures qui ont résistance au feu +90% (et n'affecte donc que les autres)

etc, etc.....

Si je découvre le secret de ce code, je pourrais peaufiner le DKP comme pas possible....


Merci beaucoup Smile

Edit : j'avoue quand même qu'après avoir crée un module et scripté sur Morrowind, je déchante quand je scripte sur bg2. les possibilités trop limitées posent de sérieuses barrières à mon imagination :-/

_________________
Plein d'idées, des milliers de lignes écrites, mais encore et toujours bloqué par le manque de ressources....
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
deratiseur
Clown triste
avatar

Nombre de messages : 722
Age : 41
Localisation : GAP, Hautes alpes.
Date d'inscription : 06/07/2008

MessageSujet: Re: Macros : j'ai rien compris   Dim 21 Fév 2010 - 20:25

Bon, alors, j'ai testé. J'ai incrusté ceci dans le setup.tp2 :

Citation :
COPY_EXISTING_REGEXP - GLOB ~.*\.spl~ ~override~
PATCH_IF (%SOURCE_SIZE%>0x71) THEN BEGIN
READ_LONG 0x0064 off_ext_head
READ_SHORT 0x0068 nb_ext_head
FOR (a=0;a<%nb_ext_head%+1;a=%a%+1)BEGIN
READ_SHORT (%off_ext_head%+0x0026*a) anim
PATCH_IF (%anim%=227 OR %anim%=228)THEN BEGIN //Placer ici les numéros de projectiles
SPRINT nom_sort ~%SOURCE_RES%~
INNER_ACTION BEGIN
COPY ~Derats_kits/Essaim/Spells/pxb0rins~ ~override~ //Placer ici l'emplacement et le nom de ton sort
READ_LONG 0x0064 off_ext_headA
READ_SHORT 0x0068 nb_ext_headA
READ_LONG 0x6a table_feat
FOR (a=0;a<%nb_ext_headA%;a=%a%+1)BEGIN
READ_SHORT (%off_ext_headA%+0x28*a+0x0020) off_feat_blo
READ_SHORT (%off_ext_headA%+0x28*a+0x001e) nb_feat_blo
INSERT_BYTES (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)) 0x30
WRITE_SHORT (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)) 206//Opcode
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x02) 1//Target
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x03) 0//Power
SAY (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x04) @521//Texte expliquant le phénomène
WRITE_LONG (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x000e) 9//Duration
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x0012) 100//Probability
WRITE_ASCIIE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x0014) ~%nom_sort%~//Resource
WRITE_SHORT (%off_ext_headA%+0x28*a+0x001e) %nb_feat_blo%+1
END
END
END
END
END

le chemin du fichier est bon, c'est un copié collé du chemin qui marchait (install sans bug) avant le rajout de ce code. La casse est bonne.

Et pourtant, ça plante.

Extrait du debug :
Citation :
Copying and patching 3206 files ...
[./override/ABZAWAY.SPL] loaded, 586 bytes
[./override/ACBONUS1.SPL] loaded, 250 bytes
[./override/ACBONUS2.SPL] loaded, 298 bytes
[./override/ACBONUS3.SPL] loaded, 298 bytes
[./override/ACBONUS4.SPL] loaded, 298 bytes
[./override/ACBONUS5.SPL] loaded, 298 bytes
[./override/ACBONUS6.SPL] loaded, 298 bytes
[./override/ACBONUS7.SPL] loaded, 298 bytes
[./override/ACBONUS8.SPL] loaded, 298 bytes
[./override/ACBONUS9.SPL] loaded, 298 bytes
[./override/ATTACK01.SPL] loaded, 202 bytes
[./override/ATTACK02.SPL] loaded, 250 bytes
[./override/ATTACK03.SPL] loaded, 298 bytes
[./override/ATTACK04.SPL] loaded, 346 bytes
[./override/ATTACK05.SPL] loaded, 394 bytes
BIFF may be in hard-drive CD-path [e:\Travaux\Copies de travail\Baldur2\CD5\/DATA/25SPELLS.BIF]
BIFF may be in hard-drive CD-path [e:\Travaux\Copies de travail\Baldur2\CD4\/DATA/25SPELLS.BIF]
BIFF may be in hard-drive CD-path [e:\Travaux\Copies de travail\Baldur2\CD3\/DATA/25SPELLS.BIF]
BIFF may be in hard-drive CD-path [e:\Travaux\Copies de travail\Baldur2\CD2\/DATA/25SPELLS.BIF]
BIFF may be in hard-drive CD-path [e:\Travaux\Copies de travail\Baldur2\CD1\/DATA/25SPELLS.BIF]
BIFF may be in hard-drive CD-path [e:\Travaux\Copies de travail\Baldur2\/DATA/25SPELLS.BIF]
[e:\Travaux\Copies de travail\Baldur2\/DATA/25SPELLS.BIF] 229496 bytes, 346 files, 0 tilesets
[./override/BALSHLD2.SPL] loaded, 394 bytes
[./override/BALTH01.SPL] loaded, 1394 bytes
[./override/BALTH01B.SPL] loaded, 442 bytes
[./override/BALTH06.SPL] loaded, 250 bytes
[./override/BALTH09.SPL] loaded, 586 bytes
[./override/BANISH.SPL] loaded, 250 bytes
[./override/BANISH1.SPL] loaded, 298 bytes
[./override/BANISH2.SPL] loaded, 298 bytes
[./override/BHAAL2B.SPL] loaded, 5042 bytes
[./override/BLAKBLA1.SPL] loaded, 250 bytes
[./override/BLAKBLA2.SPL] loaded, 250 bytes
[./override/BLAKBLA3.SPL] loaded, 298 bytes
[./override/BLAKBLA4.SPL] loaded, 250 bytes
[./override/BLAKBLAD.SPL] loaded, 250 bytes
[./override/BLIND.SPL] loaded, 490 bytes
[./override/CA#AF.SPL] loaded, 1546 bytes
[./override/CA#BLON.SPL] loaded, 490 bytes
[./override/CA#BSK.SPL] loaded, 634 bytes
[./override/CA#BSM.SPL] loaded, 586 bytes
[./override/CA#CFC2.SPL] loaded, 442 bytes
[./override/CA#CLAR.SPL] loaded, 394 bytes
[./override/CA#DRAIR.SPL] loaded, 1258 bytes
[./override/CA#DREAR.SPL] loaded, 1258 bytes
[./override/CA#DRFIR.SPL] loaded, 1258 bytes
[./override/CA#DRUAI.SPL] loaded, 202 bytes
[./override/CA#DRUEA.SPL] loaded, 202 bytes
[./override/CA#DRUFI.SPL] loaded, 202 bytes
[./override/CA#DRUWA.SPL] loaded, 202 bytes
[./override/CA#DRWAT.SPL] loaded, 1258 bytes
[./override/CA#DS103.SPL] loaded, 394 bytes
[./override/CA#DS104.SPL] loaded, 250 bytes
[./override/CA#DS105.SPL] loaded, 442 bytes
[./override/CA#DS109.SPL] loaded, 250 bytes
[./override/CA#DS110.SPL] loaded, 3794 bytes
[./override/CA#DS202.SPL] loaded, 15522 bytes
[./override/CA#DS204.SPL] loaded, 394 bytes
[./override/CA#DS206.SPL] loaded, 1610 bytes
[./override/CA#DS207.SPL] loaded, 298 bytes
[./override/CA#DS210.SPL] loaded, 10514 bytes
[./override/CA#DS211.SPL] loaded, 6674 bytes
[./override/CA#DS212.SPL] loaded, 394 bytes
[./override/CA#DS302.SPL] loaded, 2018 bytes
[./override/CA#DS305.SPL] loaded, 298 bytes
[./override/CA#DS306.SPL] loaded, 7634 bytes
[./override/CA#DS308.SPL] loaded, 490 bytes
[./override/CA#DS315.SPL] loaded, 394 bytes
[./override/CA#DS317.SPL] loaded, 682 bytes
[./override/CA#DS318.SPL] loaded, 250 bytes
[./override/CA#DS319.SPL] loaded, 490 bytes
Copying and patching 1 file ...
ERROR: error loading [Derats_kits/Essaim/Spells/pxb0rins]
Stopping installation because of error.
ERROR: [CA#DS319.SPL] -> [override/CA#DS319.SPL] Patching Failed (COPY) (Unix.Unix_error(20, "stat", "Derats_kits/Essaim/Spells/pxb0rins"))
Stopping installation because of error.

ERREUR pendant l'installation de [Kit de druide : Maitre de l'essaim], retour a l'etat anterieur


Help svp

_________________
Plein d'idées, des milliers de lignes écrites, mais encore et toujours bloqué par le manque de ressources....
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Zranoff
Prétendant Cargoliste
avatar

Nombre de messages : 147
Age : 26
Localisation : Arles
Date d'inscription : 14/02/2009

MessageSujet: Re: Macros : j'ai rien compris   Dim 21 Fév 2010 - 21:22

je suis au regret de te dire que tu as oublié le .spl
en copiant le nom de ton sort Shocked
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
deratiseur
Clown triste
avatar

Nombre de messages : 722
Age : 41
Localisation : GAP, Hautes alpes.
Date d'inscription : 06/07/2008

MessageSujet: Re: Macros : j'ai rien compris   Mar 2 Mar 2010 - 15:38

Merci Zranoff pour ta correction. Oui, je fais des erreurs bête :s

par contre ça ne marche pas, le sort modifié donne la protection contre SPPR717 alors que NI est formel, il y a 4 sorts qui se servent de la/les anims en question : SPPR319, SPPR517, SPPR717 et spin689.

Pourquoi donc, svp ?

_________________
Plein d'idées, des milliers de lignes écrites, mais encore et toujours bloqué par le manque de ressources....
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Zranoff
Prétendant Cargoliste
avatar

Nombre de messages : 147
Age : 26
Localisation : Arles
Date d'inscription : 14/02/2009

MessageSujet: Re: Macros : j'ai rien compris   Jeu 11 Mar 2010 - 16:56

J'ai dû faire une erreur au niveau des adresses des données.
Il y a une ligne à corriger, un seul caractère d'ailleurs.
Après le seul FOR du code tu as un a=0
Tu le remplaces par a=1

C'est étrange j'avais pourtant testé ton code avant de te le passer.


Dernière édition par Zranoff le Sam 27 Mar 2010 - 14:56, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
deratiseur
Clown triste
avatar

Nombre de messages : 722
Age : 41
Localisation : GAP, Hautes alpes.
Date d'inscription : 06/07/2008

MessageSujet: Re: Macros : j'ai rien compris   Jeu 11 Mar 2010 - 21:44

Encore merci, zranoff :-)

Texte corrigé, essai fait, toujours pareil, un seul sort rajouté :-/

Zut zut zut et rezut, j'ai besoin de ce code fonctionnel pour donner au trompe-la-mort son bonus contre les drows Sad

_________________
Plein d'idées, des milliers de lignes écrites, mais encore et toujours bloqué par le manque de ressources....
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Zranoff
Prétendant Cargoliste
avatar

Nombre de messages : 147
Age : 26
Localisation : Arles
Date d'inscription : 14/02/2009

MessageSujet: Re: Macros : j'ai rien compris   Sam 27 Mar 2010 - 15:07

J'essaie une dernière fois après quoi je jette l'éponge.
Ca me paraît incroyable que mon code marche chez moi et pas chez toi.
Ce code (presque le même) semble sans bavures:

Citation :
COPY_EXISTING_REGEXP - GLOB ~.*\.spl~ ~override~
SPRINT nom_sort ~~
PATCH_IF (%SOURCE_SIZE%>0x71) THEN BEGIN
READ_LONG 0x0064 off_ext_head
READ_SHORT 0x0068 nb_ext_head
FOR (a=1;a<%nb_ext_head%+1;a=%a%+1)BEGIN
READ_SHORT (%off_ext_head%+0x0026*a) anim
PATCH_IF (%anim%=227 OR %anim%=228)THEN BEGIN //Placer ici les numéros de projectiles
SPRINT nom_sort ~%SOURCE_RES%~
INNER_ACTION BEGIN
COPY ~Derats_kits/Essaim/Spells/pxb0rins.spl~ ~override~ //Placer ici l'emplacement et le nom de ton sort
READ_LONG 0x0064 off_ext_headA
READ_SHORT 0x0068 nb_ext_headA
READ_LONG 0x6a table_feat
FOR (a=0;a<%nb_ext_headA%;a=%a%+1)BEGIN
READ_SHORT (%off_ext_headA%+0x28*a+0x0020) off_feat_blo
READ_SHORT (%off_ext_headA%+0x28*a+0x001e) nb_feat_blo
INSERT_BYTES (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)) 0x30
WRITE_SHORT (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)) 206//Opcode
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x02) 1//Target
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x03) 0//Power
SAY (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x04) @521 //Texte expliquant le phénomène
WRITE_LONG (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x000e) 9//Duration
WRITE_BYTE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x0012) 100//Probability
WRITE_ASCIIE (%table_feat%+0x0030*(%off_feat_blo%+%nb_feat_blo%)+0x0014) ~%nom_sort%~//Resource
WRITE_SHORT (%off_ext_headA%+0x28*a+0x001e) %nb_feat_blo%+1
END
END
END
END
END
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Macros : j'ai rien compris   

Revenir en haut Aller en bas
 
Macros : j'ai rien compris
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» je me suis mis à Photoshop et j'ai...rien compris.
» Comment ne rien comprendre au binaire
» Serial Experiments Lain
» La libye
» Comment utiliser GIMP???...

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
LEGENDES :: LE MONDE DU MODDING :: Maîtrise :: Apprentissage-
Sauter vers: