maecry / asphyxia-cs2

open-source game hack/base/template for Counter-Strike 2 (somewhat of low-quality maybe as I don't care)
https://www.unknowncheats.me/forum/counter-strike-2-releases/605507-asphyxia-cs2-internal-base.html#post3881474
MIT License
115 stars 29 forks source link

CUserCMD issues on the latest update #80

Open elgato69 opened 1 month ago

elgato69 commented 1 month ago

Describe the bug Joining the game with the cheat injected and any modifications to CUserCMD will result in a kick with the following error "Failed to parse user commands"

To Reproduce Enable a feature that modifies CUserCMD such as bhop and go in game

Expected behavior It should not kick you out of the game eksdee

Additional context Problem is definitely related to modifying CUserCMD. Perhaps valvo added some kind of CRC to check for modifications before executing the CMD, but I am not proficient enough with assembly and reversing to fix it myself so in other words please fix it pookie xoxo

Exlodium commented 1 month ago

Issue can be resolved by adding the correct amount of cached bits, this is not difficult to do. However it takes a bit of time. I'll write some functions to make the process easier

elgato69 commented 1 month ago

Can you explain to me the process as high level steps? I'm not asking for code but rather resources and guidance to learn how to fix it and other errors like this by myself in the future.

Exlodium commented 1 month ago

Pushed an update that might have fixed it. Didn't have much time to test, but wasn't able to get kicked while testing. Leaving this open incase the issue isn't fixed

nildotdev commented 1 month ago

Got kicked after your update, but it definitely happens less now. Not sure what caused it, and I can't really replicate it either. weird

Exlodium commented 1 month ago

Have you added any additional code or is it happening with the main branch of asphyxia?

nildotdev commented 1 month ago

Main branch

Exlodium commented 1 month ago

I might have to rewrite the function. In protobufs the game adds _has_bits whenever it wants to set forward move or smth.