SnifitGuy wrote:
In addition to everything Enjl and Hoeloe said, I'd like to stress that the whole "certain features grouped into a specific file or something" is a fundamental practice in programming in general, not just Lua/LunaLua. The point of these APIs is
not to lock off functionality behind some intimidating barrier but to provide a reusable set of features that are easy to enable and configure. That's why we sometimes call them "helper libraries".
Here's another (rather simplified) way to look at it:
Programming is condensing a bunch of complex math and resource management into a set of simple commands and values.
Scripting is using those simple commands and values to control object behavior and that kinda stuff.
When you're asking how to add features to LunaLua, you're effectively asking "how do I program in Lua", and that requires having a strong enough grasp of the language's nuances so you don't screw up like I did and make a convoluted, buggy mess like cinematX. But if you just want to script stuff in LunaLua, that's just a matter of using the LunaLua classes and APIs to script your levels and episodes, and... well, as Hoeloe and Enjl explained, you still need a general understanding of Lua. But you don't need to be an expert.
We do our best to
document LunaLua's features and
the APIs we write to make them more accessible for folks trying to use them for scripting. So yes, we are working to make all this stuff more usable and understandable for everyone. We have been from the start. But it takes time; it's a process, it doesn't happen overnight. And we do it as a hobby, not a full-time job.
If anyone's interested in helping us with creating and maintaining wiki pages, it would be greatly appreciated. And for any peeps with a fair amount of Lua experience who'd like to help with developing new libraries, we're looking into setting up project management and crowdsourcing resources in discodehaus.