Category Archives: Game Design

What’s Taking So Long?

This is what a brilliant game publisher looks like: Marten Davies. I was looking for a photo of Marten from the ’80s and I found this 2019 photo (credit: University of Texas). This is exactly what he looked like in ’87. He hasn’t aged a day.

Marten Davies, my first publisher and still a close friend, was painfully accurate when he said, “Take any time estimate that Ezra gives you and multiply it by three.” Now, in my defense, Marten probably said that because I had a contractual obligation to deliver UMS: The Universal Military Simulator in some insanely short period of time like six months and I actually delivered it in eighteen. To my credit I delivered a #1 game (Europe and US). To Marten’s credit, he was very easy to work with and it remains the best experience of my career. The bottom line was that Marten knew that I needed more time to make a better game and he made sure I got it.

So, what’s the hold-up? Well, that would be me, again.

Specifically, it’s the AI.  As many of you know, I’ve been working on AI for wargames for a long time and I was hoping to turn General Staff into a showcase for my work. Some of this has been accomplished 1) Antietam & AI . These are the algorithms that I’ve written about in my doctoral thesis and in various published papers.

The MATE2)Machine Analysis of Tactical Environments, see http://riverviewai.com/ set of tactical AI routines built upwards from low level routines; like 3D Line of Sight (3DLOS) 3) https://www.general-staff.com/tag/3d-line-of-sight/ , Range of Influence (ROI), and least weighted path algorithms 4) https://www.general-staff.com/tag/least-weighted-path-algorithm/ to battlefield analysis 5) Algorithms for Generating Attribute Values for the Classification of Tactical Situations.: http://riverviewai.com/papers/Algorithms-Tactical_Class.pdf , to selection of objectives 6) https://www.general-staff.com/antietam-ai/ , and the implementation of offensive maneuvers 7) Implementing the Five Canonical Offensive Maneuvers in a CGF Environment.:http://riverviewai.com/papers/ImplementingManeuvers.pdf to achieve those objectives.

So, given a list of objectives the AI can implement a tactical plan (Course of Action, or COA); but the AI doesn’t have any comprehension of the greater strategic picture. For example, MATE’s analysis of Gettysburg is that Blue8)MATE always labels the attacker as blue (Confederates) should not attack because Red (Union) has interior lines, a superior defensive position, and greater troop strength.

MATE representation of Gettysburg: Confederates (blue), Union (red). MATE screen shot. Click to enlarge,

MATE output analysis of Gettysburg. Confederates (BLUEFOR) should not attack because REDFOR (Union) has interior lines, a superior defensive position, and greater troop strength.

But, what the AI doesn’t understand is that the Confederates were desperate for a victory on Union soil which required them to attack at Gettysburg.

Screen capture of the Battle of Little Bighorn in the General Staff Scenario Editor. Click to enlarge.

Or consider the tactical positions at the battle of the Little Bighorn (above). My goal is to write a human-level tactical AI and, clearly, the historical attack (splitting forces) by Blue (7th Cavalry) against the far superior Red (Native American) forces was very ill advised (perhaps calling into question the definition of ‘human-level tactical AI’).

After a lot of thought I realized that I needed to create an AI Editor program. You use the Army Editor to create armies for the General Staff Wargaming System, the Map Editor to create maps, the Scenario Editor to place armies on the map and now you use the AI Editor to quickly and easily select strategies for an army. For example:

Screen shot of the General Staff AI Editor being used to program AI strategies for the Union forces at Antietam. Click on a battle group and select strategies from the drop down menus. Click to enlarge.

The AI Editor is very easy to use. You just load a scenario (created in the Scenario Editor, of course) tell the AI to separate the units on the field into battle groups (this creates unique groups based on proximity rather than the Order of Battle hierarchy) and then select strategies from the drop down menus. It’s important to note that these units won’t follow the direct paths between objectives; those are just there to show the order of Objectives. The MATE AI algorithms will be engaged to actually move units on the battlefield and implement tactical maneuvers like envelopment and turning attacks. Also, note the AI Editor creates one set of strategies that the AI will follow, if so instructed, when you actually play a simulation. You will also have the  option to let the Machine Learning algorithms select strategies as well though these may not follow historical strategies.

It took less than a minute to set up Custer’s strategy at Little Bighorn:

Screen shot from the General Staff AI Editor showing Custer’s historical strategy at Little Bighorn. Click to enlarge.

With the creation of the AI Editor the last piece is in place for the General Staff Wargaming System. We now have nine battlefield maps with more on the way (we’re hoping to ship the finished game with about 20 battlefield maps) and fifteen armies (we hope to have about sixty when we’re finished). We’re now registered with Steam and are getting our ‘store’ set up. We will be using Steam for player vs. player games. With a bit of luck we’re hoping to start player vs. player testing in about sixty days.

As always, please feel free to contact me directly with questions, comments or complaints. I’m sorry for the delay, but we’re creating something that hasn’t been done before and that always takes a bit longer.

References

References
1 Antietam & AI
2 Machine Analysis of Tactical Environments, see http://riverviewai.com/
3 https://www.general-staff.com/tag/3d-line-of-sight/
4 https://www.general-staff.com/tag/least-weighted-path-algorithm/
5 Algorithms for Generating Attribute Values for the Classification of Tactical Situations.: http://riverviewai.com/papers/Algorithms-Tactical_Class.pdf
6 https://www.general-staff.com/antietam-ai/
7 Implementing the Five Canonical Offensive Maneuvers in a CGF Environment.:http://riverviewai.com/papers/ImplementingManeuvers.pdf
8 MATE always labels the attacker as blue

Maps, Commanders & Computers

How a map of the battle of Antietam looks to us humans. Screen shot from the General Staff Map Editor. Click to enlarge.

How the computer sees the same map (terrain and elevation). This is actually a screen shot from the Map Editor with the ‘terrain’ and ‘elevation’ layers turned on. Click to enlarge.

Computer vision is the term that we use to describe the process by which a computer ‘sees'1)When describing various AI processes I often use words like ‘see,’ ‘understand,’ and ‘know’ but this should not be taken literally. The last thing I want to do is to get in to a philosophic discussion on computers being sentient. the world in which it operates. Many companies are spending vast sums of money developing driverless or self-driving cars. However, these AI controlled cars have had a number of accidents including four that have resulted in human fatalities.2)https://en.wikipedia.org/wiki/List_of_self-driving_car_fatalities The problem with these systems is not in the AI – anybody who has played a game with simulated traffic (LA Noir, Grand Theft Auto, etc.) knows that. Instead, the problem is with the ‘computer vision’; the system that describes the ‘world view’ in which the AI operates. In one fatality, for example, the computer vision failed to distinguish a white semi tractor trailer from the sky.3)https://www.theguardian.com/technology/2016/jun/30/tesla-autopilot-death-self-driving-car-elon-musk Consequently, the AI did not ‘know’ there was a semi directly in front of it.

In my doctoral research I created a system by which a program could ‘read’ and ‘understand’ a battlefield map4)TIGER: An Unsupervised Machine Learning Tactical Inference Generator http://www.riverviewai.com/download/SidranThesis.html. This is the system that we use in General Staff.

The two images, above, show the difference in how a human commander and a computer ‘see’ the same battlefield. In the top image the woods, the hills and the roads are all obvious to us humans.

The bottom, or ‘computer vision’ image, is a bit of a cheat because this is how the computer information is visually displayed to the human designer in the General Staff Map Editor. The bottom image is created from four map layers (any of which can be displayed or turned off):

The four layers that make up a General Staff map.

The background image layer in a General Staff map is the beautiful artwork shown in the top image. The place names and Victory Points layer are also displayed in the top image. The terrain and elevation layers are described below:

The next three images are actual visual representations of the contents of memory where these terrain values are stored (this is built in to the General Staff Map Editor as a debugging tool):

Screen shot from the Map Editor showing just terrain labeled as ‘water’. Click to enlarge

Screen shot from the General Staff Map Editor showing the terrain labeled as ‘woods’. Click to enlarge.

Screen shot from the General Staff Map Editor showing the terrain labeled ‘road’. Click to enlarge.

A heightmap for Antietam. This is a visual representation of elevation in meters (darker = lower, lighter = higher). Click to enlarge.

To computers, an image is a two-dimensional array; like a giant tic-tac-toe or chess board. Every square (or cell) in that board contains a value called the RGB (Red, Green, Blue5)Except in France where it’s RVB for Rouge, Vert, Bleu  ) value. Colors are described by their RGB value (white, for example, is 255,255,255).  If you find this interesting, here is a link to an interactive RGB chart. General Staff uses a similar system except instead of the RGB system each cell contains a value that represents various terrain types (road, forest, swamp, etc.) and another, identical, two-dimensional array, contains values that represent the elevation in meters. To make matters just a little bit more confusing, computer arrays are actually not two-dimensional (or three-dimensional or n-dimensional) but rather a contiguous block of memory addresses. So, the terrain and elevation arrays in General Staff which appear to be two-dimensional arrays of 1155 x 805 cells are actually just 929,775 bytes long hunks of contiguous memory. To put things in perspective, just those two arrays consume more RAM than was available for everything in the original computer systems (Apple //e, Apple IIGS, Atari ST, MS DOS, Macintosh and Amiga) that I originally wrote UMS for.

So, not surprisingly, a computer stores its map of the world in which it operates as a series of numbers 6)Yes, at the lowest level the numbers are just 1s and 0s but we’ll cover that before the midterm exams. that represent terrain and elevation. But, how does a human commander read a map? I posed this question to Ben Davis, a neuroscientist and wargamer, and he suggested looking at a couple of studies. In one article7)https://www.citylab.com/design/2014/11/how-to-make-a-better-map-according-to-science/382898/, Amy Lobben, head of the Department of Geography at the University of Oregon, said, “…some people process spatial information egocentrically, meaning they understand their environment as it relates to them from a given perspective. Others navigate more allocentrically, meaning they look at how other objects in the environment relate to each other, regardless of their perspective. These preferences are linked to different regions of the brain.” Another8)https://www.researchgate.net/publication/251187268_USING_fMRI_IN_CARTOGRAPHIC_RESEARCH reports the results of fMRI scans while, “subjects perform[ed] navigational map tasks on a computer and again while they were being scanned in a magnetic resonance imaging machine.” to identify specific, “involvement or non-involvement of the brain area.. doing the task.”

So, how computers and human commanders read and process maps is quite different. But, at the end of the day, computers are just manipulating numbers following a series of algorithms. I have written extensively about the algorithms that I have developed including:

  • “Algorithms for Generating Attribute Values for the Classification of Tactical Situations.”
  • “Implementing the Five Canonical Offensive Maneuvers in a CGF Environment.”
  • “Good Decisions Under Fire: Human-Level Strategic and Tactical Artificial Intelligence in Real-World Three-Dimensional Environments.”
  • “Current Methods to Create Human-Level Artificial Intelligence in Computer Simulations and Wargames”
  • Human Level Artificial Intelligence for Computer Simulations and Wargames.
  • An Analysis of Dimdal’s (ex-Jonsson’s) ‘An Optimal Pathfinder for Vehicles in Real-World Terrain Maps’

These papers, and others, can be freely downloaded from my web site here.

As always, please feel free to contact me directly if you have any questions or comments.

References

References
1 When describing various AI processes I often use words like ‘see,’ ‘understand,’ and ‘know’ but this should not be taken literally. The last thing I want to do is to get in to a philosophic discussion on computers being sentient.
2 https://en.wikipedia.org/wiki/List_of_self-driving_car_fatalities
3 https://www.theguardian.com/technology/2016/jun/30/tesla-autopilot-death-self-driving-car-elon-musk
4 TIGER: An Unsupervised Machine Learning Tactical Inference Generator http://www.riverviewai.com/download/SidranThesis.html
5 Except in France where it’s RVB for Rouge, Vert, Bleu
6 Yes, at the lowest level the numbers are just 1s and 0s but we’ll cover that before the midterm exams.
7 https://www.citylab.com/design/2014/11/how-to-make-a-better-map-according-to-science/382898/
8 https://www.researchgate.net/publication/251187268_USING_fMRI_IN_CARTOGRAPHIC_RESEARCH

How Will You Play General Staff?

Every wargame that I’ve designed allows the user to adjust important variables such as leadership and morale and how they affect combat. Usually included is the ability to design your own armies, maps and scenarios as well. However, with the General Staff Wargaming System we’ve added a new feature: the ability to control the realism level before playing a scenario.

The General Staff Wargame has two basic levels of play:

Simulation mode uses HQ units and a chain of command that passes orders down from the General HQ to the sub-commander to the individual unit. How fast the unit responds to the orders are affected by the distance that the courier must travel and the Leadership Value of the HQs.  Simulation mode also employs a more detailed combat resolution model and tracks the actual number of troops in every unit.

An example of Simulation Mode: the path (red line) and time (16 minutes) it will take for a courier to travel from JEB Stuart’s HQ to Munford’s cavalry with orders. Click to enlarge.

Kriegsspiel mode does not have HQ units and friendly units are moved directly and immediately (no transmission of orders via couriers). The combat resolution model is simpler and units have a value of 1-4 displayed by the number of unit icons on the map.

Antietam in Kriegsspiel mode. Notice that there are no HQ units (so no couriers to deliver orders) and units are represented by 1-4 icons. Units in column have a ‘tail’ that indicates the unit strength. Click to enlarge.

In addition to the two game modes (Simulation and Kriegsspiel) there are three Scenario Options:

Order of Battle (OOB) displayed / not displayed. Enemy units with known positions appear dark; enemy units ‘on the map’ but with unknown locations appear grayed out. This, of course, gives the user complete knowledge of the enemy’s OOB and, more importantly, knows when units from certain formations are not directly observable.

A mock up of how the Order of Battle option will appear (note this image was created from screen captures of the Scenario Editor and the Sand Box). Click to enlarge

Only friendly units directly observed by the General HQ are displayed. All other friendly units fade at their last known location. Couriers bring in unit location updates, but they are outdated by the time they arrive.

Only enemy units directly observed by the General HQ are displayed. All other enemy units fade at their last known location. Couriers bring in unit location updates, but they are outdated by the time they arrive.

If both of these above options are selected (only friendly and enemy units that are directly observable by your commanding General HQ) you will be simulating the Fog of War that field commanders of the age of gunpowder experienced.

What General George B. McClellan could actually see at Antietam. Screen shot (General Staff Sand Box). Click to enlarge.

We would like to hear from you and get your opinion on what realism features you will use in General Staff:

“What Ifs” at Little Bighorn

I‘m used to learning a lot when researching a battle but nothing prepared me for the ‘what ifs’ of Little Bighorn. My doctorate is in computer science but I have been an American Civil War buff since I was about five years old. I’m very familiar with brevet Major General George Armstrong Custer’s achievements during the Appomattox campaign where he commanded a division that smashed Pickett’s right flank at Five Forks. I knew that after the war Custer returned to his previous  rank in the U. S. Army of Lt. Colonel, that he fell under a cloud with U. S. Grant, was stripped of his command, and had to beg for it back from President Grant, himself, at the White House.

Brevet Major General George Armstrong Custer taken May 1865. Credit: Civil war photographs, 1861-1865, Library of Congress, Prints and Photographs Division.  Click to enlarge.

And, of course, I knew of the debacle at the Little Bighorn.

After I wrote UMS, the first computer wargame construction system, users began to send me Little Bighorn scenarios that included Gatling guns. I assumed that these were science fiction ‘what if’ scenarios. such as a story I read back in the ’60s about what if Civil War units had automatic weapons from the future. But, recently, while reading Stephen Ambrose’s Crazy Horse and Custer I learned that General Alfred Terry, Custer’s superior and the commander of the expedition, had indeed offered Custer not just three Gatling Guns (manned by troops from the 20th Infantry 1)The Guns Custer Left Behind; Historynet
https://www.historynet.com/guns-custer-left-behind-burden.htm
) but four extra troops from the 2nd U. S. Cavalry.  Custer turned down Terry’s offer of reinforcements and more firepower with these infamous words:

“The Seventh can handle anything it meets.” – Custer to Terry

Photo taken by F. Jay Haynes of one of the Gatling guns that were available to the 7th Cavalry. Click to enlarge.

Screen capture of the Order of Battle of the 7th US Cavalry with the addition of 3 Gatling guns and 4 companies of the 2nd US Cavalry. Click to enlarge.

As for the battle of Little Bighorn, itself, I didn’t know much more than the broad outline that Custer and his command were killed to the last man by an overwhelming number of Native American warriors (this, of course, wasn’t correct as members of Reno’s and Benteen’s columns survived). Custer, himself, was the text book image of hubris and became the butt of late night comedians and humorous pop songs. But the reality turned out to be much more complex and nuanced.

Custer had a reputation of being dashing, headstrong, and gallant; the iconic description of a cavalry commander. The traditional narrative of the disastrous battle of Little Bighorn is that Custer impulsively attacked a vastly superior enemy force; possibly propelled by a belief that Native American warriors were no match for organized cavalry armed with 45-70 trap door carbines. Indeed, Napoleon’s maxim was that, “twenty or more European soldiers armed with the best weapons could take on fifty or even a hundred natives, because of European discipline, training and fire control.” 2)Crazy Horse and Custer” p. 425 Stephen Ambrose To make matters worse, Custer had pushed the 7th mercilessly and by the time they arrived at the battlefield both men and horses were exhausted.

Custer’s plan of attack is also widely condemned as overly optimistic. He split his command of 616 officers and enlisted men of the 7th cavalry into three battalions. If the four companies of 2nd Cavalry had come along, Custer’s force would be 30% larger.3)Ibid The main force led by himself would be the right flanking column, Reno would have the left flanking attack column and Benteen and the pack train would be in the middle.  Custer also drastically underestimated the Native American force at about 1,500.

In theory, Custer’s plan of attack wasn’t that bad:

  • If Custer was up against a force that was only two or three times his size and
  • If Reno had pressed home his attack drawing the Native American warriors east toward him and
  • If Custer had been able to cross the Little Bighorn above the Native American camp and
  • If Custer had been able to attack the village while the warriors were engaged with Reno

Custer might have, indeed, had a great victory that would have propelled him to the US Presidency (as he had hoped). But none of these suppositions were correct.

Screen shot of the General Staff Scenario Editor where the battle of Little Bighorn scenario is being set up. Not the Order of Battle of the 7th Cavalry (with attached units of the 2nd Cavalry and Gatling guns) on the left. Units are positioned by clicking and dragging them from the Order of Battle Table on the left onto the map. Click to enlarge.

So, the question remains: what value for Leadership would you give to Custer?

Screen shot of the General Staff Army Editor showing the slider that sets the Leadership value for a commander. What value would you give Custer? Click to enlarge

By the way, there will be three separate Little Bighorn scenarios for the General Staff Wargaming System: historically accurate Order of Battle for the 7th Cavalry, the 7th Cavalry plus four companies of the 2nd US Cavalry and 7th Cavalry plus four companies of the 2nd US Cavalry and 3 Gatling guns.

References

References
1 The Guns Custer Left Behind; Historynet
https://www.historynet.com/guns-custer-left-behind-burden.htm
2 Crazy Horse and Custer” p. 425 Stephen Ambrose
3 Ibid

New Battles on Old Battlefields

Plate 1 from, “The American Kriegsspiel. a Game for Practicing the Art of War upon a Topographical Map,” by W. R. Livermore, Captain, Corps of Engineers, U S Army published in 1882. Click to enlarge.

When I was about ten years old my father brought home an original copy of Esposito’s The West Point Atlas of American Wars. My life was forever changed. I had always been interested in military history and maps but now I could clearly see the complexity of tactical maneuvers and how these battles unfolded.

In previous blogs, I have written about my introduction to wargaming through Avalon Hill’s superb games. While diving deeper into the history of American wargaming I discovered Livermore’s American Kriegsspiel (by the way, it is available online from the Library of Congress here). When I first saw Plate 1, above, I couldn’t help but think of the officers at West Point, ‘practicing the Art of War’ on that black and white map.

Consequently, one of the first things that I wanted to do with the General Staff Map Editor was bring Plate 1 back to life so new battles could be fought on it:

The American Kriegsspiel map imported into the General Staff Map Editor and converted for use with the General Staff Wargaming System. Grid lines are optional. Click to enlarge.

My good friend, Ed Isenberg, did the colorization and we added some new features in the Map Editor to support importing rivers, roads and other terrain features, from a PhotoShop image (for more information see the online documentation for the Map Editor here).

Importing the American Kriegsspiel map into the General Staff Wargaming System was a good beta test of the Map Editor. If you are an early backer you should have the location and password to download it. If, for some reason, you don’t have these, please contact me directly.

One of the interesting features of the General Staff Wargaming System is that any two armies created in the Army Editor can be combined to create a battle scenario on any map created in the Map Editor. Thinking about all the ‘mix and match’ combinations I decided to create an army, in the Army Editor, from the Order of Battle Table (OOB) for the French Imperial Guard, August 1, 1813 from George Nafziger’s, superb “Napoleon at Dresden,” book:

The French Imperial Guard Order of Battle in the General Staff Army Editor. Click to enlarge.

We are currently beta testing the General Staff Scenario Editor. Here I’ve imported the American Kriegsspiel map (from above) and the French Imperial Guard (from above). To position units, just click and drag from the OOB on the left:

Screen shot of the General Staff Scenario Editor where the French Imperial Guard is being positioned on the original American Kriegsspiel map. Click to enlarge.

Hopefully, this will get your imagination going and thinking about what maps, armies and scenarios you would like to see. In addition to the ability to create your own new scenarios on old battlefields, General Staff will ship with 30 historical scenarios (the list is published in previous blogs).

Please feel free to contact me directly if you have any questions.