AIO is a pure lua server-client communication system for Eluna and WoW.
AIO is designed for sending lua addons and data to player from server and data from player to server.
Made for Eluna Lua Engine. Tested on 3.3.5a and should work on other patches. Tested with Lua 5.1 and 5.2.

With AIO you can deal out addons and make changes to them without dealing out patches or new addon files to users afterwards.
AIO allows you to make UI to interact with your lua scripts. You can use the base WoW addon API and you will have access to few AIO specific functions for communication with the server.
AIO is using compression and obfuscation to make addon codes smaller to send. Also a cache system is in place to further reduce server side work.

AIO is designed with bad users in mind. All errors are avoided with pcall and using safe serializer.
However your code is only as safe as you make it. Against bad users there are limits to message lengths from client to server and timeouts and other configurable settings. By default users have no access to execute functions on the server.

AIO is limited to lua files only so you can not just pick up any addon and send it. XML and image files and similar must be on client side already. If you want to use images or XML you must ship them with the AIO addon or separately to the clients.

Screenshots above are mostly from NotHawthorne’s The Shard of Entropy project.


Eluna Lua Engine