MoonVeil-Docs/content/docs/compatibility.md
2025-08-15 13:24:50 -05:00

1.6 KiB

weight title description icon date lastmod
999 Luraph Compatibility Guide Compatibility guide for Luraph article 2025-05-01T18:47:58-05:00 2025-05-01T18:47:58-05:00

MoonVeil provides a compatibility layer to support users which already use Luraph's suite of Macros.

Many of Luraph's macros do features or optimizations that are already built into MoonVeil. Though MoonVeil will still accept scripts which try to use these macros, they will have no effect. Below is a table of compatibility between Luraph and MoonVeil.

{{% table %}}

Luraph Macro MoonVeil Alias
LPH_ENCFUNC MV_ENC_FUNC
LPH_ENCSTR MV_COMPRESS
LPH_ENCNUM MV_NO_OP
LPH_CRASH MV_CRASH
LPH_NO_VIRTUALIZE MV_OMIT
LPH_JIT MV_NO_OP
LPH_JIT_MAX MV_NO_OP
LPH_NO_JIT MV_NO_OP
LPH_LINE MV_LINE
LPH_OBFUSCATED MV_OBFUSCATED

{{% /table %}} {{% alert context="info" text="MV_NO_OP isn't user accessible, and is only used to provide source compatibility." /%}}

A minor difference between Luraph and MoonVeil is that MoonVeil does not automatically virtualize your script (outside of the Virtualize Script option). Instead, you can selectively virtualize blocks using the MV_VM or MV_ENC_FUNC macros. This gives you much granular control over the obfuscation process, enabling you to have much better performance.

Though you can use Luraph's macros in MoonVeil, MoonVeil additionally provides many other macros which are not available in Luraph.