Copyright by Hunter Johnson, all rights reserved.
ufrss.pl "^[M-X]:"
or if you don't want to play the French or Italians
ufrss.pl "-(French)|(Italian)"
It uses perl's extended regular expressions (after
checking for the initial minus sign) so check the online
documentation for all the gory details.
The code
itself is as compact as I could make it, because it's short anyway and
I don't have to worry about anyone else maintaining it. It happens to
be obfuscated, but not intentionally so.
The
output starts with an indicator as to whether the person running the
script should play the attacker or defender in the selected
scenario.
#!perl
# Change the above line to have the full path to your perl executable
# as needed
#
# ufrss.pl -- Up Front Random Scenario Selector
# Author: Hunter Johnson <hunter@hunterandlori.com>
# Code copyright by Hunter Johnson, all rights reserved
#
srand(time^($$+($$<<15)));
($p = shift || "") =~ s/^-//;
print (("Attacker ", "Defender ")[rand 2],
$a[rand(@a=grep($&?!/$p/:/$p/,<DATA>))]);
__END__
A: Meeting of Patrols French American
A: Meeting of Patrols German American
A: Meeting of Patrols German French
A: Meeting of Patrols German Italian
A: Meeting of Patrols German Russian
A: Meeting of Patrols Italian American
A: Meeting of Patrols Italian French
A: Meeting of Patrols Italian Russian
B: City Fight French American
B: City Fight German American
B: City Fight German French
B: City Fight German Italian
B: City Fight German Russian
B: City Fight Italian American
B: City Fight Italian French
B: City Fight Italian Russian
C: Assaulting a Fortification American French
C: Assaulting a Fortification American German
C: Assaulting a Fortification American Italian
C: Assaulting a Fortification French American
C: Assaulting a Fortification French German
C: Assaulting a Fortification French Italian
C: Assaulting a Fortification German American
C: Assaulting a Fortification German French
C: Assaulting a Fortification German Italian
C: Assaulting a Fortification German Russian
C: Assaulting a Fortification Italian American
C: Assaulting a Fortification Italian French
C: Assaulting a Fortification Italian German
C: Assaulting a Fortification Italian Russian
C: Assaulting a Fortification Russian German
C: Assaulting a Fortification Russian Italian
D: Rear Guard Action American French
D: Rear Guard Action American German
D: Rear Guard Action American Italian
D: Rear Guard Action French American
D: Rear Guard Action French German
D: Rear Guard Action French Italian
D: Rear Guard Action German American
D: Rear Guard Action German French
D: Rear Guard Action German Italian
D: Rear Guard Action German Russian
D: Rear Guard Action Italian American
D: Rear Guard Action Italian French
D: Rear Guard Action Italian German
D: Rear Guard Action Italian Russian
D: Rear Guard Action Russian German
D: Rear Guard Action Russian Italian
E: Armored Recon Patrol American French
E: Armored Recon Patrol American German
E: Armored Recon Patrol American Italian
E: Armored Recon Patrol American Japanese
E: Armored Recon Patrol British French
E: Armored Recon Patrol British German
E: Armored Recon Patrol British Italian
E: Armored Recon Patrol British Japanese
E: Armored Recon Patrol French American
E: Armored Recon Patrol French British
E: Armored Recon Patrol French German
E: Armored Recon Patrol French Italian
E: Armored Recon Patrol French Japanese
E: Armored Recon Patrol German American
E: Armored Recon Patrol German British
E: Armored Recon Patrol German French
E: Armored Recon Patrol German Italian
E: Armored Recon Patrol German Russian
E: Armored Recon Patrol Italian American
E: Armored Recon Patrol Italian British
E: Armored Recon Patrol Italian French
E: Armored Recon Patrol Italian German
E: Armored Recon Patrol Italian Russian
E: Armored Recon Patrol Japanese American
E: Armored Recon Patrol Japanese British
E: Armored Recon Patrol Japanese French
E: Armored Recon Patrol Japanese Russian
E: Armored Recon Patrol Russian German
E: Armored Recon Patrol Russian Italian
E: Armored Recon Patrol Russian Japanese
F: The Infantry's Iron Fist American French
F: The Infantry's Iron Fist American German
F: The Infantry's Iron Fist American Italian
F: The Infantry's Iron Fist American Japanese
F: The Infantry's Iron Fist British French
F: The Infantry's Iron Fist British German
F: The Infantry's Iron Fist British Italian
F: The Infantry's Iron Fist British Japanese
F: The Infantry's Iron Fist French American
F: The Infantry's Iron Fist French British
F: The Infantry's Iron Fist French German
F: The Infantry's Iron Fist French Italian
F: The Infantry's Iron Fist French Japanese
F: The Infantry's Iron Fist German American
F: The Infantry's Iron Fist German British
F: The Infantry's Iron Fist German French
F: The Infantry's Iron Fist German Italian
F: The Infantry's Iron Fist German Russian
F: The Infantry's Iron Fist Italian American
F: The Infantry's Iron Fist Italian British
F: The Infantry's Iron Fist Italian French
F: The Infantry's Iron Fist Italian German
F: The Infantry's Iron Fist Italian Russian
F: The Infantry's Iron Fist Japanese American
F: The Infantry's Iron Fist Japanese British
F: The Infantry's Iron Fist Japanese French
F: The Infantry's Iron Fist Japanese Russian
F: The Infantry's Iron Fist Russian German
F: The Infantry's Iron Fist Russian Italian
F: The Infantry's Iron Fist Russian Japanese
G: Block Clearing American French
G: Block Clearing American German
G: Block Clearing American Italian
G: Block Clearing American Japanese
G: Block Clearing British French
G: Block Clearing British German
G: Block Clearing British Italian
G: Block Clearing British Japanese
G: Block Clearing French American
G: Block Clearing French British
G: Block Clearing French German
G: Block Clearing French Italian
G: Block Clearing French Japanese
G: Block Clearing German American
G: Block Clearing German British
G: Block Clearing German French
G: Block Clearing German Italian
G: Block Clearing German Russian
G: Block Clearing Italian American
G: Block Clearing Italian British
G: Block Clearing Italian French
G: Block Clearing Italian German
G: Block Clearing Italian Russian
G: Block Clearing Japanese American
G: Block Clearing Japanese British
G: Block Clearing Japanese French
G: Block Clearing Japanese Russian
G: Block Clearing Russian German
G: Block Clearing Russian Italian
G: Block Clearing Russian Japanese
H: Armored Advance American French
H: Armored Advance American German
H: Armored Advance American Italian
H: Armored Advance American Japanese
H: Armored Advance British French
H: Armored Advance British German
H: Armored Advance British Italian
H: Armored Advance British Japanese
H: Armored Advance French American
H: Armored Advance French British
H: Armored Advance French German
H: Armored Advance French Italian
H: Armored Advance French Japanese
H: Armored Advance German American
H: Armored Advance German British
H: Armored Advance German French
H: Armored Advance German Italian
H: Armored Advance German Russian
H: Armored Advance Italian American
H: Armored Advance Italian British
H: Armored Advance Italian French
H: Armored Advance Italian German
H: Armored Advance Italian Russian
H: Armored Advance Japanese American
H: Armored Advance Japanese British
H: Armored Advance Japanese French
H: Armored Advance Japanese Russian
H: Armored Advance Russian German
H: Armored Advance Russian Italian
H: Armored Advance Russian Japanese
I: Partisans German French Partisan
I: Partisans German Russian Partisan
K: Elite Troops on the Attack American+ French-
K: Elite Troops on the Attack American+ German-
K: Elite Troops on the Attack American+ Italian-
K: Elite Troops on the Attack American+ Japanese-
K: Elite Troops on the Attack British+ French-
K: Elite Troops on the Attack British+ German-
K: Elite Troops on the Attack British+ Italian-
K: Elite Troops on the Attack British+ Japanese-
K: Elite Troops on the Attack French+ American-
K: Elite Troops on the Attack French+ British-
K: Elite Troops on the Attack French+ German-
K: Elite Troops on the Attack French+ Italian-
K: Elite Troops on the Attack French+ Japanese-
K: Elite Troops on the Attack German+ American-
K: Elite Troops on the Attack German+ British-
K: Elite Troops on the Attack German+ French-
K: Elite Troops on the Attack German+ Russian-
K: Elite Troops on the Attack Italian+ American-
K: Elite Troops on the Attack Italian+ British-
K: Elite Troops on the Attack Italian+ French-
K: Elite Troops on the Attack Italian+ German-
K: Elite Troops on the Attack Italian+ Russian-
K: Elite Troops on the Attack Japanese+ American-
K: Elite Troops on the Attack Japanese+ British-
K: Elite Troops on the Attack Japanese+ French-
K: Elite Troops on the Attack Japanese+ Russian-
K: Elite Troops on the Attack Russian+ German-
K: Elite Troops on the Attack Russian+ Italian-
K: Elite Troops on the Attack Russian+ Japanese-
L: Outpost Line American French
L: Outpost Line American German
L: Outpost Line American Italian
L: Outpost Line American Japanese
L: Outpost Line British French
L: Outpost Line British German
L: Outpost Line British Italian
L: Outpost Line British Japanese
L: Outpost Line French American
L: Outpost Line French British
L: Outpost Line French German
L: Outpost Line French Italian
L: Outpost Line French Japanese
L: Outpost Line German American
L: Outpost Line German British
L: Outpost Line German French
L: Outpost Line German Italian
L: Outpost Line German Russian
L: Outpost Line Italian American
L: Outpost Line Italian British
L: Outpost Line Italian French
L: Outpost Line Italian German
L: Outpost Line Italian Russian
L: Outpost Line Japanese American
L: Outpost Line Japanese British
L: Outpost Line Japanese French
L: Outpost Line Japanese Russian
L: Outpost Line Russian German
L: Outpost Line Russian Italian
L: Outpost Line Russian Japanese
M: Patrol German British
M: Patrol Japanese American
M: Patrol Japanese British
M: Patrol Japanese French
M: Patrol Japanese Russian
N: Jungle Meeting Engagement Japanese American
N: Jungle Meeting Engagement Japanese British
N: Jungle Meeting Engagement Japanese French
N: Jungle Meeting Engagement Variant Japanese American
N: Jungle Meeting Engagement Variant Japanese British
O: Assaulting a Pillbox American Japanese
O: Assaulting a Pillbox British Japanese
O: Assaulting a Pillbox Japanese American
O: Assaulting a Pillbox Japanese British
P: Evacuation American French
P: Evacuation American German
P: Evacuation American Italian
P: Evacuation American Japanese
P: Evacuation British French
P: Evacuation British German
P: Evacuation British Italian
P: Evacuation British Japanese
P: Evacuation French American
P: Evacuation French British
P: Evacuation French German
P: Evacuation French Italian
P: Evacuation French Japanese
P: Evacuation German American
P: Evacuation German British
P: Evacuation German French
P: Evacuation German Italian
P: Evacuation German Russian
P: Evacuation Italian American
P: Evacuation Italian British
P: Evacuation Italian French
P: Evacuation Italian German
P: Evacuation Italian Russian
P: Evacuation Japanese American
P: Evacuation Japanese British
P: Evacuation Japanese French
P: Evacuation Japanese Russian
P: Evacuation Russian German
P: Evacuation Russian Italian
P: Evacuation Russian Japanese
Q: Delaying Action American Japanese
Q: Delaying Action British German
Q: Delaying Action British Japanese
Q: Delaying Action German British
Q: Delaying Action Japanese American
Q: Delaying Action Japanese British
Q: Delaying Action Japanese French
Q: Delaying Action Japanese Russian
Q: Delaying Action Russian Japanese
R: Paratroop Drop American+ French
R: Paratroop Drop American+ German
R: Paratroop Drop American+ Italian
R: Paratroop Drop American+ Japanese
R: Paratroop Drop British+ French
R: Paratroop Drop British+ German
R: Paratroop Drop British+ Italian
R: Paratroop Drop British+ Japanese
R: Paratroop Drop German+ American
R: Paratroop Drop German+ British
R: Paratroop Drop German+ French
R: Paratroop Drop German+ Italian
R: Paratroop Drop German+ Russian
R: Paratroop Drop Italian+ American
R: Paratroop Drop Italian+ British
R: Paratroop Drop Italian+ French
R: Paratroop Drop Italian+ German
R: Paratroop Drop Italian+ Russian
R: Paratroop Drop Russian+ German
R: Paratroop Drop Russian+ Italian
R: Paratroop Drop Russian+ Japanese
S: Jungle Assault American Japanese
S: Jungle Assault British Japanese
S: Jungle Assault Japanese American
S: Jungle Assault Japanese British
T: Armor Patrol American French
T: Armor Patrol American German
T: Armor Patrol American Italian
T: Armor Patrol American Japanese
T: Armor Patrol British French
T: Armor Patrol British German
T: Armor Patrol British Italian
T: Armor Patrol British Japanese
T: Armor Patrol French American
T: Armor Patrol French British
T: Armor Patrol French German
T: Armor Patrol French Italian
T: Armor Patrol French Japanese
T: Armor Patrol German American
T: Armor Patrol German British
T: Armor Patrol German French
T: Armor Patrol German Italian
T: Armor Patrol German Russian
T: Armor Patrol Italian American
T: Armor Patrol Italian British
T: Armor Patrol Italian French
T: Armor Patrol Italian German
T: Armor Patrol Italian Russian
T: Armor Patrol Japanese American
T: Armor Patrol Japanese British
T: Armor Patrol Japanese French
T: Armor Patrol Japanese Russian
T: Armor Patrol Russian German
T: Armor Patrol Russian Italian
T: Armor Patrol Russian Japanese
U: Armor American French
U: Armor American German
U: Armor American Italian
U: Armor American Japanese
U: Armor British French
U: Armor British German
U: Armor British Italian
U: Armor British Japanese
U: Armor French American
U: Armor French British
U: Armor French German
U: Armor French Italian
U: Armor French Japanese
U: Armor German American
U: Armor German British
U: Armor German French
U: Armor German Italian
U: Armor German Russian
U: Armor Italian American
U: Armor Italian British
U: Armor Italian French
U: Armor Italian German
U: Armor Italian Russian
U: Armor Japanese American
U: Armor Japanese British
U: Armor Japanese French
U: Armor Japanese Russian
U: Armor Russian German
U: Armor Russian Italian
U: Armor Russian Japanese
V: Ambush American+ French
V: Ambush American+ German
V: Ambush American+ Italian
V: Ambush American+ Japanese
V: Ambush British+ French
V: Ambush British+ German
V: Ambush British+ Italian
V: Ambush British+ Japanese
V: Ambush French+ American
V: Ambush French+ British
V: Ambush French+ German
V: Ambush French+ Italian
V: Ambush French+ Japanese
V: Ambush German+ American
V: Ambush German+ British
V: Ambush German+ French
V: Ambush German+ Italian
V: Ambush German+ Russian
V: Ambush Italian+ American
V: Ambush Italian+ British
V: Ambush Italian+ French
V: Ambush Italian+ German
V: Ambush Italian+ Russian
V: Ambush Japanese+ American
V: Ambush Japanese+ British
V: Ambush Japanese+ French
V: Ambush Japanese+ Russian
V: Ambush Russian+ German
V: Ambush Russian+ Italian
V: Ambush Russian+ Japanese
W: Surprise Attack American French
W: Surprise Attack American German
W: Surprise Attack American Italian
W: Surprise Attack American Japanese
W: Surprise Attack British French
W: Surprise Attack British German
W: Surprise Attack British Italian
W: Surprise Attack British Japanese
W: Surprise Attack French American
W: Surprise Attack French British
W: Surprise Attack French German
W: Surprise Attack French Italian
W: Surprise Attack French Japanese
W: Surprise Attack German American
W: Surprise Attack German British
W: Surprise Attack German French
W: Surprise Attack German Italian
W: Surprise Attack German Russian
W: Surprise Attack Italian American
W: Surprise Attack Italian British
W: Surprise Attack Italian French
W: Surprise Attack Italian German
W: Surprise Attack Italian Russian
W: Surprise Attack Japanese American
W: Surprise Attack Japanese British
W: Surprise Attack Japanese French
W: Surprise Attack Japanese Russian
W: Surprise Attack Russian German
W: Surprise Attack Russian Italian
W: Surprise Attack Russian Japanese
X: Surrounded American French
X: Surrounded American German
X: Surrounded American Italian
X: Surrounded American Japanese
X: Surrounded British French
X: Surrounded British German
X: Surrounded British Italian
X: Surrounded British Japanese
X: Surrounded French American
X: Surrounded French British
X: Surrounded French German
X: Surrounded French Italian
X: Surrounded French Japanese
X: Surrounded German American
X: Surrounded German British
X: Surrounded German French
X: Surrounded German Italian
X: Surrounded German Russian
X: Surrounded Italian American
X: Surrounded Italian British
X: Surrounded Italian French
X: Surrounded Italian German
X: Surrounded Italian Russian
X: Surrounded Japanese American
X: Surrounded Japanese British
X: Surrounded Japanese French
X: Surrounded Japanese Russian
X: Surrounded Russian German
X: Surrounded Russian Italian
X: Surrounded Russian Japanese
AA: Meeting of Patrols: Tobruk German British
BB: City Fight: Stalingrad German Russian
BB: City Fight: Stalingrad Russian German
BB: City Fight: Stalingrad Variant German Russian
BB: City Fight: Warsaw German+ Polish
BB: City Fight: Warsaw German+ Russian Partisan
BB: City Fight: Arnhem German+ British+
BB: City Fight: Manila Japanese American
BB: City Fight: Rostov Italian Russian
CC: Assaulting a Fortification: Normandy American+ German-
CC: Assaulting a Fortification: Guam American+ Japanese-
OO: Assaulting a Pillbox: Iwo Jima Japanese American
28-4/A: Hammer from the Sky German+ Belgian
28-4/B: Encounter at the Bulge German American
28-4/C: The Deep, Dark Woods German American
28-4/D: Incident on the Elbe American Russian+
28-5/A: Spiders in the Grass American+ Japanese
28-5/A: Spiders in the Grass British+ Japanese
28-5/A: Spiders in the Grass Variant Gurkha+ Japanese
501: City Fight in Four French American
501: City Fight in Four French British
501: City Fight in Four German American
501: City Fight in Four German British
501: City Fight in Four German French
501: City Fight in Four German Italian
501: City Fight in Four German Russian
501: City Fight in Four Italian American
501: City Fight in Four Italian British
501: City Fight in Four Italian French
501: City Fight in Four Italian Russian
501: City Fight in Four Japanese American
501: City Fight in Four Japanese British
501: City Fight in Four Japanese French
501: City Fight in Four Japanese Russian
Historical 501: Arnhem (9/44) German+ British+
Historical 501: Arras (5/40) British German
Historical 501: Bastogne (12/44) German American+
Historical 501: Berlin (4/45) Russian German-
Historical 501: Briancon (6/40) Italian French
Historical 501: Buna (1/43) Australian Japanese
Historical 501: Dieppe (8/42) Canadian German
Historical 501: Gela (7/43) American Italian
Historical 501: Hanoi (3/45) Japanese French
Historical 501: Harbin (8/45) Japanese Russian
Historical 501: Kasserine (2/43) German American-
Historical 501: Kohima (4/44) Japanese British
Historical 501: Manila (2/45) Japanese American
Historical 501: Paris (6/44) German French Partisan
Historical 501: Rostov (7/42) Italian Russian-
Historical 501: Sedan (5/40) German French
Historical 501: Sidi Barrani (12/40) British Italian
Historical 501: Stalingrad (10/42) German Russian
Historical 501: Taiyuan (1943) Japanese CCP Partisan
RR1/1: Bailey Bridge Crossing American+ German
RR1/2: Find Der Fuhrer Russian German
RR1/3: Force: Nine British+ German-
RR1/4: Fuel Shortage German American
RR1/5: Night Jungle Assault Japanese American
RR2/1: Nightmare in Stalingrad Russian+ German+
RR2/2: Le Ponte du Morte: 862 French+ German
RR2/3: A Round Up at Il Fortino American+ German
RR3/1: Getting the Flock Out German New Zealander
RR3/3: Ham and Jam: Pegasus Bridge British German
RR4/1: Hit The Beaches Juno Beach Canadian German-
RR4/2: Hit The Beaches Bloody Omaha American German
RR4/3: Hit The Beaches Sealion German British-
RR4/4: Hit The Beaches Sandy Hook German American
RR4/5: Finn-Sickle Russian+ Finnish
RR5/1: Iwo Jima Mop-Up Detail American Japanese
RR5/1: Iwo Jima Mop-Up Detail Variant American Japanese
RR6/1: Sicily Crossing The Furiano River American German
RR6/2: Salerno You Never Know ... American German
RR6/3: Anzio The Big Prize American German
RR6/4: Anzio Intel Wants a Prisoner American German
RR6/5: Anzio Expand the Bridgehead American German
RR6/6: Southern France Die Hards American German
RR6/7: Germany The Colmar Pocket American German
RR6/8: Audie at Holtzwihr German American
RR7/1: Monte la Difensa American+ German
RR7/2: The Saddle American+ German
RR7/3: Bir Hacheim Italian+ French+
RR7/4: Baraque de Fraiture German American
RR8/1: Ortona: The Western Stalingrad Canadian German
RR8/2: The Ogre American German
RR8/2: The Ogre Russian German
RR8/2: The Ogre German American
RR8/2: The Ogre German Russian
RR8/3: Tread to Tread American German
RR8/3: Tread to Tread Russian German
RR8/3: Tread to Tread Gotterdammerung Russian German+
RR9/5: Partisan Ship German Russian Partisan
RR10/1: Oh No! There Goes Tokyo! Godzilla Japanese
AH/1: Wasp In A Hornet's Nest British German
ARA/A: Meeting of Patrols French British
ARA/A: Meeting of Patrols German British
ARA/A: Meeting of Patrols Italian British
ARA/B: City Fight French British
ARA/B: City Fight German British
ARA/B: City Fight Italian British
ARA/B: City Fight Japanese American
ARA/B: City Fight Japanese British
ARA/B: City Fight Japanese French
ARA/B: City Fight Japanese Russian
ARA/C: Assaulting a Fortification British French
ARA/C: Assaulting a Fortification British German
ARA/C: Assaulting a Fortification British Italian
ARA/C: Assaulting a Fortification French British
ARA/C: Assaulting a Fortification German British
ARA/C: Assaulting a Fortification Italian British
ARA/D: Rear Guard Action British French
ARA/D: Rear Guard Action British German
ARA/D: Rear Guard Action British Italian
ARA/D: Rear Guard Action French British
ARA/D: Rear Guard Action German British
ARA/D: Rear Guard Action Italian British
ARA/I: Partisans American Japanese Partisan
ARA/I: Partisans German Italian Partisan
ARA/I: Partisans Italian Russian Partisan
ARA/I: Partisans Japanese British Partisan
ARA/I: Partisans Japanese French Partisan
ARA/Y: Anti-Tank Strongpoint American French
ARA/Y: Anti-Tank Strongpoint American German
ARA/Y: Anti-Tank Strongpoint American Italian
ARA/Y: Anti-Tank Strongpoint American Japanese
ARA/Y: Anti-Tank Strongpoint British French
ARA/Y: Anti-Tank Strongpoint British German
ARA/Y: Anti-Tank Strongpoint British Italian
ARA/Y: Anti-Tank Strongpoint British Japanese
ARA/Y: Anti-Tank Strongpoint French American
ARA/Y: Anti-Tank Strongpoint French British
ARA/Y: Anti-Tank Strongpoint French German
ARA/Y: Anti-Tank Strongpoint French Italian
ARA/Y: Anti-Tank Strongpoint French Japanese
ARA/Y: Anti-Tank Strongpoint German American
ARA/Y: Anti-Tank Strongpoint German British
ARA/Y: Anti-Tank Strongpoint German French
ARA/Y: Anti-Tank Strongpoint German Italian
ARA/Y: Anti-Tank Strongpoint German Russian
ARA/Y: Anti-Tank Strongpoint Italian American
ARA/Y: Anti-Tank Strongpoint Italian British
ARA/Y: Anti-Tank Strongpoint Italian French
ARA/Y: Anti-Tank Strongpoint Italian German
ARA/Y: Anti-Tank Strongpoint Italian Russian
ARA/Y: Anti-Tank Strongpoint Japanese American
ARA/Y: Anti-Tank Strongpoint Japanese British
ARA/Y: Anti-Tank Strongpoint Japanese French
ARA/Y: Anti-Tank Strongpoint Japanese Russian
ARA/Y: Anti-Tank Strongpoint Russian German
ARA/Y: Anti-Tank Strongpoint Russian Italian
ARA/Y: Anti-Tank Strongpoint Russian Japanese
JC/1: Raid! Russian Partisan German
JHJ/4: The Commissar's House German Russian
JHJ/5: In Sight of the Volga German Russian
JHJ/20: Taking the Left American German
JHJ/A108: Sudden Death French+ German-
JHJ/A13: Able at Cesaro American Italian
JHJ/A20: Counterattack at Sidi Bou Zid German American
JHJ/A47: White Tigers Japanese+ Gurkha+
JHJ/G15: Bone of Contention German French Partisan
JHJ/G18: GOYA American+ German-
JHJ/G45: Halha River Bridge Japanese+ Russian
JHJ/N: Soldiers of Destruction Russian+ German+
JHJ/O1: Uphill Battle American French
JHJ/O1: Uphill Battle American German
JHJ/O1: Uphill Battle American Italian
JHJ/O1: Uphill Battle American Japanese
JHJ/O1: Uphill Battle British French
JHJ/O1: Uphill Battle British German
JHJ/O1: Uphill Battle British Italian
JHJ/O1: Uphill Battle British Japanese
JHJ/O1: Uphill Battle French American
JHJ/O1: Uphill Battle French British
JHJ/O1: Uphill Battle French German
JHJ/O1: Uphill Battle French Italian
JHJ/O1: Uphill Battle French Japanese
JHJ/O1: Uphill Battle German American
JHJ/O1: Uphill Battle German British
JHJ/O1: Uphill Battle German French
JHJ/O1: Uphill Battle German Italian
JHJ/O1: Uphill Battle German Russian
JHJ/O1: Uphill Battle Italian American
JHJ/O1: Uphill Battle Italian British
JHJ/O1: Uphill Battle Italian French
JHJ/O1: Uphill Battle Italian German
JHJ/O1: Uphill Battle Italian Russian
JHJ/O1: Uphill Battle Japanese American
JHJ/O1: Uphill Battle Japanese British
JHJ/O1: Uphill Battle Japanese French
JHJ/O1: Uphill Battle Japanese Russian
JHJ/O1: Uphill Battle Russian German
JHJ/O1: Uphill Battle Russian Italian
JHJ/O1: Uphill Battle Russian Japanese
JHJ/O2: Rock Clearing German American
JHJ/O2: Rock Clearing Italian American
JHJ/O2: Rock Clearing Japanese American
JHJ/T: Pavlov's House German+ Russian+
JHJ/T2: The Puma Prowls German Russian
JHJ/T8: Aachen's Pall American German
JHJ/T16: Strayer's Strays American+ German-
JHJ/TAC19: Christmas Fields German American+
JHJ/Z24: Men of Stone Japanese+ American
JS/1: Remagen Bridge American German-
JS/2: Safi American- French*
JWM/1: Werden's Ambush American+ Japanese+
ME/1: The Factory German Russian
PO/1: Bloody Ridge Japanese American
PO/2: Alligator Creek Japanese American
PO/3: The Long Patrol American Japanese
PO/4: Bugles and Bullets Chinese American
PO/5: Bloody Tarawa American Japanese
RU/1: City Fist American French
RU/1: City Fist American German
RU/1: City Fist American Italian
RU/1: City Fist American Japanese
RU/1: City Fist British French
RU/1: City Fist British German
RU/1: City Fist British Italian
RU/1: City Fist British Japanese
RU/1: City Fist French American
RU/1: City Fist French British
RU/1: City Fist French German
RU/1: City Fist French Italian
RU/1: City Fist French Japanese
RU/1: City Fist German American
RU/1: City Fist German British
RU/1: City Fist German French
RU/1: City Fist German Italian
RU/1: City Fist German Russian
RU/1: City Fist Italian American
RU/1: City Fist Italian British
RU/1: City Fist Italian French
RU/1: City Fist Italian German
RU/1: City Fist Italian Russian
RU/1: City Fist Japanese American
RU/1: City Fist Japanese British
RU/1: City Fist Japanese French
RU/1: City Fist Japanese Russian
RU/1: City Fist Russian German
RU/1: City Fist Russian Italian
RU/1: City Fist Russian Japanese
RU/2: Inner City Block Clearing American French
RU/2: Inner City Block Clearing American German
RU/2: Inner City Block Clearing American Italian
RU/2: Inner City Block Clearing American Japanese
RU/2: Inner City Block Clearing British French
RU/2: Inner City Block Clearing British German
RU/2: Inner City Block Clearing British Italian
RU/2: Inner City Block Clearing British Japanese
RU/2: Inner City Block Clearing French American
RU/2: Inner City Block Clearing French British
RU/2: Inner City Block Clearing French German
RU/2: Inner City Block Clearing French Italian
RU/2: Inner City Block Clearing French Japanese
RU/2: Inner City Block Clearing German American
RU/2: Inner City Block Clearing German British
RU/2: Inner City Block Clearing German French
RU/2: Inner City Block Clearing German Italian
RU/2: Inner City Block Clearing German Russian
RU/2: Inner City Block Clearing Italian American
RU/2: Inner City Block Clearing Italian British
RU/2: Inner City Block Clearing Italian French
RU/2: Inner City Block Clearing Italian German
RU/2: Inner City Block Clearing Italian Russian
RU/2: Inner City Block Clearing Japanese American
RU/2: Inner City Block Clearing Japanese British
RU/2: Inner City Block Clearing Japanese French
RU/2: Inner City Block Clearing Japanese Russian
RU/2: Inner City Block Clearing Russian German
RU/2: Inner City Block Clearing Russian Italian
RU/2: Inner City Block Clearing Russian Japanese
RU/3: King Tiger American+ German
RU/3: King Tiger British+ German
RU/3: King Tiger German+ American
RU/3: King Tiger German+ British
RU/3: King Tiger German+ Russian
RU/3: King Tiger Russian+ German
RU/4: Amphibious Assault American+ German-
RU/4: Amphibious Assault British+ German-
RU/5: Achtung! American+ German-
RU/5: Achtung! British+ German-
RU/5: Achtung! Russian+ German-
RU/6: Elite Troops on the Run American German+
RU/6: Elite Troops on the Run British German+
RU/6: Elite Troops on the Run German American+
RU/6: Elite Troops on the Run German British+
RU/6: Elite Troops on the Run Russian German+
RU/7: The Prisoner American+ French
RU/7: The Prisoner American+ German
RU/7: The Prisoner American+ Italian
RU/7: The Prisoner American+ Japanese
RU/7: The Prisoner British+ French
RU/7: The Prisoner British+ German
RU/7: The Prisoner British+ Italian
RU/7: The Prisoner British+ Japanese
RU/7: The Prisoner French+ American
RU/7: The Prisoner French+ British
RU/7: The Prisoner French+ German
RU/7: The Prisoner French+ Italian
RU/7: The Prisoner French+ Japanese
RU/7: The Prisoner German+ American
RU/7: The Prisoner German+ British
RU/7: The Prisoner German+ French
RU/7: The Prisoner German+ Italian
RU/7: The Prisoner German+ Russian
RU/7: The Prisoner Italian+ American
RU/7: The Prisoner Italian+ British
RU/7: The Prisoner Italian+ French
RU/7: The Prisoner Italian+ German
RU/7: The Prisoner Italian+ Russian
RU/7: The Prisoner Japanese+ American
RU/7: The Prisoner Japanese+ British
RU/7: The Prisoner Japanese+ French
RU/7: The Prisoner Japanese+ Russian
RU/7: The Prisoner Russian+ German
RU/7: The Prisoner Russian+ Italian
RU/7: The Prisoner Russian+ Japanese
RU/8: Partisan Patrol German French Partisan
RU/8: Partisan Patrol German Italian Partisan
RU/8: Partisan Patrol German Russian Partisan
RU/9: Partisan Fist German French Partisan
RU/9: Partisan Fist German Russian Partisan
RU/10: Partisan Surprise French Partisan German-
RU/10: Partisan Surprise Russian Partisan German-
RU/11: City Partisans German French Partisan
RU/11: City Partisans German Russian Partisan
RU/12: Pursuit German+ French
RU/13: Jungle Partisans American Japanese Partisan
RU/13: Jungle Partisans Japanese American Partisan
RU/13: Jungle Partisans Japanese British Partisan
RU/14: Counterattack American French
RU/14: Counterattack American German
RU/14: Counterattack American Italian
RU/14: Counterattack American Japanese
RU/14: Counterattack British French
RU/14: Counterattack British German
RU/14: Counterattack British Italian
RU/14: Counterattack British Japanese
RU/14: Counterattack French American
RU/14: Counterattack French British
RU/14: Counterattack French German
RU/14: Counterattack French Italian
RU/14: Counterattack French Japanese
RU/14: Counterattack German American
RU/14: Counterattack German British
RU/14: Counterattack German French
RU/14: Counterattack German Italian
RU/14: Counterattack German Russian
RU/14: Counterattack Italian American
RU/14: Counterattack Italian British
RU/14: Counterattack Italian French
RU/14: Counterattack Italian German
RU/14: Counterattack Italian Russian
RU/14: Counterattack Japanese American
RU/14: Counterattack Japanese British
RU/14: Counterattack Japanese French
RU/14: Counterattack Japanese Russian
RU/14: Counterattack Russian German
RU/14: Counterattack Russian Italian
RU/14: Counterattack Russian Japanese
RU/15: Armored Pillbox Assault British German
RU/16: Machine Gun Nest American French
RU/16: Machine Gun Nest American German
RU/16: Machine Gun Nest American Italian
RU/16: Machine Gun Nest American Japanese
RU/16: Machine Gun Nest British French
RU/16: Machine Gun Nest British German
RU/16: Machine Gun Nest British Italian
RU/16: Machine Gun Nest British Japanese
RU/16: Machine Gun Nest French American
RU/16: Machine Gun Nest French British
RU/16: Machine Gun Nest French German
RU/16: Machine Gun Nest French Italian
RU/16: Machine Gun Nest French Japanese
RU/16: Machine Gun Nest German American
RU/16: Machine Gun Nest German British
RU/16: Machine Gun Nest German French
RU/16: Machine Gun Nest German Italian
RU/16: Machine Gun Nest German Russian
RU/16: Machine Gun Nest Italian American
RU/16: Machine Gun Nest Italian British
RU/16: Machine Gun Nest Italian French
RU/16: Machine Gun Nest Italian German
RU/16: Machine Gun Nest Italian Russian
RU/16: Machine Gun Nest Japanese American
RU/16: Machine Gun Nest Japanese British
RU/16: Machine Gun Nest Japanese French
RU/16: Machine Gun Nest Japanese Russian
RU/16: Machine Gun Nest Russian German
RU/16: Machine Gun Nest Russian Italian
RU/16: Machine Gun Nest Russian Japanese
RU/I: Partisans German Italian Partisan
SC/1: Rodger Young's Assault American Japanese+