cathook
cathook copied to clipboard
Remove references to other games. Optimizations, fixes and some new features
Removed references to other games, changed if to switch case where needed, added a few new features, relocated bunnyhop code and renamed it auto jump Removed Ignore Hoovy and Explosion Circles
Reposted from last PR:
There are so many changes here that this really should have been split up by individual commits to make it a lot easier to review, debug, and test this. This just adds lots of difficulty here. This is something that is going to need a lot of user testing.
Only things I've really noticed are the compiler options here.
Why are you removing -march=native
? And using -O3
?
There's no reason to force -mavx2
. -march=native
will automatically detect if a preset processor's CPU type if it supports AVX2 and optimise any code that uses AVX2. Especially since there are CPU specific optimisations out there and other quirks.
O3 isn't recommended unless carefully tested because it can cause compiler build issues, performance regressions such as excessive loop unrolling, or too much code being generated and making very large or bloated binaries; also causing a performance regression. This also makes debugging unnecessarily more difficult because it can be difficult to determine if a bug is from bad code, compiling with O3 in general, or code incompatible with O3. There have been plenty of cases where O3 results in reduced math computational speeds as well, something software like this heavily relies on. Cathook tries to support lots of hardware already.
-march=native
does not always correctly detect if a CPU supports the AVX2 instruction set or not. Yes, it is a rare occasion that I've only encountered a few times, but it is present. Every CPU made after 2013 supports the AVX2instruction set. Users with a CPU that does not support the AVX2 instruction set will need to edit CMakeLists.txt and change all the -mavx2
arguments to -march=native -mtune=native
. This information will need to be added to the README.md or to the wiki branch.
We have tested cathook with the -O3
argument for 2 days now on 3 different computers, and there was no downgrade. As the argument states, the resulted code was more optimized from what we were able to observe. We invite you to test this yourself, @Zanthed, and write a description of what you were able to observe. If anything seemed to perform better, worse or had no impact at all.
https://github.com/MistralDev/Mistral
yoinking unfinished code 😳
thats kinda sus
https://github.com/MistralDev/Mistral yoinking unfinished code 😳
![]()
thats kinda sus
Just a OutOfFovArrow.cpp
not working at all i guess