Scripts are executed via a Lua runtime called MoonSharp. It should be equivalent to Lua 5.2 for the vast majority of use cases. Here’s the official MoonSharp documentation on differences and additions to standard Lua.
Note that a few things (such as filesystem access) have been explicitly disabled. Again, referencing the MoonSharp documentation, the disabled APIs are: Coroutine
, OS_System
, IO
, Debug
, and Dynamic
.
See how the Microcosm API has changed over time: