![Lua Modding Framework](https://assetstorev1-prd-cdn.unity3d.com/key-image/2b68ff7c-1deb-403c-bcaa-fca507c8aa57.jpg)
uLua is a scripting framework which enables the development of a Lua API for your Unity project. Users, as well as developers, may use this API to add content to your project by writing Lua scripts.uLua has been tested and is compatible with the following LTS versions of Unity:2022.3.31f12023.3.10f1uLua is a scripting framework which enables the development of a Lua API for your Unity project. Users, as well as developers, may use this API to add content to your project by writing Lua scripts.uLua wraps around MoonSharp and provides an object oriented Lua Modding framework.It works by setting up an application-wide Lua context and exposing game objects to it.Objects exposed to the Lua context can then be accessed in Lua scripts, allowing users to interact with Unity Engine at runtime.uLua includes the following features:Lua Sandbox: Expose your game object components and data structures to Lua by utilising the base classes provided.Script Execution: Execute Lua scripts from the Resources folder or an external directory.Event System: Invoke events in C# or Lua and implement the relevant callbacks/handlers in Lua.Packages: Organise scripts in packages which can be easily installed and removed from a project. Packages feature a dependency system which can be used to enforce a specific execution order.Before you purchase uLua, feel free to check out the following resources:uLua Documentation: The full documentation, including a tutorial on how to use the toolkit.uLua Paddle Game: A demo game made to demonstrate the use of this framework. Comes with documentation, a tutorial, and compiled executables to test on your setup.Note: You must install the Unity MoonSharp plugin before you can use uLua.uLua consists of the following main scripts:uLua.Lua: A wrapper class providing an application-wide Lua context.uLua.API: Class that implements an event handling system and a script execution framework.uLua.ExposedClass: Class which exposes its instances to Lua. To use as a base for data structures which will be accessible in your API.uLua.ExposedMonoBehaviour: MonoBehaviour script which exposes its instances to Lua. To use as a base for game object components which will be accessible in your API.