Archives des forums MMO/MMORPG > Neverwinter Nights > NWN - Maskado > Annuler le Respawn et le Savegame ?
Annuler le Respawn et le Savegame ?
Par Zariel le 27/10/2002 à 23:16:51 (#2420405)
Pourrait-on mettre une script dans le OnPlayerDeath du module pour empecher cela ?
Merci.
Par Zariel le 28/10/2002 à 12:40:49 (#2423387)
J'ai pas envie de basculer mon module en HCR pour ces 2 ou 3 petites règles...;)
Par eMRaistlin le 28/10/2002 à 12:43:38 (#2423408)
Pourrait-on mettre une script dans le OnPlayerDeath du module pour empecher cela ?
Non : tu enleve simplement le Script des event du module OnPlayerRespawn. (tu le laisse a blanc : y devrait plus se passer grand chose, a la mort de tes PJ ^^)
Je te conseille toutefois d'attribuer un objet quelquonque sur tes pj mort, et de verifier sur le OnPlayerEnter que cet objet n'est pas dans son inventaire, paske sinon, il se deco/reco et revient en vie ...
Par Zariel le 28/10/2002 à 12:54:55 (#2423506)
Quel script mets tu dans le OnPlayerEnter pour que le joueur mort ne puisse pas revenir dans la partie ? Et quelle script met tu dans l'objet pouir faire correspondre tous ca ?
Par eMRaistlin le 28/10/2002 à 13:17:12 (#2423668)
Genre :
void main()
{
object oMort = GetItemPossessedBy(GetEnteringPC(),"Tag de l'objet que tu donne sur le OnPlayerDeath"));
if (GetIsObjectValid(oMort))
{
ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectDeath(),GetEnteringPC());
}
}
Par coolstar le 28/10/2002 à 13:22:55 (#2423730)
Heeuuu... Vraiment obligé d'avoir un Item ? chaque PJ n'a pas un Identifiant (genre Ref ?) permettant de le repérer et de définir son Statut (Mort , ou autre...) et donc les mesures à appliquer le cas échéant ?? :confus:
Par eMRaistlin le 28/10/2002 à 13:34:57 (#2423834)
Heeuuu... Vraiment obligé d'avoir un Item ? chaque PJ n'a pas un Identifiant (genre Ref ?) permettant de le repérer et de définir son Statut (Mort , ou autre...) et donc les mesures à appliquer le cas échéant ??
Si, mais si son serveur est down, (et comme les modules de NWN ne peuvent que rarement depasser plus de 72heures sans reload a cause des leaks...) et qu'il le re-up, alors le perso d'un joueur sera de nouveau disponible, car les-dites variables locales ne sont pas sauvées sur le perso, mais sur le serveur... Donc, si tu me met pas d'item, et que je viens avec un level 19 qui meurs : je patiente 2 jours, je reviens, et il est a nouveau la^^
Par coolstar le 28/10/2002 à 13:51:21 (#2423956)
Mais y'a pas moyen de conserver ces Données de façon permanente, juste avant rafaîchissement du Serveur... genre ?? :confus:
Par Zariel le 28/10/2002 à 14:11:20 (#2424128)
Résumons, le script que tu viens de donner attribue un objet au PJ dés qu'il crève, donc il le conserve à chaque connexion et ceci déclenche sa mort. C'est bien ça ?
Par eMRaistlin le 28/10/2002 à 14:41:44 (#2424386)
Ce script verifie si l'objet est present, et si oui, alors il tue le PJ.
Il te faut un script sur le OnPlayerDeath qui fasse ca :
void main()
{
object oPC= GetLastPlayerDied();
CreateItemOnObject("RESREF de l'objet cité plus haut",oPC,1);
}
Sinon, pour Coolstar : si, c'est possible, mais avec la solution du PWUM, c'est a dire une sortie des données sur Log, puis une insertion du log durant le loading... A chacun son choix...je prefere l'itemizer...
(mais bioware a promis de s'occuper des save de variables locals prochainement..)
Par Zariel le 28/10/2002 à 14:48:13 (#2424433)
void main()
{
object oMort = GetItemPossessedBy(GetEnteringPC(),"Tag de l'objet que tu donne sur le OnPlayerDeath"));
if (GetIsObjectValid(oMort))
{
ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectDeath(),GetEnteringPC());
}
}
et dans le OnPlayerDeath:
void main()
{
object oPC= GetLastPlayerDied();
CreateItemOnObject("RESREF de l'objet cité plus haut",oPC,1);
}
Ok, merci encore EmRaistling.
Par Zariel le 28/10/2002 à 21:35:29 (#2427729)
Par coolstar le 30/10/2002 à 4:30:02 (#2437467)
Merci... :merci:
Par eMRaistlin le 30/10/2002 à 7:35:35 (#2437647)
L'un utilise une sortie vers le log, afin de notifie les modification, puis retranscrit le log lors d'un nouveau loading du serveur.
L'autre utilise des items cachés sur les inventaires de creature des joueurs. (sisi, vous avez bien lu...)
2 systemes efficaces, mais un peu McGuyver quand meme... en attendant que Bioware nous en fasse un ^^
JOL Archives 1.0.1
@ JOL / JeuxOnLine