Archives des forums MMO/MMORPG > Neverwinter Nights > NWN - Maskado > Pour qu'un perso parle quand on le frappe
Pour qu'un perso parle quand on le frappe
Par Elmo le 3/9/2002 à 16:07:26 (#2088128)
Par Azrael07 le 3/9/2002 à 17:45:12 (#2088794)
OnDamaged et OnPhysicalAttacker
et pis tu met ca dans OnDamaged
void main()
{
ActionSpeakString("ouais pas mal, continue");
}
je pense que ca devrais suffire(attention par contre le mec n'est pas increvable, ca il faut le faire aussi, si tu sais pas cmt faire donne suite a ce topic)
Par Kemay le 3/9/2002 à 17:45:22 (#2088795)
void main()
et virer tous ses scripts par défaut.
{
ActionSpeakString("ouais pas mal, continue");
}
Par Azrael07 le 3/9/2002 à 17:48:27 (#2088816)
bon ben voila mnt tu peut pas te tromper ;)
Par Elmo le 3/9/2002 à 20:20:18 (#2089972)
Par LeProctophantasmiste le 3/9/2002 à 21:43:11 (#2090568)
sinon:
La solution la plus simple et la plus efficace: marquer le PNJ comme "plot", l'inconvénient majeur "weapon ineffective".
Si cela ne te convient pas:
Pour une part les changements de réputation sont automatiques, j'ai lu le contraire ici ou là, mais je ne vois pas d'autre explication à certains des tests que j'ai menés pour comprendre le moteur de combat. Ce qui va t'arriver dans le meilleur des cas, si je ne trompe, c'est que le personnage va pouvoir taper le PNJ autant qu'il le veut, mais que dès qu'il va s'arrêter et s'éloigner, le PNJ va devenir hostile (si ce n'est déjà fait, ce point étant assez incompréhensible) et bénéficier d'une attaque d'opportunité, ceci lance ActionAttack, donc il ne s'arrêtera pas là.
Une solution? Et bien, je ne suis pas sûr, le problème pourrait être plus compliqué qu'il n'en a l'air. A cause notamment de cette histoire d'attaque d'opportunité et de la persistance -très relative mais ça pourrait créer des effets étranges- du mode combat (sûr ce dernier point la réputation du PJ ne change rien).
Ce conseil vaut de toute façon:
Crée une faction spécifique au PNJ, ou au moins vérifie qu'il n'y aie personne de la même faction dans l"area" et enlève l'effet global de la faction.
Si tu peux l'utiliser à un moment ou à un autre, SurrenderToEnemy devrait te simplifier la vie (je ne l'ai jamais utilisé jusqu'à présent mais ça a l'air adapté à ce genre de cas).
Par Azrael07 le 3/9/2002 à 21:48:37 (#2090602)
Par Kemay le 3/9/2002 à 21:52:55 (#2090637)
Si ça marche tant mieux, je veux bien que tu nous tiennes au courant car cela voudrait dire que j'ai planté mes tests quelque part.
Dans la première zone du prélude de la campagne officiel, le NPC Bim (peut être l'autre aussi je n'ai pas testé) ne répondent pas aux attaques et ne deviennent pas hostiles. Par contre il faut enlever TOUS les scripts par défaut, pas seulement ceux de onPhysicalAttacked et onDamaged. Il vaut mieux, effectivement, que le NPC ait une faction unique et impérativement qu'elle soit de 50 ou+ avec toutes les autres factions.
Par LeProctophantasmiste le 3/9/2002 à 22:01:30 (#2090699)
Kemay: oui mais si je me souviens bien ils sont marqués comme "plot" -"weapon ineffective- ça évite que le mode combat ne se mette en route je crois.
EDIT: l
"ça évite que le mode combat ne se mette en route je crois."
Le mode combat et le changement automatique de réputation car en fait les deux sont indépendants, on peut faire attaquer un PNJ sans pour cela qu'il ne devienne hostile, à condition bien sur que le joueur ne réplique pas.
Par Kemay le 3/9/2002 à 22:21:30 (#2090806)
Voila j'aimerais que lorsqu'on frappe le perso on va dire heuuu Marcel, il réponde "ouais pas mal, continue" mais sans attaquer
Je me permets de rappeler la question à laquelle nous répondons ;) Le problème n'est pas que le NPC soit hostile ou non mais bien qu'il ne réponde pas aux attaques. Si en plus tu veux vrament qu'il reste neutre, pendant les quelques secondes où il se fait meuler la tête sans répondre, il faut effectivement le rendre "plot", mais honnêtement je vois pas trop l'intérêt.
Par LeProctophantasmiste le 3/9/2002 à 22:33:08 (#2090869)
Je me permets de rappeler la question à laquelle nous répondons
Oui bon ça va! :)
Ok j'aurais du tester l'OnCombatRoundEnd, ça m'était venu à l'esprit mais j'attendais le feedback comme un fainéant.
Ceci dit, il peut encore y avoir des bugs à mon avis, je vais tester:
le problème c'est les attaques d'opportunité si le PJ s'en va à un moment mal choisi, il est possible que cela déclanche une ...
Par LeProctophantasmiste le 3/9/2002 à 22:51:03 (#2090986)
Kemay test avec un PJ désarmé (et qui n'a pas Improved Unarmed Combat) ou qui utilise un arc, un sort..., en mélee. Je pense que tu verra le pbm que je mentionnais.
Mais bon, dans les autres cas d'attaque d'opportunité ça à l'air de marcher.
EDIT: ben non finalement je me suis tapé le bug avec un moine...
Par Kemay le 3/9/2002 à 23:05:11 (#2091096)
Cela dit, il suffit de faire un ClearAllActions en même temps que le retour à une faction neutre. Ca n'empêche pas l'attack of opprtunity elle-même, mais au moins il arrête de te courrir après.
En tout cas ça sent le bug à plein nez... Cool ça faisait bien deux jours que j'avais pas posté à Infogramme un report de bug *cheers*
Par LeProctophantasmiste le 3/9/2002 à 23:16:03 (#2091172)
Par Kemay le 3/9/2002 à 23:28:06 (#2091235)
Par Kemay le 4/9/2002 à 0:01:52 (#2091345)
Brenon Holmes, Programmeur chez Bioware:
Attacks Of Opportunity: AoO's are a bit tricky. In 3Ed since everything's turn based you have a nice little interlude in the round (when the AoO is triggered) where you can "do" the AoO, resolve it and everyone's happy. In NWN we end up scheduling the AoO for the first available slot in the personal combat round of that creature. What does that mean? Sometimes AoO's (depending on when they're scheduled) can be delayed by up to 1.25 seconds.
As for why you might be seeing more that one? I'm pretty sure you're not getting more than one... are you absolutely certain that the combat feedback lists every attack as being an AoO? They should be Prepended with the "Attack Of Opportunity : " string... If it does then there's definetly an issue and I will look into it.
To explain what might be occuring, when you take an AoO, it actually counts as a hostile action towards the target creature and starts up a regular combat round... beginning with the AoO... so if you have 3 attacks per round, you'd take the AoO and then your 3 regular attacks.
As for triggering AoO's if the creature is not currently "in combat" a state which is maintained on the creature by a timer which lapses after 8 seconds, or cannot see the target (it's invisible) or a number of other things... (I don't have code in front of me right now) the AoO will not trigger.
Par LeProctophantasmiste le 4/9/2002 à 17:38:18 (#2095774)
je ne suis pas sûr que ce soit du Action Attack,et ce qui me fait penser que c'est un bug, c'est qu'un PC peut faire une attack of opportunity sans déclencher ses attaques normales.
Alors tu as probablement raison. Je ne sais pas trop pourquoi je trouvais ça normal de toute façon :).
Merci pour le post.
Si tu as trouvé la suite, je suis intéressé... Peut être dans un autre sujet? Je me rend bien compte que je ne suis pas très bien placé pour dire ça :D .
JOL Archives 1.0.1
@ JOL / JeuxOnLine