L2JMobius

Free Users => Solved/Invalid Bug Reports => Topic started by: secaolol on January 03, 2021, 07:50:32 PM

Title: Disconnect after receive dayle missions
Post by: secaolol on January 03, 2021, 07:50:32 PM
I receive disconect after click on receive dayle rewards! on missions Board!
IDK if is for all mission but i receive 3x
and on GS say:  Kicked PlayerInstance:Sage[268475541] for spamming RequestOneDayRewardReceive
Title: Re: Disconnect after receive dayle missions
Post by: AnsS on January 03, 2021, 08:10:38 PM
Which mission is it?

I'am currently working on daily missions (it does not happen to me), I would check this also.
Title: Re: Disconnect after receive dayle missions
Post by: secaolol on January 03, 2021, 08:53:15 PM
I make a kamael, kill mobs at lvl 6 and take first reward, (damage scroll from system mission) and disconnected
Title: Re: Disconnect after receive dayle missions
Post by: AnsS on January 03, 2021, 09:03:22 PM
I do not have that in The Kamael Classic version. Are you sure about your version?

https://uploaddeimagens.com.br/imagens/rs9Ct8M
Title: Re: Disconnect after receive dayle missions
Post by: secaolol on January 03, 2021, 09:10:38 PM
I do not have that in The Kamael Classic version. Are you sure about your version?

https://uploaddeimagens.com.br/imagens/rs9Ct8M

Yeah, on first receive i have disconnect, but i have the reward on bag
Title: Re: Disconnect after receive dayle missions
Post by: AnsS on January 03, 2021, 09:17:06 PM
Well, I did not have that daily mission is my version, but I checked this:

org.l2jmobius.gameserver.network.clientpackets.dailymission.RequestOneDayRewardReceive.java

Code: [Select]
if (player.hasRequest(RewardRequest.class))
{
LOGGER.warning("Kicked " + player + " for spamming " + getClass().getSimpleName());
Disconnection.of(player).defaultSequence(true);
return;
}

Code: [Select]
ThreadPool.schedule(() ->
{
player.removeRequest(RewardRequest.class);
}, 50);

I think if you press faster than 50ms then you get the kick, because your previous request not removed yet.
Title: Re: Disconnect after receive dayle missions
Post by: secaolol on January 03, 2021, 09:26:41 PM
Well, I did not have that daily mission is my version, but I checked this:

org.l2jmobius.gameserver.network.clientpackets.dailymission.RequestOneDayRewardReceive.java

Code: [Select]
if (player.hasRequest(RewardRequest.class))
{
LOGGER.warning("Kicked " + player + " for spamming " + getClass().getSimpleName());
Disconnection.of(player).defaultSequence(true);
return;
}

Code: [Select]
ThreadPool.schedule(() ->
{
player.removeRequest(RewardRequest.class);
}, 50);

I think if you press faster than 50ms then you get the kick, because your previous request not removed yet.

Maybe change to 200? i dont spamming i only send a first click and disconnected
Title: Re: Disconnect after receive dayle missions
Post by: AnsS on January 03, 2021, 09:33:48 PM
If you change it to 200, then your removeRequest will be delayed with 200ms, not 50ms.

My version looks like is not the same as yours, so sorry, I cannot help you in the proper fix.
Title: Re: Disconnect after receive dayle missions
Post by: Mobius on January 03, 2021, 10:16:51 PM
This is actually a protection against clickers.
Not a bug.