Closed Syandre closed 2 years ago
J'ai pu reproduire le bug avec d'autres missions sur l'alpha, et quelque chose me dit qu'il y a un conflit entre les 2 embeds des missions au niveau de l'XP: l'un ayant déjà fait monter de niveau, l'autre checkerait avec les mêmes données qu'avant le level up, et donc rajoute non seulement le bonus, mais aussi le montant initial d'avant la complétion des missions.
Update: c'est effectivement le conflit d'XP entre les embeds, à en voir d'autres tests réalisés par KirIcare, mais cette fois à partir du niveau 5. Par contre, ça ne fonctionne que si la quotidienne et la/les secondaire(s) sont complétées simultanément.
passé 1h + dessus avec pagos, je ne comprend pas ce truc j'ai clairmenet pas envie de bosser dessus.
c'est un peu le bazar la manière dont c'est fait, ya des players. save dans tous les sens on comprend pas pourquoi ils sont là... idem pr les get or register, ya rien de défini...
globalement ça mériterait un gros cleanup tout ça, mais perso I AM OUT.
@romain22222 si tu as le temps de te pencher dessus je pense que tu auras plus le courage que moi.
vu que le bug est quasiment impossible à reproduire ingame, je repousse de milestone.
Pour reproduire le bug, une méthode serait de:
Ok j'apporte plus de précision sur le bug, je pense que c'est n'importe quelle mission "earnMoney" qui fait bug le truc (du moins j'ai l'impression). Je pense que c'est dû à l'espèce de boucle que fait les missions. updatePlayerStats -> player.addMoney -> MissionsController.update -> MissionsController.checkCompletedMissions -> updatePlayerStats -> player.add... etc, etc, etc Et je pense que le bug se cache ici.
Ok j'apporte plus de précision sur le bug, je pense que c'est n'importe quelle mission "earnMoney" qui fait bug le truc (du moins j'ai l'impression). Je pense que c'est dû à l'espèce de boucle que fait les missions. updatePlayerStats -> player.addMoney -> MissionsController.update -> MissionsController.checkCompletedMissions -> updatePlayerStats -> player.add... etc, etc, etc Et je pense que le bug se cache ici.
Cependant ya la meme dans le add xp et la ya pas de soucis
@Nargacaura à priori @voltou91 a fix le truc mais si tu as le temps de faire un passage dessus sur draftbot alpha avant de fermer l'issue ça serait top !
C'est testé et approuvé :thumbsup:
Je retire ce que j'ai dit en fait, ça a influé sur l'XP sur d'autres missions en faisant monter 2 fois de niveau x)
Ça a juste dupliqué le message de lvl up, t'es pas monté deux fois.
Fais le calcul: il me restait 6 points avant la montée de niveau. J'ai gagné 150 avec l'issue de l'event + 50 de la mission travelHours + 75 de la mission earnXP. Je devrais avoir 269 XP (150+75+50-6). Sauf que je n'ai que 194 après avoir fait l'event x)
C'est comme si la mission a 75 d'exp n'avait pas compté, si tu enlève 75 on a bien ton nombre d'exp, et ça expliquerai pourquoi y a eu une double notif de lvl up, car il a pas save les +75 d'exp et le lvl up.
ok c'est mergé sur develop @Nargacaura si tu as le temps de refaire une session de test ça serait tooooop :)
Ça m'a l'air bon, par contre à une occasion, y'a eu duplication de missions earnMoney validées (et enregistrées!) alors que j'en n'avais qu'une...
Peut-être que c'est un différent bug, dunno. (J'ai pas testé ce bug-là en détail vu que je testais le bugfix à la base, tho) ┐(‘~`;)┌
Update: ça le fait sur earnMoney en tant que secondaire lorsqu'elle est validée en même temps qu'une autre mission secondaire lors d'une montée de niveau.
Je pense que c'est un bug causé par le fix donc je laisse l'issue ouverte le temps que ça soit corrigé
Moi je pense que c'est parce que j'ai fix la partie player en enlevant le GetOrRegister mais on fait la même chose sur le mission controler (on get les missions) et du coup faudrait retourner le mission controler comme avec le Player, quasi sûr que c ça le bug.
semble fix (enfin) , à réouvrir si on trouve un truc mdr
Description du bug.
Après une prise de niveau (105 vers 106), la valeur d'expérience n'est pas retombée à zéro et semble être restée à la valeur maximum requise du niveau précédent (ou bien à vérifier).
Date et heure du rapport / gain de niveau : 8 janvier 2023 à 05h48. Lieu / event : Lac mirage, livraison du colis.
Détails supplémentaires :
Selon vous, quelle est l'importance de ce bug ?
🤔 Je ne sais pas
Reproduction du bug.
1 - Aucune idée. 2 - Essayer de passer de 105 à 106 (ou tout autre niveau ?) en terminant des missions en même temps ?
Captures d'écran
Sur quel shard avez vous rencontré le bug ?
Shard 0