Pnj En Fuite
#1
Posté 07 juillet 2007 - 00:12
J'en arrive à ma toute dernière question. Je les avais regroupées, d'où le "flood" de questions ces temps ci... Après je me calme !
Bon, cette fois, je veux mettre des PNJs en fuite. Je pensais que la valeur Flee d'AI me suffirait. Je mets donc Flee à 100, le reste à 0. Mon souci, c'est que le PNJ est de base neutre (alors que j'aimerais qu'il fuie à notre approche), et si je tape dessus... il se défend !
Est ce que c'est impossible d'animer un PNJ en fuite à notre approche (je ne vois pas de commande directe), avec du genre un GetDistance Player et un petit script..? Ou est ce que je rêve et que je pourrais pas faire ça ? Sinon, peut être un truc qui s'en approche.
#2
Posté 07 juillet 2007 - 13:24
Souris Cornue, le 07.07.2007 à 00:12, dit :
J'en arrive à ma toute dernière question. Je les avais regroupées, d'où le "flood" de questions ces temps ci... Après je me calme !
Bon, cette fois, je veux mettre des PNJs en fuite. Je pensais que la valeur Flee d'AI me suffirait. Je mets donc Flee à 100, le reste à 0. Mon souci, c'est que le PNJ est de base neutre (alors que j'aimerais qu'il fuie à notre approche), et si je tape dessus... il se défend !
Est ce que c'est impossible d'animer un PNJ en fuite à notre approche (je ne vois pas de commande directe), avec du genre un GetDistance Player et un petit script..? Ou est ce que je rêve et que je pourrais pas faire ça ? Sinon, peut être un truc qui s'en approche.
Je suis plus tout à fait sur mais il me semble que pour les cerfs entre autre l'astuce consiste à mettre leur agressivité ainsi que leur flee à 100 de cette manière tu a l'impression qu'il fuie direct sans qu'il s ne t'attaquent vraiment. à vérifier sur un cerfs dans le tesc...
#3
Posté 07 juillet 2007 - 13:47
Merci en tous cas, je vais tester ça.
#4
Posté 08 juillet 2007 - 15:44
(+'.'+) Copie et colle le lapin dans ta signature pour l'aider a envahir le monde
#5
Posté 08 juillet 2007 - 15:46
#6
Posté 08 juillet 2007 - 16:02
Ne peux-tu pas simuler la fuite en les faisant se déplacer vers une autre cell ou un truck du genre ?
Je n'y connais rien, strictement rien en AI, mais personnellement j'aurais essayé de procéder comme ça.
PS :
#7
Posté 08 juillet 2007 - 16:07
Mais faudrait les forcer à courir, ceci dit je crois que la commande existe pour ça.
Edit : Oui, ForceRun.
Je vais faire comme ça sûrement, même si ça va être problématique au niveau des collisions, ou alors de la fin du Travel (c'est en intérieur, donc limité).
Modifié par Souris Cornue, 08 juillet 2007 - 16:10.
#8
Posté 01 septembre 2007 - 10:19
Arkhiel, le 08.07.2007 à 15:44, dit :
Coaching de PNJs chez Morrowind Renaissance
#9
Posté 02 septembre 2007 - 09:25
Si ça peut aider, voilà le script que j'utilise pour faire fuir des PNJ quand le joueur passe prés d'eux. Je le déclenche à l'aide du résultat d'un "Hello".
begin COG_SKIPPU_fuite float timer short doonce short monfight short monflee if ( menumode ) return endif if ( doonce == 0 ) set monfight to getfight set monflee to getflee setflee 100 setfight 100 set doonce to 1 return endif if ( doonce == 1 ) set timer to timer + getsecondspassed if ( timer >= 3 ) stopcombat setflee monflee setfight monfight set doonce to 0 set timer to 0 stopscript COG_SKIPPU_fuite endif endif end COG_SKIPPU_fuiteL'intérêt est qu'il marche avec tous les PNJ du jeu, sans les modifier. Par contre il a un bug que je n'ai pas encore résolu : dans certains cas, les PNJ attaquent avec des sorts à distance au lieu de s'enfuir.
Cogite
Tout droit vers le non-linéaire !
It's not the engine, it's the writing.
HERMA MORA ALTADOON AE
#10
Posté 02 septembre 2007 - 09:54
Cogite Stibon, le 02.09.2007 à 09:25, dit :
Si ça peut aider, voilà le script que j'utilise pour faire fuir des PNJ quand le joueur passe prés d'eux. Je le déclenche à l'aide du résultat d'un "Hello".
Bonjour,
Habile On oublie trop souvent les possibilités infinies qu'offrent les results de "voice"...
Pas de probléme de stabilité (j'ai le vague souvenir de CDT en série un jour que j'essayais de bidouiller un script avec des setfight/setflee sur un PNJ ) ?
Pour le problème des sorts j'ai déjà vu ça aussi :
à essayer :
Mettre la Magicka à 0 en même temps que le setflee 100, setfight 100 (et la restaurer en même temps que le reste à l'expiration du timer bien entendu)
Autre petit probléme possible : si le joueur sauvegarde/recharge sa partie en cours d'exécution du script, le PNJ ne sera pas correctement restauré à l'expiration du timer (problème connu des "targeted scripts" qui perdent leur cible dans ces conditions)
Coaching de PNJs chez Morrowind Renaissance
0 utilisateur(s) li(sen)t ce sujet
0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)