TrinityCore / TrinityCoreCustomChanges

TrinityCore 3.3.5a custom patches, read wiki to get diffs
https://github.com/TrinityCore/TrinityCoreCustomChanges/wiki
GNU General Public License v2.0
68 stars 60 forks source link

3.3.5-passive_anticheat crash worldserver if jail is enabled #124

Open CraftedRO opened 7 months ago

CraftedRO commented 7 months ago

Description:

Seems like passive_anticheat sometimes crash worldserver if jail is enabled

Current behaviour:

Crashlog https://gist.github.com/CraftedRO/a3e408b284d5262f32e29d4370472572

Config used: https://gist.github.com/CraftedRO/86321daa3521ba7f4c88ede8986eae38

Expected behaviour:

Not crash when jail feature is enabled and triggered.

Steps to reproduce the problem:

  1. use above anticheat configs
  2. trigger jail by using some hacks
  3. notice

Branch(es):

3.3.5

TC rev. hash/commit:

TrinityCore rev. a1eec3d75279+ 2023-11-13 01:10:01 +0000 (3.3.5-passive_anticheat branch) (Win64, RelWithDebInfo, Static) (authserver)

TDB version: 335.23061 + updates

Operating system: Windows 11 x64

jackpoz commented 6 months ago

is it 100% reproducible ? could you please post a crashlog building in Debug ?

CraftedRO commented 6 months ago

TrinityCore rev. 3c09e1f2957c+ 2024-01-03 17:31:07 +0100 (3.3.5-passive_anticheat branch) (Win64, Debug, Static) (worldserver-daemon) yes is 100% reprodictible on gm account level for now, this is the crashlog in deb, I remember I used to reproduce it on normal account too but I'll try more Crashes.zip

On normal account it seems it show only this warning in worldserver log:

Received unexpected opcode [MSG_MOVE_WORLDPORT_ACK 0x00DC (220)] Status: STATUS_TRANSFER Reason: the player is still in world from [Player: Druidtest GUID Full: 0x000000000000000c Type: Player Low: 12, Account: 2]

acidmanifesto commented 6 months ago

From what location is the jailing being done? Can u give me a .gps before the jail cmd/automod function is done on the player?

CraftedRO commented 6 months ago

TrinityCore rev. 13c184d7dba0+ 2024-01-06 15:43:19 +0100 (3.3.5-passive_anticheat branch) (Win64, Debug, Static) (worldserver-daemon) fly + speed near center in Dalaran

latest anticheat log position row: Cheat Flagged at: .go xyz 5734.308105 624.503296 653.676880 571 1.689492

latest saved position from character database: x:5803.41 y:567.263 z:655.646 orientation: 3.02941 MAP:571

E:\TrinityCoreCustomChanges\src\server\game\Entities\Object\GridObject.h:15 in GridObject<class Player>::RemoveFromGrid ASSERTION FAILED:
  IsInGrid()

Crashes new.zip

acidmanifesto commented 6 months ago

TrinityCore rev. 13c184d7dba0+ 2024-01-06 15:43:19 +0100 (3.3.5-passive_anticheat branch) (Win64, Debug, Static) (worldserver-daemon) fly + speed near center in Dalaran

latest anticheat log position row: Cheat Flagged at: .go xyz 5734.308105 624.503296 653.676880 571 1.689492

latest saved position from character database: x:5803.41 y:567.263 z:655.646 orientation: 3.02941 MAP:571

E:\TrinityCoreCustomChanges\src\server\game\Entities\Object\GridObject.h:15 in GridObject<class Player>::RemoveFromGrid ASSERTION FAILED:
  IsInGrid()

Crashes new.zip

Thank you. I will check it out the next couple of days

acidmanifesto commented 6 months ago

So i can not get a crash with the gm cmd of anticheat jail which does the same thing as the auto moderation: https://cdn.discordapp.com/attachments/804415659827396618/1193982513127891074/World_of_Warcraft_2024-01-08_13-19-01.mp4

With the automoderation and using speed hack i do not get a crash as well: https://cdn.discordapp.com/attachments/804415659827396618/1193984186948800592/World_of_Warcraft_2024-01-08_13-26-01.mp4

so at this point i need to know if there are any other factors such as other "modules" or custom changes being involved? I really do not want to discount this crash however as i have gotten it once over 5 months ago but only once and have not been able to replicate it.

jackpoz commented 6 months ago

MapUpdate.Threads setting might be related too

acidmanifesto commented 6 months ago

What is your map.threading set to? Jackpoz gone over with me and i did a few tests on my end

image-150.png

When set to 1 i had no issue. When set to 2 i had no issues but did get a world port error on the console. When set to 3 or higher i the assert.

CraftedRO commented 6 months ago

https://youtu.be/FrVtyG1UrOQ

MapUpdate.Threads = 1 Default

only passive anticheat module clean branch used, might worth mentioning I used .reload config this time

acidmanifesto commented 6 months ago

https://youtu.be/FrVtyG1UrOQ

MapUpdate.Threads = 1 Default

only passive anticheat module clean branch used, might worth mentioning I used .reload config this time

Using .reload configas well now and my resukts are still the same unfortunately.

jackpoz commented 6 months ago

Not sure if .reload config matters for MapUpdate.Threads, a full restart might be needed. In any case, the issue should be fixed no matter what number of MapUpdate.Threads is set :P

acidmanifesto commented 6 months ago

Not sure if .reload config matters for MapUpdate.Threads, a full restart might be needed. In any case, the issue should be fixed no matter what number of MapUpdate.Threads is set :P

no it doesnt. but the reload config was more in regards to the anticheat settings.

acidmanifesto commented 4 months ago

Just came back from overseas. I will resume looking into this matter this week.

CraftedRO commented 4 months ago

Crashes.zip

CraftedRO commented 4 months ago

Let me bring some more light about how to reproduce this: try to set first time when server start configs as following: make sure you have gm off Anticheat.EnabledOnGmAccounts = 1 Anticheat.JailPlayer = 0 Anticheat.ReportsForJail = 17

use .gm fly on then .modify speed 5

now go into configs again and change Anticheat.JailPlayer = 1

go back ingame and write .reload config

then trigger jail (by moving)

most likely you are see live crash