Lua Script Doctor
Check Lua syntax and runtime compatibility.
Paste Lua or Luau to check syntax, language-version differences, and known API patterns. The report is static analysis, so test the script in its target runtime too. Submitted source is not saved.
Report
Paste a script to start.
The report checks parsing, language compatibility, and specific API patterns.
How the check works
Script Doctor uses the same parser as the obfuscator. It checks explicit syntax and API patterns against Lua 5.1, 5.2, 5.3, 5.4, Luau, and FiveM conventions. It does not execute your script. Use the sample button to see how a typed Luau variable and compound assignment affect the target report.
Read the report before you build
A green syntax result means the analyzer parsed your source. A target marked compatible means it found no known language-level blocker for that target, not that host functions, installed modules or game state are available. Review notes call out specific patterns worth checking in the real runtime.
If the same source works before obfuscation but fails afterward, save the original, protected output, exact error and target version. The build and testing guide shows how to compare them. For language changes, start with Lua 5.1 vs Luau.
Common questions
Does Script Doctor save my code?
The analyzer holds source in memory for the current request and returns a report. It does not save source as a project.
Can it prove a script will run everywhere?
No. Runtime APIs, game engines, permissions, and external modules still matter. The report identifies language-level blockers and known API signals.
What should I use after the report is clean?
Run your script in its target runtime, add a regression test, then protect the release in the hide.lat workbench.