If we add random length research completion, or for that matter random ship length construction, installation construction, survey times, etc., there has to be some game play enhancement as an objective.
What decisions does this add for example? Would it actually cause more frustration than enjoyment?
Before I start: the following is intended as observations, not criticisms, arguments or complaints. I understand and accept that I'm coming from a different place than a lot of Aurora players (including Steve) and am ok with it. I'm just trying to point out a general theme behind these sorts of discussions/decisions. [EDIT] And then when typing it I realized I have a simple idea that might satisfy both parties. Skip to the "Unless...." to see it.[/EDIT]
I think this is a different instance/aspect of the philosophical "jigsaw spectrum" discussed in this thread:
http://aurora2.pentarch.org/index.php?topic=9861.msg107147#msg107147 In particular see the back-and-forth between me and Zincat (who happens to be the prime responder in this instance of the discussion as well
).
To summarize: I think there's a spectrum of people in terms of what they enjoy in a game. On the one hand, you've got mini-maxers, who want to know exactly what the efficiency of any action will be so that they can choose the perfect path to obtain the best outcome in the game. For example, when I do a conventional start, I look at the mineral accessibilities that the RNG has handed me and decide the optimum ratio of construction factories to mines I should convert into in order to optimize growth of my economy.. I call this a high "jigsaw affinity", since I suspect that such players tend to enjoy other intricate tasks such as doing monster jigsaw puzzles or playing War in the Pacific. (That's the one with crazy level of detail, right?)
On the other hand, you've got "fog-of-war/imperfect control/gambler/realism" people, who think it's more fun/challenging/realistic to have imperfect knowledge of what the consequences of their actions will be. These are the people who either don't find it realistic to have perfect knowledge and control or who don't want to spend time micro-managing low level decisions, especially if they're not "interesting". I'm calling this a low jigsaw affinity. I think Rule the Waves (btw, version 2 that goes through the 50s and has aircraft is supposed to come out this month) is the best example of a game for those people - you're playing the navy minister and so can only recommend budget changes, you can only define research area priorities overall spending, not what results will come out, OOBs and objectives for battles are generated by the computer based on which forces are deployed to a theater, ....
I don't have a gripping hand.
So to answer Steve's question, I think the argument in favor of hiding research is to add "gambling/fog of war" rewards - it adds to the sense of suspense when you don't know exactly when a research project will finish, or which research path is likely to be most effective - you have to take your best shot with imperfect knowledge and see how it plays out. I also agree it can be frustrating - in my current RtW campaign I've gotten unlucky on discovering all-or-nothing armor, so I'm at a disadvantage relative to others in terms of how much mass I can devote to weapons and engines in my capital ships - but so can magazine explosions. Even though I would like to see more fog in the research process, I think it would take a fairly major rewrite of the research system along the lines of what QuakeIV and Zincat discussed to do this well, and I don't want to delay the release date to do that.
Unless.... How about doing what RtW does for ship construction? You know exactly how many months out a ship is scheduled to be completed, but each month there are potential random events that either delay or speed up progress on one or more ships by a month. In Aurora this would translate into weakening the micro-coupling between research spending and research progress: if you spend R research points on a project, you would achieve R*RandomDoubleUniformBetweenZeroAndTwo*DoubleIndicatingSizeOfVariability. If the size of the variability is 1.0, then you'd get (evenly) anywhere between 0 and 2*R progress in that increment; if the size was 2.0, you'd literally be in a "two steps forward, one step back" situation where your progress could be anywhere from -R (indicating dead end research paths to 2*R).
IMPORTANT: On average, your rate of research progress vs spending would still be 1:1, i.e. on average you get exactly as many progress points in a span of time as if the system wasn't in place, since you're just as likely to roll a 0.5 as a 1.5 (which average to 1.0).
Also, the bigger the research project (and hence the more rolls) the lower the relative variation between actual and expected. This is because variation in the average of a large number N of RNG rolls tends to go like 1/sqrt(N). So if there are 100 rolls over the course of the research, and SizeOfVariability=1.0, you can expect a relative variation of ~10% in the research rates. The absolute variation for a large project will grow like sqrt(N) = NTimesAsLarge/sqrt(N)_RelativeVariation, so large projects have more absolute risk simply because they're large, but it will still be a smaller relative risk. Because of this sqrt(N) effect, throwing more research labs at a project (to get it done more quickly) will increase variability by sqrt(NLabs) - if you have 4x as many labs you'll have 4x fewer rolls and so variability goes up by sqrt(4) = 2x but the average progress remains the same.
Why I like this:
- It feels like it will add a sense of suspense while at the same time giving rough progress feedback/transparency and not necessarily resulting in huge variation.
- It should be really easy to code up - just add an RNG roll when calculating research advance
- If Steve exposes SizeOfVariability as a parameter (either at the game level or the race level or both), then it puts an easy-to-code tunable knob in that the high jigsaw players can set to zero and the low jigsaw players can increase or decrease to tune how much uncertainty they want in research times.
- At the start of a project (strategic decision) you have a decent idea of how long it will take. As the project gets near the end (with fewer rolls left) the relative uncertainty is growing (more likely to take 2x as many updates as you think are left for the last little bit) while the absolute uncertainty (how many more updates left) is still shrinking so that you know you're close to the end. This should address the concerns about whether to go with e.g. lasers vs. missiles - the law of large numbers says that in the end on average your expectations will be met, there just might be some bumps (or smooth parts) in the road.
- It can be applied as a general mechanism throughout the rest of Aurora industry (factory jobs, ship construction tasks, etc). It can be thought of as a first principles mechanism that can be generally applied to add fog of war into economic planning.
- I think I like that throwing more labs at a problem increases variability - will they work together well or not?
- [Edit]If you have some early bad rolls, you can make the decision that Zincat mentioned to abandon in favor of something else. Note that I don't think this will be a strong effect unless you make negative progress early on, since usually you'll be in a position where effort remaining is lower than choosing another course.[/Edit]
There's actually a small math subtlety that shows up because Aurora allows players to choose the length of the construction cycle. If I cut the interval by 4x, then I'm making 4x as many rolls and the variation will go down by 2x. So there should also be a factor of (5Days/UpdateCycleTime)^2 multiplying SizeOfVariability to make the variability insensitive. So the final proposal is to change ResearchProgressPoints = ResearchPointsSpent to:
ResearchProgressPoints = ResearchPointsSpent*VariabilityStrength*RandomNumberBetweenZeroAndTwo*SomeFactorWeCanCalculate*(DefaultUpdateCycleTime/ActualUpdateCycleTime)^2.
where VariabilityStrength is a non-negative float that the player can set and SomeFactorWeCanCalculate is a constant that I can calculate if you want that controls how many update cycles you need to get a variability of e.g. 10%. For example, if you want a project that takes 1 cycle to have a variation of 10% it would be 0.1 (with possibly a factor of sqrt(2) thrown in); if you want a project that takes 100 cycles to have a variation of 10% it would be 1.0 (again, there might be a sqrt(2) or something like it floating around)).
John
PS - While typing the above about jigsaw affinity, I had a few random thoughts that I found interesting:
1) While I usual argue for low jigsaw directions in Aurora, I find myself micro-ing a lot of stuff, like survey SoP, the aforementioned construction plan, and city governor functions in the Civ games. For example I remember when I was a kid wanting to use Richtofen's War to track every plane in a huge WWI air campaign.
2) I think there's a very strong sense within the wargaming community that high level-of-detail games like WitP are more "realistic". In the thread I referenced above I argue the opposite - that this implies a lot of omniscience that eliminates fog-of-war on what your own forces are doing.
3) I strongly suspect Steve has a high jigsaw affinity, but he's also a big fan of poker.