Page 1 sur 1

[SCRIPT] Pb avec une cutscene qui ne se lance pas

Posté : sam. 10 oct. 2009, 21:57
par Grenouillebleue
Hello,

Petit problème avec une cutscene, j'essaie de me refamiliariser avec les commandes mais quelque chose ne fonctionne pas.

L'objectif est que le PNJ Gaelle, qui ne fait pas encore partie du groupe, se fasse encercler par quatre esclavagistes et les réduise en cendres.

Bon. Pas très original, mais vous voyez le principe (à la Irenicus, quoi).

J'ai donc dans le gaelle.baf:


Code : Tout sélectionner

IF
  !Allegiance(Myself,ENEMY)
  Global("gaelledebut","LOCALS",0)
THEN
  RESPONSE #100
    ClearAllActions()
    CreateCreatureOffScreen("SLAVER1",0)  
    CreateCreatureOffScreen("SLAVER2",0)  
    CreateCreatureOffScreen("SLAVER3",0)  
    CreateCreatureOffScreen("SLAVER4",0)  
    StartCutSceneMode()
    StartCutScene("Cutdebut1")
END
Et dans le fichier Cutdebut1.baf:

Code : Tout sélectionner

IF
    True()
THEN
    RESPONSE #100
        CutSceneId("Gaelle")
        Wait(1)
        ActionOverride("SLAVER1", MoveToObject("Gaelle"))
        ActionOverride("SLAVER2", MoveToObject("Gaelle"))
        ActionOverride("SLAVER3", MoveToObject("Gaelle"))
        ActionOverride("SLAVER4", MoveToObject("Gaelle"))
        Wait(1)
        ClearActions("SLAVER1")
        ClearActions("SLAVER2")
        ClearActions("SLAVER3")
        ClearActions("SLAVER4")
        SetGlobal("gaelledebut","LOCALS",1)
        ActionOverride("GAELLE",Dialog(Player1))
END

Bon. Sauf que rien ne se passe. Ça a bien compilé donc a priori pas d'erreur de syntaxe, mais la cutscene se lance... et rien ne bouge, je suis définitivement bloqué dans une cutscene infinie. Les esclavagistes ne bougent pas d'un poil.

Où est-ce que j'ai merdé ? :'(

Re : Souci avec une cutscene

Posté : sam. 10 oct. 2009, 22:33
par Armand
Il peut y avoir plusieurs raison à cela mais déjà ton fichier cutscene ne respecte pas la limitation de caractère. Ça ne doit pas dépasser huit lettre.

Sinon je voudrais attirer ton attention sur un point. Dans ton mod tout ce que tu crée en terme de fichier (cre, bad, d, tra,variable, etc...) doit être préfixé. Ça permettra d'éviter d'énorme conflit si par malheur un pinpin a choisi un terme de fichier identique. Tu peux réserver un préfixe ici : Community Filename Prefix Reservations - The Black Wyrm's Lair - Forums.

Si tu veux avoir un bon exemple regarde un peu le mod severian, il a l'avantage d'être français (cocorico).

Bon sinon essais déjà de modifie la limitation de caractère et après on vois.

Re : Souci avec une cutscene

Posté : sam. 10 oct. 2009, 22:38
par Graoumf
Le mod Kim n'a pas de préfixe ? Parce que GB pourrait prendre le même...

Re : Souci avec une cutscene

Posté : sam. 10 oct. 2009, 22:42
par Armand
Non justement y'en avais pas à l'époque. Ça passe pour l'instant vu que tout le monde a un préfixe mais vaut peut être mieux éviter de jouer avec le feu. :whistle3:

Re : Souci avec une cutscene

Posté : sam. 10 oct. 2009, 23:02
par Grenouillebleue
Les variables ont été corrigées, mais ça ne modifie absolument rien helas...

Code : Tout sélectionner

IF
  !Allegiance(Myself,ENEMY)
  Global("ggastart","LOCALS",0)
THEN
  RESPONSE #100
    ClearAllActions()
    CreateCreatureOffScreen("SLAVER1",0)  
    CreateCreatureOffScreen("SLAVER2",0)  
    CreateCreatureOffScreen("SLAVER3",0)  
    CreateCreatureOffScreen("SLAVER4",0) 
    DisplayStringHead(Myself,~Encore des esclavagistes ? Mourez, bande de lâches !~)  
    StartCutSceneMode()
    StartCutScene("ggcut")
END

Code : Tout sélectionner

IF
    True()
THEN
    RESPONSE #100
        CutSceneId("Ggaelle")
        Wait(1)
        ActionOverride("SLAVER1", MoveToObject("Ggaelle"))
        ActionOverride("SLAVER2", MoveToObject("Ggaelle"))
        ActionOverride("SLAVER3", MoveToObject("Ggaelle"))
        ActionOverride("SLAVER4", MoveToObject("Ggaelle"))
        Wait(1)
        ClearActions("SLAVER1")
        ClearActions("SLAVER2")
        ClearActions("SLAVER3")
        ClearActions("SLAVER4")
        SetGlobal("ggastart","LOCALS",1)
        ActionOverride("Ggaelle",Dialog(Player1))
END

Re : Souci avec une cutscene

Posté : sam. 10 oct. 2009, 23:16
par Armand
Et la qu'est qui marche pas la cutscene ou le baf ? Les deux ?

EDIT : si t'a moyen de m'envoyez les fichiers je pourrais tous vérifier direct on gagnerai du temps...

Re : Souci avec une cutscene

Posté : sam. 10 oct. 2009, 23:28
par Isaya
Certaines commandes nécessitent d'indiquer le nom du fichier CRE, d'autres nécessitent d'indiquer la variable de script (aussi appelée death variable).
Vérifie que tes créatures ont bien un nom de variable de script (défini en death variable dans l'éditeur de fichier CRE selon celui que tu utilises) et que c'est bien celui que tu utilises dans les instructions ActionOverride(), MoveToObject() et ClearActions().

PS : c'est le monde à l'envers. Voilà qu'on donne des conseils au premier créateur français d'un mod digne de ce nom. Content de te voir de retour. Aurons-nous aussi la suite de "Briseurs d'empire" ? ;)

Re : Souci avec une cutscene

Posté : sam. 10 oct. 2009, 23:50
par Grenouillebleue
J'espère bien que vous me donnerez des conseils, ça doit faire cinq ou six ans que je n'ai pas touché à du script. Faut que je me remette dans le bain :sun_bespectacled:

Bon, en tout cas mon problème a été réglé, c'était bien un souci de death variable.

Re : Souci avec une cutscene

Posté : dim. 11 oct. 2009, 00:58
par Armand
J'espère bien que vous me donnerez des conseils, ça doit faire cinq ou six ans que je n'ai pas touché à du script. Faut que je me remette dans le bain :sun_bespectacled:
Bon, en tout cas mon problème a été réglé, c'était bien un souci de death variable.
Bon ça va il est pas trop rouillé il s'en sort pas trop mal... :) Sinon dans le fichier cre pour info : pense à mettre la même ref pour death variable, dlg file, et override script. Ça simplifie beaucoup de chose !

Edit pour la route : je sais pas si tu te souviens mais tu a aussi une case CLASS script. Ca permet d'apporter des ^précisions sur le comportement de ton perso (en cas d'attaque notamment). Tu as la possibilité de remplir cette case avec un script existant ou un baf de ton cru à ça marche quand même.

Re : Souci avec une cutscene

Posté : jeu. 15 oct. 2009, 22:00
par Coyote
Armand a écrit :Bon ça va il est pas trop rouillé il s'en sort pas trop mal... :) Sinon dans le fichier cre pour info : pense à mettre la même ref pour death variable, dlg file, et override script. Ça simplifie beaucoup de chose !

Edit pour la route : je sais pas si tu te souviens mais tu a aussi une case CLASS script. Ca permet d'apporter des ^précisions sur le comportement de ton perso (en cas d'attaque notamment). Tu as la possibilité de remplir cette case avec un script existant ou un baf de ton cru à ça marche quand même.

Pour compléter ce que dit Armand, tu peux aussi, dans DEFAULT SCRIPT, rajouter un script original du jeu, qui vaudra pour un script de combat. Un WTASIGHT par exemple, engage la créature dans le combat dès qu'elle voit un ennemi. Dès lors, pas besoin de se fouler : soyons économes de temps et d'énergie. Ce qui est bien avec WTASIGHT, c'est que ce script ne prend pas le pas sur un script de sortilèges que tu aurais pu écrire pour la même créature, par exemple. Une fois tous ses sorts lancés, alors seulement WTASIGHT se déclenche et la créature ira au corps à corps.
Il en existe d'autres, qui font fuir la créature devant l'ennemi, il faut chercher avec Near Infinity.

P.S : Armand, tu parles bien du CLASS SCRIPT et non du DEFAULT SCRIPT ?