Home Artists Posts Import Register

Content

I started working on bits for the resource update about a year ago. I knew from the start it would need to be kept separate from the other continuous Space Exploration updates because of the way it would change the universe resource balance.  I was expecting it would take about 6 months, but it ended up taking a year. 

So why did it take so long?

Resource distribution system and recipe balance are the main reasons. 

The single biggest delay was the universe code update.   I had to almost completely rebuild the universe code 3 times.  This system really needed to be as good as possible before being released, because things going wrong can break peoples saves, and any imbalance has a multiplying effect each time the underlying resources are changed. 

The universe code has the job of maintaining a resource balance of all the possible resources. For example, if there are 12 different resources that can be on planets it will try and make an even spread of planets that have that resource as their primary resource. That is not that difficult, but the problem is when the resource change repeatedly mid-game due to mods being added and removed. The first 2 attempts tried to maintain the game save's state as the main controller of the distribution, but that is a losing battle. The solution ended up being to use a more consistent procedural seed-based approach, and the game save's state is only used where a change for a given planet is quite minor. There is a downside that the conversion from 0.2.+ versions to  0.3.+ versions removes and regenerates a lot of resources, but any changes after that are much less destructive. 

The other thing that took a long time was game balance. A lot of recipes changed so the relative costs of things got quite distorted. The interconnections of production lines and loops makes it a difficult task. One interesting thing about having people test this is how differently people's evaluations of relative costs were. Prdfndr was especially helpful here by giving very specific feedback, suggestions, and calculation.  It took a lot of iterations to get to this point and it is an ongoing process, but it is in a better state now and further changes are mainly tweaking values instead of swapping ingredients or other structural changes.

With small changes that break existing bases, it is good to spread out the changes so people only have a few changes to do at any time. With multiple big changes though, it is better to do them both at once otherwise it will probably break most of what people have just spent hours fixing.  

Adding new resources means that a lot changes in the universe resource distribution and therefore the resources on planets. It also means a lot changes to recipes to use the resources, a lot changes in the tech tree, and some needed changes to your logistic setup. Any one of these things means that there would be a big break between versions when you update, so with three jumps that big it makes sense to add in other things that shake things up a bit, like the beacon changes.  

So the update went from a resource update, to a resources + end game content + a large change to the structure of space science catalogues and science packs + beacons + changes to things like matter fusion + a spaceship console size change, and a few other things.  Some of the testers commented on these additions as scope creep, but I think it was a good decision to reduce the number of base-breaking updates in this case, but I also don't think it affected the timeline much. The amount of testing involved for the resource system and recipe balance meant that there was a lot of time waiting for feedback where I just started on working on other features. 

You can see a list of the main new features of version 0.3.66 here:
https://spaceexploration.miraheze.org/wiki/New_content_in_0.3.%2B 


Comments

No comments found for this post.