buildat/design.txt

40 lines
875 B
Plaintext
Raw Normal View History

2014-09-16 15:27:57 +03:00
Buildat
=======
A Minecraft clone with vast extendability.
2014-09-16 20:39:57 +03:00
License: MIT
2014-09-16 17:58:01 +03:00
Client
------
Built using Polycode C++.
2014-09-16 15:27:57 +03:00
2014-09-16 18:22:12 +03:00
Module code is transfered from the server and run in a safe Lua sandbox.
2014-09-16 17:58:01 +03:00
Server
------
Built using C++ with most functionality in RCC++.
2014-09-16 18:22:12 +03:00
C++ modules can interface with each other by using Cereal.
Module structure
----------------
module
|-- client
| `-- init.lua
|-- server
| `-- init.cpp
`-- data
`-- media.png
Module behavior
---------------
All client scripts are automatically sent to the client. Everything else is
handled by the module implementation.
2014-09-16 15:27:57 +03:00
Modules cannot be unloaded at runtime. Module unload and reload can be simulated
by restarting the server and clients automatically while keeping connections
open. This requires POLYCODE_CORE to be recreated.
2014-09-16 22:42:47 +03:00
The first module to be loaded is called __loader. It loads all other modules.