XaiAC
XaiAC is a client-side fabric anticheat mod that can be used as an alternative or in addition to a server-side anticheat.
When installed on the server, players are forced to install the client mod. Upon joining a server, the client receives the config and sends any flags back to the server.
Packets are encrypted and a native library (.dll, .dylib, .so) that is loaded into the clients JVM is used to decrypt, adding a security layer and also allowing for more checks.
XaiAC is able to check for:
Mods
Texture-packs
Mod-hashes
Texture-pack-hashes
Cheat-dlls
Injection Clients (Doomsday, VapeV4...)
Setup
To create a config file of your modpack, i recommend using the config-generator mod. Just run it with all wanted (whitelisted) mods and texture packs. With hashes, players are forced to download your modpack exactly (some cheats are added directly into a existing mod).
Then, start your server with the server mod / plugin, replace the xaiacserver.json in config/ with your own, run /xaiac config load, and you are ready to go.
For information on admin commands, check server-side GitHub
Security
No client-side anticheat is perfect. XaiAC uses encrypted packets that can only be decrypted by the native library. There are multiple defenses to stop cheaters from cracking XaiAC, but i still recommend using an additional server-side anticheat like GrimAC or an active staff team.
Extra notes etc.
I got tired of my traps being freecammed, this mod is not a final solution to minecraft cheating but i hope it can be a stepping stone for more advanced minecraft client-side anticheats.
Whitelist mode is recommended for mods (with or without hashes)
I am using 2 different Licenses for the server and client. The client-side mod is protected by a custom license: License
(It contains key material that would make bypassing it easier)
Current version is only 1.21.11, i am working on full 1.21-1.21.11 support, then updating to newer versions. I can add older versions if requested.
