Obfuscation Settings

Configure how wYnFuscate protects your scripts. All scripts receive strong protection by default, with security tiers and optional enhancements available.

Security Tiers

Choose a security tier when uploading your script. Higher tiers provide more protection but may affect runtime performance.

Standard

Recommended

Baseline protection with fast processing. Recommended for most scripts. Includes all core protection features with minimal performance impact.

Enhanced

Additional protection layers with moderate overhead. A good choice when you want stronger security without significant performance cost.

Max

Maximum security with all protection features enabled. Best for high-value scripts where security is the top priority.

Comes with a performance trade-off. Not recommended for performance-heavy scripts.

All Tiers Include

Polymorphic VMString EncryptionMinified IdentifiersAnti-debuggingWatermarking

Enhanced VM Compression

An optional toggle available on the upload page that applies maximum compression to the obfuscated output. Can be combined with any security tier.

How It Works

Premium

Enhanced VM Compression greatly reduces the overall file size of the obfuscated output at the cost of a slight increase in initialization speed. This is useful when output size is a concern, such as large scripts or environments with size constraints.

The target platform must support loadstring to use this feature.

Line Info

An optional toggle available on the upload page. When enabled, unhandled runtime errors from obfuscated code are remapped to the original source file and line number instead of only the generated VM line.

How It Works

With Line Info enabled, runtime errors include the original source location. The output format is:

source.lua:<line>: WYNF: <error body>

This works with both normal builds and Enhanced VM Compression builds. It is intended for support and debuggability, not as a security feature.

This setting is opt-in. Enabling it embeds source line metadata in the output. May have a slight impact on performance when enabled.

Enterprise: WYNF_BEGIN_CLIENT_LINES

If your build prepends service-owned code (loaders, key systems) above client code, use the WYNF_BEGIN_CLIENT_LINES() macro to reset the line-info base. The next physical line becomes displayed line 1, so runtime errors report client-relative line numbers. See the Macros documentation for details.

Performance Mode

Beta

An optional standalone toggle available on the upload page when the Beta node is selected. Performance Mode prioritizes runtime speed for large scripts, especially method/table/callback-heavy UI scripts.

How It Works

Performance Mode reduces some polymorphic and runtime hardening choices in exchange for faster runtime execution. It is a standalone option and is not tied to the security tier - it can be combined with any tier (STANDARD, ENHANCED, or MAX).

This is a speed-over-protection trade-off. Available on Basic plans and higher, or via available credits. Beta node only for now.

Target Platform

Select the Lua runtime your script will run on. This ensures optimal compatibility and can reduce output size.

Supported Platforms

Roblox

Optimized for Roblox (Luau) - Default

Roblox (Max Compatibility)

For custom environments that fail with standard Roblox target

Luau

Standalone Luau CLI

Lua 5.1

Standard Lua 5.1

Lua 5.2

Standard Lua 5.2

Lua 5.3

Standard Lua 5.3

Lua 5.4

Standard Lua 5.4

LuaJIT

LuaJIT 2.x

Recommendations

For Most Users

Use the default settings (Standard tier + Roblox platform). This provides excellent security with optimal performance for the vast majority of use cases.

For High-Value Scripts

Use the Enhanced or Max security tier for additional protection layers. Accept the performance trade-off when security is your top priority.

For Large Scripts

Enable Enhanced VM Compression to significantly reduce output file size. Note that the target platform must support loadstring.

For Non-Roblox Environments

Select the appropriate target platform matching your Lua runtime. This ensures compatibility and can produce smaller output files.