REV 6608
As I've already mentioned in my post above, I've just committed another major update to scripted universe generation. This time I finally got to some of the juicy stuff, most of it related to empire setup. In Python you can now (in addition to what we already had):
- Set the empires names, pre-unlocked items (techs, ship parts, etc.) and homeworlds (including selecting starting species)
- Get/set colony focus
- Add buildings to planets
- Create ship designs and add them to empires
- Get the premade ship designs and monster ship designs
- Create ships and fleets
- ...
Take a look at UniverseGenerator.py to see what's already done there. This should give you some ideas about what's possible. Just start playing around
MatGB wrote:LMK if there's anything you want looking out for
Huh, good question. Most importantly look out for things that might be wrong or you think/feel are different now, as I've tried to stay close to the original behaviour. One thing specifically that I'm unsure of is the RNG. In the Python script I make use of the random library provided by python. Of course you can seed Pythons RNG, but I'm not 100% sure if it gives the same results independent of platform. So if you can check if identical game setup options result in reproducible universes across different platforms, that would be helpful.
Another thing is trying out extrem galaxy settings (like 20 AIs in 10 systems, many AIs and everything set to "high", huge galaxies etc.) and see what results universe generation produces. Just try to give it a hard time.
And then, of course, mess with the Python script. Experiment. Create custom ship designs, add some additional buildings to the homeworlds, create additional fleets, change the homeworlds sizes, etc.
And finally, when playing around with the Python script, you'll probably sooner than later run into something you'd like to do but can't. Or want to be able to do differently. Of course I can't promise that I can/will do it, but it's still important for me to know. One thing in particular is how "user-friendly" the Python interface/script is in its current form. That is, how comfortable content scripters are with the interface, who may not have too much programming experience (some basic programming experience at least is required, Python is a programming language after all). I'm a programmer, I might not see what's probably unnecessarily complicated in the way I've set things up. There certainly is potential for improvement in that area.
So, feedback appreciated