As part of the workshop->upgrade->Snoot->cover the world in progress cycle, we have an exciting series of new economics problems: how to make upgraded modules actually useful, and how to make workshops not terrible. The solution that we have elected to try, and which Daniel bullied me into writing (which took a week, and then I quite like the results so it’s not so bad) is to have workshop jobs assigned per-module, rather than per-building.
For Revision 50D, we let you explicitly assign a task to a given module (“Make Planks”, “Make Cot”, etc.) The # of workshop modules indicates the # of tasks. A worker will do the task assigned to the first module in a row. If the first module is busy, they will move to the second module; and so on, and so forth. Modules are organized in the workshop in terms of priority, and can be moved up and down (i.e. if your power saw is first in the queue, if it is empty people will try to use it first.) So if you have:
- Power Saw -> Standing Order for Make Planks
- Carpentry Bench -> Make Cot
- Carpentry Bench -> Make Chemistry Workbench
The order of execution will now always be:
- try to use the power saw to make planks.
- If I can’t use the power saw, or I have enough planks to satisfy the power saw’s standing order already, I use the first carpentry workbench.
- If I can’t use the power saw or the first carpentry workbench, use the second carpentry workbench.
This has three major consequences. First, more workers and more modules now become useful! Yay. Second, a number of issues have been fixed while doing this (most notably, standing orders for basic food; various people creating more outputs than the job actually indicates). Third, we can now make a power saw useful and guarantee that it will be used for the mass-production of planks. Also, there are less hidden behaviours and people being confused by how the workshops work and thinking that they’re not working, when in fact we’re just not signalling what is going on well to the player.
The second part of this, of course, is the ability to batch-process stuff. A power saw will now let you convert 5 logs into 5 planks. This in turn means we’re giving you the ability to pick up 5 logs at a time from a stack to fulfill a job, which has in turn meant that we have had to rewrite the pickup workshop commodity code to do this. So there’s a lot of excitement going on here, and it gives other people to do exciting and good things with the economy and gameplay balance that would not have been possible otherwise.