Creating Addons

What Are Addons?

Addons, powered by Lua scripting, are scripts that allow you to extend the functionality of Ashita. Addons are given [nearly] full access to the Ashita Developer Kit (ADK) making them work similar to a plugin but in the form of a Lua script. Because scripts can be written in a simple text editor with no special tools required, they are easily the most used form of extending Ashita.

Because bugs happen, addons are separated from one another in sandboxed Lua states, meaning that each addon is given its own Lua state to execute within. This prevents a single addon from causing others to stop working in case of an error or other issue. However, this does cause addons to not be able to [easily] communicate with one another directly.

Ashita’s Addons plugin offers a wide variety of custom extensions and functionality while not changing the language syntax at all. Addons are given control of things such as: in-game memory, packets, the Direct3D device, and more!

What Is Lua?

Lua is a powerful, fast, lightweight, embedded scripting language.

Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode for a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping.

You can read and learn more about Lua at their homepage here: http://www.lua.org/about.html

New To Lua / Lua Beginners Guides

Here is a collection of links to help get you started with Lua.

Tips and Tricks / Performance Information

Metatables

Examples / Tutorials