[DiscordArchive] what is the actual ban reason? That a result arrived twice? Or does it somehow corrupt other results
[DiscordArchive] what is the actual ban reason? That a result arrived twice? Or does it somehow corrupt other results
Archived author: Dedmen (∩`-´)⊃━☆゚.*・。゚ /\(O_O)/\ • Posted: 2023-11-21T16:11:58.402000+00:00
Original source
Are non instant checks resolved in the order that they are sent? Or random result order?
Archived author: Dedmen (∩`-´)⊃━☆゚.*・。゚ /\(O_O)/\ • Posted: 2023-11-21T16:12:11.236000+00:00
Original source
Does the server know which checks are currently in Progress?
Archived author: Anchy • Posted: 2023-11-21T16:12:18.049000+00:00
Original source
yes
Archived author: Anchy • Posted: 2023-11-21T16:12:48.871000+00:00
Original source
the server has a vector called CurrentChecks which is sent to the client and it waits for a response
Archived author: Dedmen (∩`-´)⊃━☆゚.*・。゚ /\(O_O)/\ • Posted: 2023-11-21T16:13:08.946000+00:00
Original source
And the in order bit?
I have an idea, I'll type it when I'm not on phone
Archived author: Anchy • Posted: 2023-11-21T16:13:28.832000+00:00
Original source
yeah they are in order afaik
Archived author: Dedmen (∩`-´)⊃━☆゚.*・。゚ /\(O_O)/\ • Posted: 2023-11-21T16:26:10.425000+00:00
Original source
Okey so.
Implement a mutex, while a instant payload is running, don't let other checks run.
When a instant payload is sent:
- "lock"
- Remember which checks were current in-flight
- Send a non-instant payload to "unlock"
While locked, no new checks can be sent, they are stored in a queue for later.
All check results are ignored while locked.
When then unlock arrives.
Re-send the checks that were running when the lock was started (because we couldn't use their results, but we want them to run anyway)
Send all the queued up checks.
If its not in-order, then the "unlock" will be that we received results for all the checks that were in-flight.
That is assuming client doesn't cache check results (which it shouldn't anyway because it doesn't know when a cheat gets injected, so pretty sure it won't be doing that)
Archived author: Dedmen (∩`-´)⊃━☆゚.*・。゚ /\(O_O)/\ • Posted: 2023-11-21T16:27:45.114000+00:00
Original source
> ok just skip the next one too then but no the client will also sometimes resend it minutes later corrupted again lol
Question about that.. I assume client doesn't just randomly re-send check results normally does it?
I assume the server has to send back an acknowledgement that it received the result, and if the client doesn't get the ACK it resends it. Maybe the way the result is skipped, also skipped sending the ACK and caused the client to resend?
Archived author: Anchy • Posted: 2023-11-21T16:28:18.728000+00:00
Original source
the client sometimes will send back corrupted results if you do normal warden checks after custom forced checks
Archived author: Dedmen (∩`-´)⊃━☆゚.*・。゚ /\(O_O)/\ • Posted: 2023-11-21T16:29:03.956000+00:00
Original source
Even for checks that were only started (long?) time after the instant payload had completed?