FAQ
Common questions, honest answers.
Is Aegis unbreakable?
No. No obfuscator is unbreakable, and we will never claim otherwise. Aegis raises the barrier with a custom VM, encrypted strings, control-flow flattening, name scrambling and (optionally) server-side key delivery. A determined attacker with a custom Lua engine can still trace the VM at runtime. Aegis is a deterrent that makes analysis hours instead of minutes — not a security boundary. Keep real secrets server-side.
Which mode should I use?
Source mode for maximum compatibility and speed. VM mode for the strongest offline protection. ServerShield when you want the decryption key to stay on our servers and bind your file to a license (e.g. sv_licenseKey). A common pattern: ServerShield + VM for the sensitive core, source mode for the rest.
Does ServerShield need internet at runtime?
Yes, once at startup: the protected file fetches its key from our server before running. FiveM uses PerformHttpRequest, Roblox uses HttpService. After the initial fetch no further network traffic is required.
Which Lua versions are supported?
Roblox Luau and FiveM (Lua 5.4). The output of source mode is portable Lua; VM mode requires Lua 5.4-style bitwise operators and integer division, which both Luau and FiveM provide.
Can I re-download an old encryption?
Yes. The dashboard keeps your last 50 encryptions, including the full protected output. Re-downloading from history does not cost new tokens.
What happens when I run out of tokens?
Encryption returns 402 and the dashboard shows the missing amount. Buy a plan or redeem a key to top up. Tokens already granted never expire; only your plan does.
Why is my protected code slower?
Obfuscation adds runtime work — especially VM mode. Mark per-frame rendering, UI code and hot loops with AEG_NO_VIRTUALIZE / AEG_NO_OBFUSCATE and follow the performance guide to keep things fast.
Are the AEG_* macros required?
No — everything is protected by default. Macros are optional markers for fine-grained control. The runtime stubs make them safe no-ops in your development environment.