I've been working on a map generator for a while now (2 years or so, with long breaks).
It can generate maps on-the-fly. So you simply have to give the appropriate seed + possibly other settings and spring would generate it on startup and everyone would be on the same map. No download times or anything just generation times (which shouldn't be long).
A small part of the ArchiveScanner/VFSHandler was changed to allow archives/files to be made from inside spring instead of having to write it out to disk first.
I got it to work on the latest master again after plenty of merging but i have a few questions because i'm not entirely sure how to best do a few things.
Currently it can generate the .smf file, not the .smd or .smt yet (it loads these from an existing map)
https://github.com/MadrMan/spring/tree/mapgen
- I need to be able to generate an .smd file from spring, or simply set all the required members in the MapInfo class. The former is probably the most reliable because spring already does quite a few safety checks on them and if the MapInfo class changes the generator wouldn't need to be changed. Is the .smd format still needed with the newer maps? or is it all replaced with the lua mapinfo stuff?
- Settings for the generator are currently passed into the script.txt as 'mapgenseed={seed}', i may or may not add more at some point. I also have to set mapname to the matching mapname or spring won't be able to find the generated map. Any suggestions on how to do this in a better way? or is this fine?
- The .smt format might be a bit annoying to get right. Generating the textures should be doable but would i need to compress them aswell? I haven't messed with this yet.
- The actual height generating is currently done from within a C++ class, but i'm slightly tempted to move it all into lua. This could severely decrease the speed, however.
Opinions?
