Random WW2 Generation
-
I am starting work on a program that generates random but somewhat plausible World War Two's.
I am taking as a divergence point the end of WW1 in 1918. Given the political turmoil after WW1 and the Great Depression, there were many possible ways internal and external politics could have developed. Almost any ideology could have come to power in almost any country and even countries with similar ideologies could have come to blows.
I am planning on writing the program in Excel VBA. Excel has many tools for managing data which should make this easy to write. If the program works well, I could convert it to some other language.
As a base for my scenario generator I will use World War 2 V3 (Anniversary Edition) because of that version's popularity, lack of complexity and a less distorted map than many other mods. If this mod is well received, I may try using other maps as a base.
The program will conduct the following steps
- Write the non-changing part of the xml file
- Assign each territory to a country based upon the 1918 situation
- Resolve the military and political conflicts of the interwar years and reassign the country controlling territories as a result.
- Align some countries with larger countries so they are considered to be the same in the game, like Canada being part of Britain. Others will be considered to be neutrals.
- Assign the remaining major and medium countries to alliances
- Determine the order of play
- Add the starting units and resources
- Try to balance the game by adding additional units and resources to the alliance that needs them.
I will post details about each of the steps soon.
-
Step 1 The non-changing part of the XML file
This code will remain the same
- Territory definitions
- Connections
- Unit list
- Delegates
- Production costs
- Unit attachments
- Territory attachments
- Most game properties
I will probably drop tech for simplicity. Objectives will be used in a limited way to be discussed in a future post.
I may vary the production values of territories in 50% of the generated scenarios to reflect actual economic data.
-
@RogerCooper love this
-
Step 2 Assign each territory to a country
There are three levels of countries
-
Major Countries
Russia, Germany, Britain, Japan, United States
The world's leading powers. If active they are always separate players. At least one of these powers must be trying to change the current world order. -
Medium Countries
France, Italy, China
Powers of regional importance. If active they are usually separate players, but sometimes they are combined with a major country. -
Minor Countries
Everyone else
They are never their own player. They may be combined with a major or medium country. If not they will be part of the "Victim" or "Impassable" country
There are three dummy countries, "Victim", "Impassable" and "Split"
The "Victim" country has units but no moves or production. It can invaded by aggressor nations and is passively aligned with their opponents. This reflects countries with only defensive capabilities. This includes minor countries which have not been combined with a player country and major & medium countries that have fallen into disorder. Yugoslavia was a historical example.
The "Impassable" country is impassable of course. This reflects countries which can't be invaded because of some combination of difficult terrain, military strength, good relations with both sides or the lack of anything worth attacking. Switzerland and Afghanistan were historical examples.
The "Split" country reflects territories occupied by two distinct countries such as "Northwest Europe" and "Spain". They will be assigned randomly in step 3.
Some countries are conditional in that depending on step 3, they may come into existence or not such as Poland or an independent India.
Composite countries are combinations of different real countries which were in the same territory can be treated together such as the Baltic States and Central America.
Some countries, especially British colonies in the Middle East are protectorates. They are technically independent countries but they are likely to be combined with their colonial overlords in step 4. Egypt is a good example. Iraq is an example of a wayward protectorate attempting to ally with another country.
-
-
Step 3 Resolve Interwar Period
There were a number of conflicts in the interwar period which could change what country controls a specific territory. Most only involved a single territory such as the Rif War or the Indian Independence movement. Territories controlled by the "Split" country must be assigned to a specific country.
There are three conflicts that deserve special consideration, Russian Civil War, Russo-Polish War and the Reunification of China.
Russian Civil War In the context of this scenario generator, it does not matter which side wins as somebody will end up controlling the core Russian areas of Russia, Archangel and Karelia. However there was a possibility of creating a stable country in Siberia controlling multiple areas. Peripheral areas of Russia may gain independence.
Russo-Polish War as closely related to the Russian Civil War. Plausible outcomes range from Russian reconquering Poland to a powerful Polish state controlling Poland, East Poland, Baltic States, Ukraine, East Ukraine and Belorussia. However the outcomes must all involve a contiguous Polish state. Note that even a maximum Polish state remains a minor country.
The order of resolution needs to be
- Siberian independence
- Peripheral territories status
- Russo-Polish War
War of Chinese Reunification By the end of WW1, warlords have already taken control of China. In effect each territory was an independent state. If the Northern Expedition had failed, China would have remained divided.
An additional complication was the Japanese invasion. The Japanese may decide not to invade, to only take Manchuria or to take Kiangsu as well. Note that if the Japan and China end up on the same side, Kiangsu will be returned to China.
Even if China is reunified, there still be independent states formed, representing undefeated warlords or Communist territory. There is also a chance that Kwangtung ends up under effective Chinese control.
In any case the usual China build rules and territory restrictions apply, as the KMT would not even under the best of circumstances had enough time to build a modern industrial economy. If China is allied with Japan, than the movement restrictions are China are lifted.
-
Step 4 Align minor countries with larger countries
As minor countries don't have their unit images or turns they will be aligned with medium and major countries. Medium countries will also sometimes be aligned with major countries.
When countries are aligned, their territories and units become part of the larger country, like Canada with Britain in the original game.
Each minor and medium country will be entered into a table giving their chances of being aligned. In addition, countries may be aligned into the dummy countries of "Victim" and "Impassable".
Note that this may in effect undo step 3. For example India may gain independence in step 3 and become a close ally of Britain in step 4. The effect will be the same, but the notes will be different.
This is also when protectorates are handled. Egypt will be probably be aligned with Britain, but it may escape British control and be aligned with some other country.
If China has become aligned with another country, then the special Chinese rules don't apply.
-
Step 5 Assign alliances
There will to be two alliances "Aggressor" and "Status Quo" The Aggressor alliance is attempting to reorder the world through military force, while the Status Quo is trying to resist that.
As I am not trying to track the ideologies you can assume that unlikely alliances are probably the result of ideological conflicts and similarities.
The first step is to determine the lead aggressor. The lead aggressor is randomly chosen from the major countries. The lead aggressor goes first and will receive more units.
Next the lead status quo power is chosen from the remaining major countries. The lead status quo power receives extra resources.
The remaing major and medium powers are randomly assigned as follows
- 50% Status Quo
- 30% Aggressor
- 10% Victim
- 10% Impassable
The "Victim" nation is a passive member of the Status Quo alliance. It is neutral with regards to the rest of the Status Quo alliance and at war with the Aggessor alliance. The Status Quo alliance can't assist the "Victim" but if the liberate a territory they don't need to return it. Each turn the lead Status Quo power receives a bonus of 1 PU for every Victim-held territory. Note that is major or medium power has been reassigned to the victim nation, that means it is in civil war or some other internal disorder.
The "Impassable" nation is neutral to everyone and out of play.
There is a 50% change of delayed entry of each Status Quo nation and a 25% change of delayed entry for each Aggessor nation (other than the lead aggressor). The delayed entry nation comes in a randomly chosen turn between 2 and 5 at the start of the lead aggressor turn. It is possible that every Status Quo nation is delayed entry, allowing the lead aggessor to focus on victims.
Historically, there was one territorial dispute directly involving major & medium countries, Alsace-Lorraine. Ethnically German but historically French it would be difficult (but not impossible) to resolve the dispute and conflict is likely. There will be a 30% chance that Germany is lead aggressor, while France is a status quo power that is active immediately. This will probably not work out well for France.
-
I tested this to the game ends. No one builds anything,
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login