Page 1 sur 1

[SCRIPT] Pb pour lancer un dialogue dans une Cutscene

Posté : dim. 14 déc. 2008, 20:53
par Avatar
Bonjour tout le monde :)

Je débute dans le domaine du modding pour BG2, et j'ai commencé à travailler sur une PNJ sorcière. La partie dialogue a l'air de marcher plus ou moins correctement, alors je me suis mis à la programmation d'une cutscene : un duel de sorcier. Et j'ai quelques questions. ^^

1/ Ma cutscene se déroule comme suit :
1° Les sorciers s'avancent.
2° Dialogue entre les sorciers (vrai dialogue avec des "continuer", pas des textes flottants)
3° Sorts divers

Le problème, c'est que j'ai l'impression que ma cutscene s'arrête d'office après le dialogue. Dois-je commencer une deuxième cutscene pour les sorts?

2/ Concernant les sorts : je voudrais juste les effets (le personnage remue les mains et fait de la lumière) sans devoir vraiment lancer un sort (avec un ForceSpell, les mages cagoulés débarquent : / ). Y a-t-il moyen de faire ça avec un CreateVisualEffectObject par exemple?


Merci d'avance de vos réponses :)

Re : Cutscene : problèmes divers

Posté : dim. 14 déc. 2008, 22:00
par Isaya
Une scène ne contient que des actions automatiques. Un dialogue "normal" sort de ce mode de fonctionnement. Jusqu'à présent, je n'ai vu que des scripts qui lançaient des dialogues avant de se terminer.

Si tu fais appel à un dialogue, ça signifie que tu vas avoir un ou plusieurs éléments terminaux (s'il y a des choix qui font diverger les répliques). Dans ce cas, il faut lancer la deuxième partie (un nouveau script de scène) à partir de chaque élément terminal du dialogue.

Pour les sorts, les effets ne sont que les aspects visuels ou effectifs des sorts. Donc pas d'incantation. Si tu veux voir incanter, il me semble qu'il te faut utiliser ForceSpell ou ses dérivés.
Si tu veux empêcher les mages cagoulés de débarquer, il te faudrait mettre au préalable la variable globale "BribedCowled" à 1. Mais il faudra aussi que tu la remettes dans le bon état initial ensuite sous peine de fausser cet aspect du jeu. Il te faudra pour ça recourir à une autre variable pour mémoriser la valeur initiale.

Je me permets une remarque à propos de ce point : un duel de mage à Athkatla n'est pas envisageable sans avoir corrompu les mages cagoulés. Si tu veux passer outre pour ton mod, il ne sera pas fidèle à l'environnement d'Athkatla.
Si tu veux que ton mod soit dans l'esprit du monde, déplace ton duel ailleurs ou prévois une phase préalable de corruption des mages pour que le duel puisse avoir lieu.

Re : Cutscene : problèmes divers

Posté : dim. 14 déc. 2008, 22:53
par Avatar
Merci beaucoup pour les réponses :)
Si tu fais appel à un dialogue, ça signifie que tu vas avoir un ou plusieurs éléments terminaux (s'il y a des choix qui font diverger les répliques). Dans ce cas, il faut lancer la deuxième partie (un nouveau script de scène) à partir de chaque élément terminal du dialogue.
En fait c'est un dialogue entre ma PNJ sorcière dans le groupe et un sorcier croisé dans la rue, sans intervention de Charname. Je vais donc rajouter une seconde cutscene pour le duel.
Je me permets une remarque à propos de ce point : un duel de mage à Athkatla n'est pas envisageable sans avoir corrompu les mages cagoulés. Si tu veux passer outre pour ton mod, il ne sera pas fidèle à l'environnement d'Athkatla.
Si tu veux que ton mod soit dans l'esprit du monde, déplace ton duel ailleurs ou prévois une phase préalable de corruption des mages pour que le duel puisse avoir lieu.
Je voudrais quand même mettre mon duel à Athkatla (c'est la seule zone vraiment urbaine et accessible rapidement). Pour la corruption des mages cagoulés, on peut supposer que le sorcier qu'on rencontre a déjà payé ses 5000 PO. Pour ma PNJ, je trouverai bien une explication (genre les mages cagoulés étaient distraits ^^ ). Ou au pire je prolonge ma cutscene avec un mage cagoulé qui se pointe et un pot de vin à ce moment-là.

Note : c'est d'ailleurs bizarre le système de détection des mages cagoulés, qui ne marche qu'en extérieur. Je suppose qu'ils surveillent Athkatla par satellite ^^

Encore merci.