Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dupli avec la récupération via le profil #46

Open
haeiven opened this issue Jan 26, 2020 · 36 comments
Open

Dupli avec la récupération via le profil #46

haeiven opened this issue Jan 26, 2020 · 36 comments

Comments

@haeiven
Copy link

haeiven commented Jan 26, 2020

Bonjour,

Il est possible de dupliquer ses récompenses en les récupérant depuis le profil.
Je m'explique, un joueur ayant 140 récompenses en attente peut en récupérer le double voir le triple. Si celui-ci lag et qu'il spam le bouton, ses récompenses de double, se triple, voir plus. Et le message en jeu s'affiche aussi 3 fois.

Cordialement,

@nivcoo
Copy link
Member

nivcoo commented Feb 6, 2020

Je le sais j'ai jamais su le regler @Eywek une idée ? On peut peut être aussi par requete je sais pas

@MaximeMichaud

This comment has been minimized.

@haeiven
Copy link
Author

haeiven commented Feb 22, 2020

Ils arrivent à dupliquer en se connectant à plusieurs sur le même compte et en cliquant en même temps aussi.

@MaximeMichaud
Copy link
Member

MaximeMichaud commented Feb 23, 2020

Peut-être, voir une solution côté serveur pour le moment ?
Et même si le problème est connu depuis longtemps, je suis surpris que personne d'autre ne le signale.
Pour la mise en place d'une correction, une vidéo reproduisant le problème serait déjà bien.
Car, là, tu as testé par toi-même ou c'est selon tes joueurs ?

@haeiven
Copy link
Author

haeiven commented Feb 23, 2020

Testé par moi même, et selon les joueurs aussi.

La technique est relativement peu connue. Et pas beaucoup de gros serveurs ont update leur CMS avec cette fonctionnalité.

Pour reproduire, il faut avoir quand même quelques votes, genre plus de 50, tu fait connecter 3/4 personnes sur le compte, et tout le monde spam de clique en même temps, ça fait recevoir 3/4x plus de récompenses IG. Je pense que c'est parce que le give des objets de vote IG se fait un par un, à chaque nouvelle récompense que ça donne, ça check si le joueur est online aussi, ce qui créé de la latence entre chaque give d'item je pense, donc ça augmente les chances d'arriver à dupli.

@nivcoo
Copy link
Member

nivcoo commented Feb 23, 2020

Hum la piste de tester si le joueur est pas co ça peut être ça

@haeiven
Copy link
Author

haeiven commented Feb 23, 2020

Sinon on peut temporairement repasser à l'autre méthode? C'est à dire récupérer les récompenses une par une ? Le temps de trouver un fix.

@nivcoo
Copy link
Member

nivcoo commented Feb 23, 2020

Ça change pas le bug

@haeiven
Copy link
Author

haeiven commented Feb 23, 2020

Je n'avais pas ce soucis là quand la récupération des votes était un par un. C'est beaucoup plus compliqué de dupliquer les récompenses quand tu as qu'une seule commande qui se lance sur le serveur plutôt que des centaines.

@MaximeMichaud
Copy link
Member

MaximeMichaud commented Feb 24, 2020

Tu peux toujours utiliser une ancienne version du plugin même si ce n'est pas recommandé.

Hum la piste de tester si le joueur est pas co ça peut être ça

Faudrait check. Voir si avec/sans cela empêcherai le problème.

@Eywek
Copy link
Member

Eywek commented Feb 26, 2020

Limite faudrait update dès qu'on find (https://github.com/MineWeb/Plugin-Vote/blob/master/Controller/VoteController.php#L257) et remettre en collected = 0 si jamais on fail

@nivcoo
Copy link
Member

nivcoo commented Feb 26, 2020 via email

@Eywek
Copy link
Member

Eywek commented Feb 26, 2020

T'avais testé comment?

@nivcoo
Copy link
Member

nivcoo commented Feb 26, 2020

J'avais testé sans le update all donc que sa save 1 par par un, j'ai testé avec le update all juste après le find aussi

@nivcoo
Copy link
Member

nivcoo commented Feb 26, 2020

Et dans tout les cas on peut en lançant la fonction en même temps

@Eywek
Copy link
Member

Eywek commented Feb 26, 2020

Oui mais je parlais plutôt de faire un update + find en même temps justement, faut voir mais je pense que quand on update, mysql nous retourne les id update et on peut faire une erreur si on a rien update ou find ceux qu'on a update pour les traiter

@nivcoo
Copy link
Member

nivcoo commented Feb 26, 2020

C'est possible que mysql retourne ceux qui n'ont pas été update

@nivcoo
Copy link
Member

nivcoo commented Feb 26, 2020

Via requete SQL il faudrai en même temps update mais dans tout les cas si on lance en même temps le find se fera avant la modif

@Eywek
Copy link
Member

Eywek commented Feb 26, 2020

C'est pour ça que je parle d'update avant de find

@nivcoo
Copy link
Member

nivcoo commented Feb 26, 2020

Si tu update avant ton find donnera rien

@nivcoo
Copy link
Member

nivcoo commented Feb 26, 2020

Ah tu veux que le update te retourne la liste qu'il a update comme ca tu utilise ca

@nivcoo
Copy link
Member

nivcoo commented Feb 26, 2020

Et il retourne juste un boolean

@Eywek
Copy link
Member

Eywek commented Feb 26, 2020

Faut voir pour faire une transaction sinon

@nivcoo
Copy link
Member

nivcoo commented Feb 26, 2020

Alors on peut recup le nombre de lignes modif, donc regler le soucis sauf que dans le système actuel ca updateAll quand c'est bon alors je vais updateAll au début verif les lignes modifs et a la fin si il y a des erreurs

@nivcoo
Copy link
Member

nivcoo commented Feb 26, 2020

#50

@Eywek
Copy link
Member

Eywek commented Feb 26, 2020

ca devrait etre corrige du coup

@nivcoo
Copy link
Member

nivcoo commented Feb 26, 2020

C'est même sur mais faudra que je test avec bcp de vote car la je verifie si le nombre de requete du updateAll = 0 pour savoir si ca a deja était update mais je ne sais pas si avec 300 votes par exemple le nombre de requête peut être de 3 par exemple genre que ca se mixe avec l'ancienne ou jsp, par logique sql fais une requête a la fois mais bon

@haeiven
Copy link
Author

haeiven commented Feb 27, 2020

La dernière update empêche de récup les votes, quand on clique, ça reload et rien ne se passe :/

@nivcoo
Copy link
Member

nivcoo commented Feb 27, 2020

Ca te mets aucun message ? Ni en jeu ?

@nivcoo
Copy link
Member

nivcoo commented Feb 27, 2020

C'est très bizarre car je l'utilise actuellement

@haeiven
Copy link
Author

haeiven commented Feb 28, 2020

aucun message et rien en jeu

@nivcoo
Copy link
Member

nivcoo commented Feb 28, 2020

J'ai oublié de répondre avant, tu es dispo pour des tests ?

@nivcoo
Copy link
Member

nivcoo commented Feb 28, 2020

#51 Tu as juste a update ton plugin et se sera bon

@haeiven
Copy link
Author

haeiven commented Feb 29, 2020

J'ai des joueurs qui se plaignent de ne pas recevoir l'intégralité des récompenses de vote :/

Sur 94 récompenses, seules une cinquantaine ont été donnés.

@nivcoo
Copy link
Member

nivcoo commented Feb 29, 2020

Il n’y a pas de raison

@nivcoo
Copy link
Member

nivcoo commented Feb 29, 2020

Et si l’erreur est perçu ça lui redonne les votes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

4 participants