better macro documentation

This commit is contained in:
cpunch 2025-08-15 13:22:14 -05:00
parent 4f06486bd9
commit b8fc134521
2 changed files with 35 additions and 12 deletions

View File

@ -0,0 +1,35 @@
---
weight: 999
title: "Luraph Compatibility Guide"
description: "Compatibility guide for Luraph"
icon: "article"
date: "2025-05-01T18:47:58-05:00"
lastmod: "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="warning" 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](/docs/options/virtualization/) option). Instead, you can selectively virtualize blocks using the [MV_VM](/docs/macros/mv_vm) or [MV_ENC_FUNC](/docs/macros/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](/docs/macros) which are not available in Luraph.

View File

@ -1,12 +0,0 @@
---
weight: 999
title: "Using Macros"
description: "Guide to using macros"
icon: "article"
date: "2025-05-01T18:47:58-05:00"
lastmod: "2025-05-01T18:47:58-05:00"
---
[Macros](./macros/) are a collection of reserved global functions available for use in your scripts. These are only available at obfuscation-time and are not available at runtime, meaning trying to access these functions dynamically will fail.
They can be used in any script in [your dashboard](./dashboard/) or through the [API](./api/) and provide many useful tools for obfuscation.