SD 5 AI testing
Posted: Tue Nov 05, 2013 5:31 am
This is the 5th thread in my series on enhancements for SC3 to improve the facilities for scenario designers. This one is concerned with improving facilities for testing AI scripts and a further potentially interesting possibility that might arise from that.
I guess that all players will be aware that the AI enjoys some advantages as compared with a human player but those that have not looked at the way scenarios are created might not be aware of the potential extent of these advantages.
Players can increase the capabilities of the AI by two adjustments - first by setting the difficulty level and second by changing the experience advantage which the AI units will enjoy. The manual will tell you that the difficulty setting can increase the spotting range for AI units and the amount of plunder that you or the AI might receive but this is only part of the story. In the standard 1939 scenario there are, for example, well over 100 UNIT events where the AI will be given additional units to guard threatened areas or to build up for an attack.
Scenario designers can qualify events both by the degree of difficulty the player has chosen and also by which side the AI is playing. Just for example as a designer I could if I wish not trouble the AXIS AI with a decision as to whether the Shinano is to be completed as a CV or a BB but rather allow it to have both. Thus if you have played a scenario versus the AI with you as the Axis and then you try your luck playing the Allies you should not assume that the AI is facing precisely the same challenges that you did. An example might be the supply restriction that Malta creates for the Axis in North Africa - when the AI is the Axis I might set a supply event with a trigger that fired 10% of the time. However, I could have an identical event that fires 20% of the time that only operates when a human is playing the Axis. The designers of the standard scenarios seem to use a convention where they label events that are specifically for the AI but that is only a convention and does not have to be followed.
So what is it that I would like to see changed about this useful ability to load the dice in favour of the AI? Well when you are developing and testing a scenario it is very useful to be able to set the AI to play itself which it will happily do without the constraints of sleep or eating or other interruptions. You can do this by pressing Function F3 after setting a scenario to start. the AI then operates both sides but as far as I can tell it does so within the constraints set when the scenario started and it plays as if it is a human. Thus the side that was set up as human does not enjoy the benefits that might accrue to the proper AI. In addition to the game playing as it currently does, I would like to have the ability to specify whether the two AIs should be playing with a level playing field either both having the "AI" benefits or neither having them. I think this would help with testing and development because you could in theory create scenarios with many differences between the AI and the human version and both aspects need to be tested.
The interesting possibility that this change would enable is that scenario designers could create AIs that might battle each other on standard scenarios in the same way that humans can now fight each other over a standard scenario. After all Big Blue and other chess playing computers have engaged in epic battles.
Regards
Mike
I guess that all players will be aware that the AI enjoys some advantages as compared with a human player but those that have not looked at the way scenarios are created might not be aware of the potential extent of these advantages.
Players can increase the capabilities of the AI by two adjustments - first by setting the difficulty level and second by changing the experience advantage which the AI units will enjoy. The manual will tell you that the difficulty setting can increase the spotting range for AI units and the amount of plunder that you or the AI might receive but this is only part of the story. In the standard 1939 scenario there are, for example, well over 100 UNIT events where the AI will be given additional units to guard threatened areas or to build up for an attack.
Scenario designers can qualify events both by the degree of difficulty the player has chosen and also by which side the AI is playing. Just for example as a designer I could if I wish not trouble the AXIS AI with a decision as to whether the Shinano is to be completed as a CV or a BB but rather allow it to have both. Thus if you have played a scenario versus the AI with you as the Axis and then you try your luck playing the Allies you should not assume that the AI is facing precisely the same challenges that you did. An example might be the supply restriction that Malta creates for the Axis in North Africa - when the AI is the Axis I might set a supply event with a trigger that fired 10% of the time. However, I could have an identical event that fires 20% of the time that only operates when a human is playing the Axis. The designers of the standard scenarios seem to use a convention where they label events that are specifically for the AI but that is only a convention and does not have to be followed.
So what is it that I would like to see changed about this useful ability to load the dice in favour of the AI? Well when you are developing and testing a scenario it is very useful to be able to set the AI to play itself which it will happily do without the constraints of sleep or eating or other interruptions. You can do this by pressing Function F3 after setting a scenario to start. the AI then operates both sides but as far as I can tell it does so within the constraints set when the scenario started and it plays as if it is a human. Thus the side that was set up as human does not enjoy the benefits that might accrue to the proper AI. In addition to the game playing as it currently does, I would like to have the ability to specify whether the two AIs should be playing with a level playing field either both having the "AI" benefits or neither having them. I think this would help with testing and development because you could in theory create scenarios with many differences between the AI and the human version and both aspects need to be tested.
The interesting possibility that this change would enable is that scenario designers could create AIs that might battle each other on standard scenarios in the same way that humans can now fight each other over a standard scenario. After all Big Blue and other chess playing computers have engaged in epic battles.
Regards
Mike
