ORIGINAL: berto
With the addition of
[*]the new Variable, Asymmetric, Turn-Based Victory [Objective] Points System
and the widespread proliferation of
[*]Event Points, assigned for all manner of in-game events
it is getting harder and harder to assess scenario balance. Without thousands of hours of hands-on human testing (which we don't have, needless to say), how can we be sure that the Victory Points thresholds -- for Major Defeat, Minor Defeat, Minor Victory, Major Victory -- are reasonable?
Here too, the CSEE to the rescue!
With the implementation of this
after an auto-test game of VN_631124_Hiep_Hoa.scn, in lua.log we have this:
rober@Rob10rto /cygdrive/r/Temp/Logs
$ cat lua.log
2019-01-30 10:11:25 vnengine.exe: [INFO ID 10] at turn 1, loss points A 0, loss points B 0, event points A 0, event points B 0, objective points 0, total points 0
2019-01-30 10:12:41 vnengine.exe: [INFO ID 10] at turn 2, loss points A 0, loss points B 6, event points A 0, event points B 0, objective points 0, total points 6
2019-01-30 10:14:08 vnengine.exe: [INFO ID 10] at turn 3, loss points A 0, loss points B 15, event points A 0, event points B 0, objective points 0, total points 15
2019-01-30 10:15:47 vnengine.exe: [INFO ID 10] at turn 4, loss points A 0, loss points B 24, event points A 0, event points B 0, objective points -7, total points 17
2019-01-30 10:17:19 vnengine.exe: [INFO ID 10] at turn 5, loss points A 0, loss points B 33, event points A 0, event points B 0, objective points -14, total points 19
2019-01-30 10:19:01 vnengine.exe: [INFO ID 10] at turn 6, loss points A 0, loss points B 42, event points A 0, event points B 0, objective points -21, total points 21
2019-01-30 10:19:01 vnengine.exe: [INFO ID 10] air attack on turn 6
2019-01-30 10:19:06 vnengine.exe: [INFO ID 10] air attack on turn 6
2019-01-30 10:20:42 vnengine.exe: [INFO ID 10] at turn 7, loss points A 0, loss points B 71, event points A 10, event points B 0, objective points -28, total points 53
2019-01-30 10:20:43 vnengine.exe: [INFO ID 10] air attack on turn 7
2019-01-30 10:22:16 vnengine.exe: [INFO ID 10] at turn 8, loss points A 0, loss points B 80, event points A 15, event points B 0, objective points -35, total points 60
2019-01-30 10:23:58 vnengine.exe: [INFO ID 10] at turn 9, loss points A 1, loss points B 80, event points A 15, event points B 0, objective points -42, total points 52
2019-01-30 10:23:59 vnengine.exe: [INFO ID 10] air attack on turn 9
2019-01-30 10:36:14 vnengine.exe: [INFO ID 10] at turn 10, loss points A 1, loss points B 108, event points A 20, event points B 0, objective points -49, total points 78
2019-01-30 10:37:41 vnengine.exe: [INFO ID 10] at turn 11, loss points A 7, loss points B 120, event points A 25, event points B 0, objective points -56, total points 82
2019-01-30 10:39:03 vnengine.exe: [INFO ID 10] at turn 12, loss points A 7, loss points B 123, event points A 30, event points B 0, objective points -63, total points 83
2019-01-30 10:43:00 vnengine.exe: [INFO ID 10] at turn 13, loss points A 8, loss points B 134, event points A 30, event points B 0, objective points -70, total points 86
2019-01-30 10:45:23 vnengine.exe: [INFO ID 10] at game shutdown , loss points A 8, loss points B 143, event points A 35, event points B 0, objective points -77, total points 93, major defeat 50, minor defeat 100, minor victory 200, major victory 300
Now here's the deal:
[*]With the csttrun script, I can easily automate test trial games of every scenario.
[*]I can repeat the autotests, round after round. (On up to a half dozen systems I have available for testing purposes here.)
[*]From test run to test run, I can save the above highlighted lua.log entry by dumping it to a common victory.dat file.
[*]I can develop another script to analyze the autotest victory results, to highlight the outliers, also to highlight scenarios consistently tilting towards one side or the other.
[*]For greater variety of test results, it would even be possible to switch off the normal SAI (Scripted AI) and just test the scenario with the legacy AI.
By these means, we can get a better handle on which scenario victory conditions might need tweaking, or not.
New uses for the CSEE (Campaign Series [Lua] Event Engine) just keep suggesting themselves!