paliers non vérouillés

Répondre
Partager Rechercher
Bonjour,

On m' a conseillé de faire appel à vos lumières pour un problème de perte de lvl peu après un up (les paliers ne sont pas vérouillés et le staff du serveur ne sait pas comment résoudre ce soucis).

En conséquence, je vous serais reconnaissant de m' indiquer la marche a suivre pour la leur transmettre.

Par avance merci
Il serait bien que vos scripteur viennent parler ici pour qu'on en sache un peu plus.

Théoriquement vous avez un script qui se déclenche lors de la mort du personnage (évènement module). Il faut simplement placer le test dans ce script pour éviter au personnage de perdre trop d'xp.

Par exemple:
Code PHP:

// Renvoie l'xp nécessaire pour être de niveau lvl
int GetXpForLevel(int lvl)
{
   return ((((
lvl 1) * lvl) / 2) * 1000);
}
// Renvoie le niveau de o (ECL inclus)
int GetECL(object o)
{
   return 
GetHitDice(o) + Get2DAInt("racialsubtypes""ECL"GetSubRace(o));
}

// Code exécuté lors de la mort d'un personnage
void main()
{
   
// Récupération du personnage mort
   
object o GetLastPlayerDied();
   if (!
GetIsObjectValid(o))
      return;

   
// L'xp qu'il lui faut pour le niveau actuel (ECL inclus)
   
int lvlXP GetXpForLevel(GetECL(o));
   
// La pénalité en xp (ceci devrait déjà être présent dans votre code) est de 500
   // L'xp qu'il aura après la pénalité est donc de son xp - 500
   
int postXP GetXP(o) - 500;

   
// On affecte au personnage l'expérience post pénalité
   // Si ça le fait tomber en-dessous de l'xp nécessaire au niveau actuel (lvlXP)
   //  alors on le fait tomber jusqu'à cet xp
   
SetXP(o, (postXP lvlXP) ? lvlXP postXP);

Voilà, il ne vous reste plus qu'à trouver votre script de mort. La fonction GetECL n'est pas forcément juste, cela dépend de votre module.

P.S. Je ne suis pas certain que la fonction Get2DAInt existe, je l'ai vue récemment cependant. Si ça ne compile pas tu peux remplacer par StringToInt(Get2DAString(...))
Merci beaucoup,

Je transmet ces informations et vais donc inviter nos scripteurs a venir vous apporter des informations supplémentaires ; au cas où le problème ne pourrait être résolut ainsi.

Je crois que seules certaines races seraient concernées, mais je vais encourager nos scripteurs de ce pas pour que vous ayez toutes les données nécessaires.
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés