Soteria v7.0
A complete internal rewrite of Soteria, rebuilt for near-impenetrable outputs.
Version 7.0 is out now on the main branch, and it's the biggest update yet for Soteria.
We spent over the last month working all day, every day rebuilding how Soteria works, and now its rewrite's complete. Practically, that means a cleaner base for us to build on, faster iteration when we add new protections, and output that's noticeably stronger and more varied than before. Your existing scripts and macros will keep working without any changes on your end.
Control flow & structure generation
The control-flow engine got rebuilt with several new flattening and obfuscation layers, making dispatch a lot harder to follow just by reading it statically. Output is deeper, less linear, and far less pattern-matchable than what v6 produced.
Per-build output is also more individualized than before, so structural details heavily vary from build to build.
Macros
The macro layer was rewritten too, and it comes with full competitor-alias compatibility (LPH / MV / WYNF), so migrating over should be pretty painless.
There's also a batch of new macros for things like native-speed execution, extra hardening, and expanded literal encryption. Check the docs for the full list.
New attribute macro system
Probably the feature we're most excited about: SOTR_ATTRIBUTES(...) is a brand-new per-function attribute system. Drop it in as the first statement in a function body and it attaches obfuscation settings to just that function, including named functions, which the old call-form macros couldn't reach. You can stack multiple attributes in a single call. This is also now how you configure error handling in v7: call SOTR_ATTRIBUTES(...) at the top of your script. Full details are in the attributes docs.
Security
Anti-tamper protections and overall security have been revolutionized, and output should now hold up better against both static and dynamic analysis.
Platform
We improved output generation speed, build performance, and general toolchain/server reliability, and upstreamed the internal Luau version from 0.730 to 0.736.
Fixes
We also rebuilt our test suite from the ground up to guarantee no rare edge-case issues in generated outputs, plus a bunch of other stability fixes across the rebuilt pipeline.
If you run into any issues or unexpected behavior, let us know on Discord.

