Panda Obfuscator is a Lua obfuscator written in pure Lua, based on Prometheus. It uses AST-based transformations including Control-Flow Flattening, Constant Encryption, VM virtualization, and hardened handler polymorphism.
Panda Obfuscator targets both Lua 5.1 and Roblox Luau and ships a Xenon-safe preset that avoids high-UNC APIs (debug.sethook, string.dump, hookfunction, getrawmetatable).
git clone https://github.com/Panda-Repositories/Prometheus-Modified.git
cd Prometheus-ModifiedRun the installer once — it downloads Lua 5.1.5 into .\bin\:
powershell -ExecutionPolicy Bypass -File install.ps1Then obfuscate with the panda.bat wrapper:
panda.bat --preset Panda-Xenon your_script.luaInstall Lua 5.1 via your package manager:
sudo apt install lua5.1 # Debian / Ubuntu
brew install lua@5.1 # macOSThen run:
chmod +x ./panda.sh
./panda.sh --preset Panda-Xenon your_script.luaRequires LuaJIT or Lua 5.1. Binaries: https://sourceforge.net/projects/luabinaries/files/5.1.5/Tools%20Executables/
lua ./cli.lua --preset Medium your_script.luapanda.bat --preset Panda-Xenon your_script.lua
panda.bat --preset Panda-Roblox-Strong your_script.lua
panda.bat --preset Medium --out out.lua your_script.luaMinify– whitespace/rename onlyWeak/Medium/Strong– Lua 5.1 pipelinesLuaU-Safe/LuaU-Typed– Luau pipelines (compat profiles)Panda-Xenon– Luau, low-UNC safe for Xenon and similar executorsPanda-Roblox-Strong– heaviest Luau pipeline with double Vmify
Lua51(default)LuaU-safeLuaU-typed– accepts type annotations; obfuscation strips them
lua ./cli.lua --profile LuaU-safe --LuaU ./your_file.lua
lua ./cli.lua --preset Panda-Xenon ./roblox_script.luaSee doc/luau-feature-matrix.md.
lua ./tests.lua [--Linux]Panda Obfuscator is a derivative work of Prometheus by Elias Oelschner (levno-710), licensed under the Prometheus License (MIT-style with attribution).
Based on Prometheus by Elias Oelschner, https://github.com/prometheus-lua/Prometheus
Any commercial product, wrapper, or service (including SaaS) built on Panda Obfuscator must include visible attribution to the upstream Prometheus project as required by its license. Obfuscated output files do not need to include any license notice.
Full upstream license text: Prometheus License
