Buildat TODO ============ - Modules should be run in threads. - Include hmmmm/kwolekr's MT noise under interfaces (Simplified BSD) - Design how to manage scenes in a future-proof way - Implement easy Lua scripting on the server - Allow creating Lua modules on the server, for those who don't like C++ - Allow recycling the same Lua code on the client and the server - Move self-contained library-like Lua functions from client/app.cpp to a reusable location so that they can be used from server-side Lua in the future - New things in meta.json? - disable_module - override_module (in such a way that the module will be gotten from the server with it's original name, and with the name of the overridden module. The overridden module will still be loaded and be available to the overriding module in some way.) - Doxygen for the C++ interfaces - Copy compiler flags (at least -m32/64 and stuff like -D_GLIBCXX_DEBUG) from CMake to RCC++ - Voxel world with arbitrary chunk size and offset, with pluggable loader modules. Main world has worldspace_id=1. Try Polyvox. - Normal block size should be definable to be a multiple of the voxel size - "Continuation voxels" - Support Cereal's shared pointer serialization in Lua - Automatically fetch and build and patch Urho3D when building buildat - Handle module load order properly in reloads (unload by popping from top, then reload everything until top) - Automatic buildat root detection so that the server and the client can generally be started with any working directory in either the in-source or windows-installed configuration - Precompiled mode - Singleplayer UI - Show all exceptions and errors on client using ui_utils.show_message_dialog - Pass the replicated scene properly to Lua - Allow creating and destroying arbitrary amounts of replicated scenes - Switch to using #define MODULE in modules, and rename Module::MODULE - magic.sub_sync_node_added -> replicate.sub_sync_node_added - Use tags for module dependencies (tags, require_tag, disallow_tag), and auto-tag each module at runtime with game_ - Threaded mesh generation - If an error occurs on the client in module initialization, show error and quit