by SirGolan » Mon Apr 28, 2008 1:50 am
In MV3D, nothing is treated as static, and everything is persistent when using object stores. Because of these two things, loading a static game world from an XML file isn't very helpful. When the stores are enabled, everything in the game world is persisted to disk regularly so that when you restart the server, things are exactly the way you left them.
The stuff in SetupAssets.py and worldgen.py is all just for testing purposes so that when I'm testing out a new feature, I can quickly spin up a small world to try it out in. People looking to create their own worlds will not be using it. Once the in game editor is working again, it'll be possible to create your own world and populate it with objects. By turning on the object stores, your changes will persist even after you stop the server.
I'm not saying it wouldn't be possible for someone to add in the ability to load up a static game world from a file, and in fact, this is one possible way to handle instancing of dungeons or whatnot. Mostly what I'm saying is that once the editor is working, it won't be needed (nor will SetupAssets or worldgen-- except for those people who want to test in a simple world).
Btw, have a look at the createBox function in worldgen.py. You should be able to change the asset it uses for the box and have it be a column instead.
In either this release or more likely the next, here will be the steps to starting your own world:
1. Start a server
2. Create your account using a web browser
3. Give your account admin abilities on your server
3. Log in with the client and create a PC
4. When you connect to that PC, the world will be empty.
5. Bring up the editor and add terrain/trees/grass/etc.
6. All your changes are automatically persisted to a datastore. If you shut down the server and restart it, everything will still be there.
One thing, though. While you will definitely be able to create a nice world with the editor, doing anything complicated or non-standard will require working in Python.