Maximum security · one mode only

Ship your Lua scripts.
Keep the source locked.

Luwave is a powerful Lua obfuscation service designed to keep your scripts secure. With multiple layers of advanced protection, even if one layer is bypassed, many more stand in the way. Constant updates and modern security techniques help keep your code protected against reverse engineering, so you can focus on scripting with confidence.

Join: https://discord.gg/luwave

Start protectingOpen the obfuscator
$ luwave build main.lua --mode maximum
# parsing .......... 100%  (dialect: luau)
# scope analysis ... 100%  (closure capture mapped)
# renaming ......... 100%  (seeded, collision-free)
# sealing .......... 100%  (constants · cff · vm)
# runtime shield ... 100%  (antitamper · guard · antidump)
✓ build complete  main.lua → main.obf.lua
100%local-first builds, nothing leaves your infra
<1stypical build time on the fast path
30+runtime checks in the anti-tamper shield
FREE WHILE IN BETA · RUNS IN YOUR BROWSER

Obfuscate your files.

Drop a .lua, .luau or .txt file or paste your script, pick how strong you want it, and build. Nothing leaves your machine — the engine runs entirely in your browser.

Your script
no file loaded
Protection settings
Protected output
ready

Beta engine: renaming, string sealing, junk and minification run here today. Control-flow flattening and the execution VM roll out on the full pipeline first.

Features

Everything a serious obfuscator needs

Built as a real compiler pipeline, not a find-and-replace script.

🔒

Maximum Security mode

One mode, dialed to the max. Every protection layer runs on every build, no weak presets to misconfigure.

🧠

Real scope analysis

Full lexical scope engine maps closures, shadowing and globals before anything is renamed — so behavior never changes.

🪪

Identifier renaming

Seeded, deterministic, collision-free renaming that never touches globals or Luau type annotations.

🧬

String & constant sealing

Strings and numeric constants are encrypted and reconstructed at runtime, never left readable in the payload.

🌀

Control-flow flattening

Structured code is rewritten into a dispatcher form that resists both human reading and automated decompilers.

🛡️

Runtime Protection Suite

Anti-tamper self-verification, executor & hook detection, anti-dump tripwires and service integrity checks bundled in.

⚡

Fast pipeline

Job queue with workers, resource limits and versioned build reports on every single compile.

🔌

API-first

REST API for builds and loaders so you can integrate Luwave into your own tooling and bots.

How it works

Three steps to a sealed script

From source to protected payload in under a minute.

Upload your source

Drop a .lua, .luau or .txt file. Luwave detects the dialect automatically and parses it into a full AST — unsupported syntax is rejected, never guessed through.

Build in Maximum Security

The compiler pipeline runs every layer: scope analysis, renaming, constant sealing, control-flow flattening and the custom VM, with a versioned build report at the end.

Ship the protected build

Get a payload with the runtime shield embedded. It verifies itself at load, detects executors and hooks, and kills tampering attempts quietly.

Pricing

Free while in beta

Everything included. No presets, no tiers, no locked features.

Luwave
$0
during the open beta
Get started on Discord

FAQ

Questions, answered

Does obfuscation change how my script runs?

No. Luwave's transformations are behavior-preserving: the protected build executes exactly like your source. Every build is round-trip tested against reference runtimes before it ships.

What dialects are supported?

Lua 5.1 through 5.4, LuaJIT and Luau, with real dialect detection. Luau type annotations are preserved verbatim so your output stays valid.

What does the runtime shield do?

Every build embeds a self-verifying anti-tamper module plus hook detection, executor detection and anti-dump tripwires. If the payload is modified or runs in a hostile environment, it fails closed.

Can I get my source back from a build?

No, and that's the point. Builds are one-way: the original source is never stored in or recoverable from the protected payload.

Lock your scripts today.

Free during the open beta, maximum security always.

Join the Luwave Discord