03-12-2014, 09:42 PM
I'm considering the options for storing the prefab pieces (aka "Gallery areas for the generator"), so that MCS can use them in the world generators. There are several possibilities, each with a different twist.
1. Have them exported as .schematic files, load them at runtime.
2. Have them exported as C++ code, compiled into the server, converted to cBlockAreas in runtime.
Option 1 is a bit difficult on the setup side - the admin has to make sure the schematics are in the proper folder relative to the server, and if one schematic is missing, the entire generator can't really work. Also metadata for the prefabs, such as the connectors (how to connect them together) will have to be stored somewhere, probably yet another external file.
It could be possible for the admin to actually modify the set of pieces that the generator uses, but the generator would need more robust error-checking for this.
Option 2 is easy to set up, the admin doesn't need to do anything special for it to work. However, it makes the executable larger not only on disk, but in the runtime memory as well - each prefab would be stored in the RAM twice - once as the in-source image, and once as the cBlockArea used for the actual generating. The generator will not need any error-checking, because all of it would be done while developing / adding content.
So what are your thoughts?
1. Have them exported as .schematic files, load them at runtime.
2. Have them exported as C++ code, compiled into the server, converted to cBlockAreas in runtime.
Option 1 is a bit difficult on the setup side - the admin has to make sure the schematics are in the proper folder relative to the server, and if one schematic is missing, the entire generator can't really work. Also metadata for the prefabs, such as the connectors (how to connect them together) will have to be stored somewhere, probably yet another external file.
It could be possible for the admin to actually modify the set of pieces that the generator uses, but the generator would need more robust error-checking for this.
Option 2 is easy to set up, the admin doesn't need to do anything special for it to work. However, it makes the executable larger not only on disk, but in the runtime memory as well - each prefab would be stored in the RAM twice - once as the in-source image, and once as the cBlockArea used for the actual generating. The generator will not need any error-checking, because all of it would be done while developing / adding content.
So what are your thoughts?