I am working on a project where I want users to be able to modify and customize as much as possible.
Open source might be a good choice but not due to the fact that I want to keep a few internal classes closed.
Two other options that I thought about were plug-ins as external libraries and Lua scripting.
The problem with libraries (DLLs) are that cross-platform compatibility is a must-have because it is some kind of a game server and it is mainly designed for use on dedicated servers (often Linux) yet many people will also use it on their local machine (mostly Windows).
Due to the fact that it's a game server application that should be able to handle lots of connections and actions related to the game performance is very important so I have doubts with Lua scripts.
Are my doubts reasonable or would Lua be a good solution? Also can you think of any better / other option for my concern?
To sum up the important aspects:
- cross-platform compatibility
- good performance (-> online game)
- plug-ins / scripts that anyone can create as long as he/she knows about the language, may it be Lua, C or whatever
- option for closed source plug-ins / scripts (not so important, but would be fine :)