diff --git a/vasl_templates/webapp/data/ordnance/finnish.json b/vasl_templates/webapp/data/ordnance/finnish.json index 92a6649..74f1d0c 100644 --- a/vasl_templates/webapp/data/ordnance/finnish.json +++ b/vasl_templates/webapp/data/ordnance/finnish.json @@ -17,7 +17,7 @@ }, { "name": "81 Krh/32", "type": "MTR", - "capabilities2": { "s": [ [8,"N1"], "\u2020" ], "IR": [ [null,"3+"], "\u2020" ] }, + "capabilities2": { "s": [ [8,"N1+"], "\u2020" ], "IR": [ [null,"3+"], "\u2020" ] }, "comments": [ "QSU" ], "note_number": "3\u2020", "notes": [ "A" ], diff --git a/vasl_templates/webapp/static/snippets.js b/vasl_templates/webapp/static/snippets.js index a519eab..4718deb 100644 --- a/vasl_templates/webapp/static/snippets.js +++ b/vasl_templates/webapp/static/snippets.js @@ -1292,9 +1292,12 @@ function _check_capability_timestamp( capabilities, timestamp, nat, scenario_the } } - // remove any trailing "+" (FIXME! What does it even mean? Doesn't make sense :-/) - if ( timestamp.substring( timestamp.length-1 ) === "+" ) + // check for a trailing "+" + var hasTrailingPlus = false ; + if ( timestamp.substring( timestamp.length-1 ) === "+" ) { + hasTrailingPlus = true ; timestamp = timestamp.substring( 0, timestamp.length-1 ) ; + } // check if there is anything left if ( ! timestamp ) { @@ -1319,7 +1322,7 @@ function _check_capability_timestamp( capabilities, timestamp, nat, scenario_the // check if the capabilitity is available if ( timestamp >= 50 ) timestamp -= 40 ; - if ( scenario_year > 1940 + timestamp ) + if ( hasTrailingPlus && scenario_year > 1940 + timestamp ) return capabilities[0] ; else if ( scenario_year === 1940 + timestamp ) { if( !month || scenario_month >= month ) diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/axis-minor-common/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/axis-minor-common/1945.txt index 9e3dba3..9153ed2 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/axis-minor-common/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/axis-minor-common/1945.txt @@ -11,9 +11,9 @@ Ur wz. 35 s18-1100 50 A H R No Long Range | Animal-Packed Kanon PUV vz. 37(t) A4[1S]† 51† B E H S QSU Bohler M35 52† A H R S QSU | No Gunshield | Animal-Packed -5cm PaK 38(g) A4[3]3[4] A3 53† B E H R S QSU +5cm PaK 38(g) A4[3]3[4] 53† B E H R S QSU 7.5cm PaK 97/38(g) H5[3+] s6 H5 s6 54† B E R QSU -7.5cm PaK 40(g) A4[3]3[4] A3 55† B E H R S QSU +7.5cm PaK 40(g) A4[3]3[4] 55† B E H R S QSU Skoda M15 56† A B C H R S QSU | Animal-Packed Canon de 75 mle 1897 s7 s7 57 B R QSU Skoda M29 AP6 AP6 58† A R S Animal-Packed diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1940.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1940.txt index 5e55d62..d4049fd 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1940.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1940.txt @@ -4,7 +4,7 @@ Name Capabilities (effective) ------------------- ---------------------------------- ---------------------------------- --- ------------------ --------------------------------------------------------------------------------------------------------------------------------------------------------------- 47 Krh/41 1 A Animal-Packed 50 Krh/39(r) 2† A B Animal-Packed | No Captured Use penalty for Russians -81 Krh/32 IR[3+]† s8[N1]† 3† A QSU | Animal-Packed +81 Krh/32 IR[3+]† s8[N1+]† 3† A QSU | Animal-Packed 81 Savunheitin M/42 s† s† 4† A QSU | Smoke only | ∞ Smoke | Range: 2-18 | Animal-Packed 120 Krh/40 5† n/a QSU Boys ATR(b) 6† n/a AP TK# = 5 | No Long Range diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1941.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1941.txt index 7d02c99..47631a4 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1941.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1941.txt @@ -4,7 +4,7 @@ Name Capabilities (effective) ------------------- ---------------------------------- ---------------------------------- --- ------------------ --------------------------------------------------------------------------------------------------------------------------------------------------------------- 47 Krh/41 1 A Animal-Packed 50 Krh/39(r) 2† A B Animal-Packed | No Captured Use penalty for Russians -81 Krh/32 IR[3+]† s8[N1]† 3† A QSU | Animal-Packed +81 Krh/32 IR[3+]† s8[N1+]† 3† A QSU | Animal-Packed 81 Savunheitin M/42 s† s† 4† A QSU | Smoke only | ∞ Smoke | Range: 2-18 | Animal-Packed 120 Krh/40 5† n/a QSU Boys ATR(b) 6† n/a AP TK# = 5 | No Long Range diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1942.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1942.txt index 5126d94..56baa5b 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1942.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1942.txt @@ -4,7 +4,7 @@ Name Capabilities (effective) ------------------- ---------------------------------- ---------------------------------- --- ------------------ --------------------------------------------------------------------------------------------------------------------------------------------------------------- 47 Krh/41 1 A Animal-Packed 50 Krh/39(r) 2† A B Animal-Packed | No Captured Use penalty for Russians -81 Krh/32 IR[3+]† s8[N1]† s8† 3† A QSU | Animal-Packed +81 Krh/32 IR[3+]† s8[N1+]† s8† 3† A QSU | Animal-Packed 81 Savunheitin M/42 s† s† 4† A QSU | Smoke only | ∞ Smoke | Range: 2-18 | Animal-Packed 120 Krh/40 5† n/a QSU Boys ATR(b) 6† n/a AP TK# = 5 | No Long Range diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1943.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1943.txt index 653c6f8..488cea6 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1943.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1943.txt @@ -4,7 +4,7 @@ Name Capabilities (effective) ------------------- ---------------------------------- ---------------------------------- --- ------------------ --------------------------------------------------------------------------------------------------------------------------------------------------------------- 47 Krh/41 1 A Animal-Packed 50 Krh/39(r) 2† A B B# = 12 | Animal-Packed | No Captured Use penalty for Russians -81 Krh/32 IR[3+]† s8[N1]† IR† s8† 3† A QSU | Animal-Packed +81 Krh/32 IR[3+]† s8[N1+]† IR† s8† 3† A QSU | Animal-Packed 81 Savunheitin M/42 s† s† 4† A QSU | Smoke only | ∞ Smoke | Range: 2-25 | Animal-Packed 120 Krh/40 5† n/a QSU Boys ATR(b) 6† n/a AP TK# = 5 | No Long Range diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1944.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1944.txt index 38e13ca..bafbf79 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1944.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1944.txt @@ -4,7 +4,7 @@ Name Capabilities (effective) ------------------- ---------------------------------- ---------------------------------- --- ------------------ --------------------------------------------------------------------------------------------------------------------------------------------------------------- 47 Krh/41 1 A Animal-Packed 50 Krh/39(r) 2† A B B# = 12 | Animal-Packed | No Captured Use penalty for Russians -81 Krh/32 IR[3+]† s8[N1]† IR† s8† 3† A QSU | Animal-Packed +81 Krh/32 IR[3+]† s8[N1+]† IR† s8† 3† A QSU | Animal-Packed 81 Savunheitin M/42 s† s† 4† A QSU | Smoke only | ∞ Smoke | Range: 2-25 | Animal-Packed 120 Krh/40 5† n/a QSU Boys ATR(b) 6† n/a AP TK# = 5 | No Long Range diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1945.txt index 813fd59..cbaad3a 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/finnish/1945.txt @@ -4,7 +4,7 @@ Name Capabilities (effective) ------------------- ---------------------------------- ---------------------------------- --- ------------------ --------------------------------------------------------------------------------------------------------------------------------------------------------------- 47 Krh/41 1 A Animal-Packed 50 Krh/39(r) 2† A B B# = 12 | Animal-Packed | No Captured Use penalty for Russians -81 Krh/32 IR[3+]† s8[N1]† IR† s8† 3† A QSU | Animal-Packed +81 Krh/32 IR[3+]† s8[N1+]† IR† s8† 3† A QSU | Animal-Packed 81 Savunheitin M/42 s† s† 4† A QSU | Smoke only | ∞ Smoke | Range: 2-25 | Animal-Packed 120 Krh/40 5† n/a QSU Boys ATR(b) 6† n/a AP TK# = 5 | No Long Range diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1943.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1943.txt index c464642..f889a3a 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1943.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1943.txt @@ -33,6 +33,6 @@ s 10cm K 18 H6 s8 H6 s8 3.7cm FlaK 43 29 n/a 8.8cm FlaK 18 o. 36 A5[2]4[3]3[4] LF [88L†, 1 ROF, B11] A4 LF [88L†, 1 ROF, B11] 30 C† N 2cm Tankbüsche S-18 1† AxM A No Long Range | Animal-Packed -4.7 cm PaK 36(t) A5[1]4[2] A4 2† n/a QSU +4.7 cm PaK 36(t) A5[1]4[2] 2† n/a QSU 7.5 cm Geb G36 H7† H7† 3† Ge O HEAT ≥ 26 hexes: As * Gun | QSU | Animal-Packed 10.5 cm Geb H40 H8 H8 4† Ge O QSU | Animal-Packed diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1944.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1944.txt index 8db6e6a..d2edbab 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1944.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1944.txt @@ -33,6 +33,6 @@ s 10cm K 18 H6 s8 H6 s8 3.7cm FlaK 43 29 n/a 8.8cm FlaK 18 o. 36 A5[2]4[3]3[4] LF [88L†, 1 ROF, B11] A3 LF [88L†, 1 ROF, B11] 30 C† N 2cm Tankbüsche S-18 1† AxM A No Long Range | Animal-Packed -4.7 cm PaK 36(t) A5[1]4[2] A4 2† n/a QSU +4.7 cm PaK 36(t) A5[1]4[2] 2† n/a QSU 7.5 cm Geb G36 H7† H7† 3† Ge O HEAT ≥ 26 hexes: As * Gun | QSU | Animal-Packed 10.5 cm Geb H40 H8 H8 4† Ge O QSU | Animal-Packed diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1945.txt index 3b669d8..c499ef8 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/german/1945.txt @@ -7,12 +7,12 @@ Name Capabilities (effective) 10cm NbW 35 s10 s10 3 O QSU | Animal-Packed 12cm GrW 42 s8 s8 4† n/a QSU 2.8cm sPzB 41 5† A† N P QSU | Use APCR TK vs AFV | ∞ APCR | En Portee NA -3.7cm PaK 35/36 A4[1]5[2]4[3]3[4] H6[9]† A3 H6[9]† 6 B† N P QSU | En Portee NA +3.7cm PaK 35/36 A4[1]5[2]4[3]3[4] H6[9]† H6[9]† 6 B† N P QSU | En Portee NA 4.2cm lePaK 41 7 A† NT QSU | Use APCR TK vs AFV | ∞ APCR -5cm PaK 38 A5[1]6[2]5[3]4[4] A4 8† N QSU +5cm PaK 38 A5[1]6[2]5[3]4[4] 8† N QSU 7.5cm PaK 97/38 H6 s7 H6 s7 9 NT QSU -7.5cm PaK 40 A5[2]4[3]3[4] s7 A3 s7 10† NT QSU -7.62cm PaK 36r A5[2]4[3]3[4] s6 A3 s6 11† N QSU +7.5cm PaK 40 A5[2]4[3]3[4] s7 s7 10† NT QSU +7.62cm PaK 36r A5[2]4[3]3[4] s6 s6 11† N QSU 8.8cm PaK 43 LF [88†, 1 ROF, B11, M4, -1] LF [88†, 1 ROF, B11, M4, -1] 12 C† 8.8cm PaK 43/41 13 n/a 12.8cm K 81/1 14 n/a No Move @@ -31,8 +31,8 @@ s 10cm K 18 H6 s8 H6 s8 2cm FlaKvierling 38 27† N 4 TK DR 3.7cm FlaK 36 o. 37 H5[9]† H5[9]† 28 B† N 3.7cm FlaK 43 29 n/a -8.8cm FlaK 18 o. 36 A5[2]4[3]3[4] LF [88L†, 1 ROF, B11] A3 LF [88L†, 1 ROF, B11] 30 C† N +8.8cm FlaK 18 o. 36 A5[2]4[3]3[4] LF [88L†, 1 ROF, B11] LF [88L†, 1 ROF, B11] 30 C† N 2cm Tankbüsche S-18 1† AxM A No Long Range | Animal-Packed -4.7 cm PaK 36(t) A5[1]4[2] A4 2† n/a QSU +4.7 cm PaK 36(t) A5[1]4[2] 2† n/a QSU 7.5 cm Geb G36 H7† H7† 3† Ge O HEAT ≥ 26 hexes: As * Gun | QSU | Animal-Packed 10.5 cm Geb H40 H8 H8 4† Ge O QSU | Animal-Packed diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1943.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1943.txt index 9129985..c77c76d 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1943.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1943.txt @@ -18,7 +18,7 @@ Name Capabilities (effective) # Notes Comm 76.2mm P obr. 00/02P s8 s8 13 n/a QSU | Horse-Drawn 76.2mm P obr. 02/30 s8 s8 14 n/a QSU | Horse-Drawn 76.2mm P obr. 39 A4[2]5[3]6[4]7[5] s8 A5 s8 15† n/a QSU -76.2mm P obr. 36 A4[2] s8 A4 s8 16† n/a QSU +76.2mm P obr. 36 A4[2] s8 s8 16† n/a QSU 85mm P obr. 44 A5[4]6[5] s8 s8 17 n/a QSU 107mm P obr. 10/30 s8 s8 18 n/a Horse-Drawn 122mm G obr. 10/30 s8 s8 19 n/a Horse-Drawn diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1944.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1944.txt index d058b03..c28697e 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1944.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1944.txt @@ -18,7 +18,7 @@ Name Capabilities (effective) # Notes Comm 76.2mm P obr. 00/02P s8 s8 13 n/a QSU | Horse-Drawn 76.2mm P obr. 02/30 s8 s8 14 n/a QSU | Horse-Drawn 76.2mm P obr. 39 A4[2]5[3]6[4]7[5] s8 A6 s8 15† n/a QSU -76.2mm P obr. 36 A4[2] s8 A4 s8 16† n/a QSU +76.2mm P obr. 36 A4[2] s8 s8 16† n/a QSU 85mm P obr. 44 A5[4]6[5] s8 A5 s8 17 n/a QSU 107mm P obr. 10/30 s8 s8 18 n/a Horse-Drawn 122mm G obr. 10/30 s8 s8 19 n/a Horse-Drawn diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1945.txt index 424fcc8..b927a21 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/russian/1945.txt @@ -18,7 +18,7 @@ Name Capabilities (effective) # Notes Comm 76.2mm P obr. 00/02P s8 s8 13 n/a QSU | Horse-Drawn 76.2mm P obr. 02/30 s8 s8 14 n/a QSU | Horse-Drawn 76.2mm P obr. 39 A4[2]5[3]6[4]7[5] s8 A7 s8 15† n/a QSU -76.2mm P obr. 36 A4[2] s8 A4 s8 16† n/a QSU +76.2mm P obr. 36 A4[2] s8 s8 16† n/a QSU 85mm P obr. 44 A5[4]6[5] s8 A6 s8 17 n/a QSU 107mm P obr. 10/30 s8 s8 18 n/a Horse-Drawn 122mm G obr. 10/30 s8 s8 19 n/a Horse-Drawn diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1943.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1943.txt index 9c7bb3b..0e8435a 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1943.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1943.txt @@ -3,7 +3,7 @@ Name Capabilities (effective) # Notes Comments ------------------- -------------- ------------- --- ------- -------------------------------------- Minomet vz. 36 28 A QSU | Animal-Packed -Kanon PUV vz. 36(t) A5[1]4[2] A4 29 E QSU | Black TH# +Kanon PUV vz. 36(t) A5[1]4[2] 29 E QSU | Black TH# leIG 18(g) H7[3+] H7 30 A E QSU | Animal-Packed | Black TH# Skoda M37(K4) s6 s6 31 n/a Skoda 47L40(t) 32† E QSU | vs Aircraft: ROF = 2 | Black TH# diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1944.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1944.txt index f135291..7f4e916 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1944.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1944.txt @@ -3,7 +3,7 @@ Name Capabilities (effective) # Notes Comments ------------------- -------------- ------------- --- ------- -------------------------------------- Minomet vz. 36 28 A QSU | Animal-Packed -Kanon PUV vz. 36(t) A5[1]4[2] A4 29 E QSU | Black TH# +Kanon PUV vz. 36(t) A5[1]4[2] 29 E QSU | Black TH# leIG 18(g) H7[3+] H7 30 A E QSU | Animal-Packed | Black TH# Skoda M37(K4) s6 s6 31 n/a Skoda 47L40(t) 32† E QSU | vs Aircraft: ROF = 2 | Black TH# diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1945.txt index ac102d6..49d86d5 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/ordnance/slovakian/1945.txt @@ -3,7 +3,7 @@ Name Capabilities (effective) # Notes Comments ------------------- -------------- ------------- --- ------- -------------------------------------- Minomet vz. 36 28 A QSU | Animal-Packed -Kanon PUV vz. 36(t) A5[1]4[2] A4 29 E QSU | Black TH# +Kanon PUV vz. 36(t) A5[1]4[2] 29 E QSU | Black TH# leIG 18(g) H7[3+] H7 30 A E QSU | Animal-Packed | Black TH# Skoda M37(K4) s6 s6 31 n/a Skoda 47L40(t) 32† E QSU | vs Aircraft: ROF = 2 | Black TH# diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/axis-minor-common/1944.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/axis-minor-common/1944.txt index 8bedbe3..aa10311 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/axis-minor-common/1944.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/axis-minor-common/1944.txt @@ -9,14 +9,14 @@ PzKpfw IB(g) sD6 CS 2 sD6 CS 2 31† C E H K†1 B D E H R CMG: AA ok (TCA only) | CE: +1 Rear Turret & Indirect Fire | French ESB H39(f) ® AP10 CS 2 ® AP10 CS 2 33† A†1 B C D E H CMG: AA ok (TCA only) | CE: +1 Rear Turret & Indirect Fire | French ESB LT vz 35(g) sD5 CS 4 sD5 CS 4 34† B E R S German ESB -LT vz 38(t)A A3[1]4[2]3[3] sD6 CS 4 A3 sD6 CS 4 35† E H R S Czech ESB -LT vz 38(t)E A4[2]3[3] sD7 CS 4 A3 sD7 CS 4 35† B E H S Czech ESB +LT vz 38(t)A A3[1]4[2]3[3] sD6 CS 4 sD6 CS 4 35† E H R S Czech ESB +LT vz 38(t)E A4[2]3[3] sD7 CS 4 sD7 CS 4 35† B E H S Czech ESB S35(f) CS 4 CS 4 36† A†1 D E H S Immob: dr ≤ 4 [EXC: mines, Direct Fire vs front/rear] | CMG: AA ok (TCA only) | CE: +1 Rear Turret & Indirect Fire | French ESB PzKpfw IIIL(g) A5[2]4[3]3[4] sD5 CS 5 A3 sD5 CS 5 37† C E H O†1 Q R German ESB PzKpfw IIIN(g) H8[3+] s8 sD7 CS 5 H8 s8 sD7 CS 5 38† E O†1 Q R S German ESB PzKpfw IVD(g) AP7 H5[3+] s8 sD7 CS 5 AP7 H5 s8 sD7 CS 5 39† E Q R German ESB PzKpfw IVF1(g) AP7 H5[3+] s8 sD7 CS 6 AP7 H5 s8 sD7 CS 6 39† B E H Q R German ESB -PzKpfw IVH(g) A4[2]3[3] s7 sD5 CS 6 A3 s7 sD5 CS 6 39† B E H O†1 Q R German ESB +PzKpfw IVH(g) A4[2]3[3] s7 sD5 CS 6 s7 sD5 CS 6 39† B E H O†1 Q R German ESB StuG IIIG(g) A3[4] s8 sD7 CS 4 A3 s8 sD7 CS 4 40† B E H Q R AAMG: VCA only | German ESB JgdPz 38(t) A3[4] HE7 CS 4 A3 HE7 CS 4 41† B E H AAMG: BU only, Rider NA, elevation restrictions | Czech ESB SPW 250/1(g) CS 4 CS 4 42 E R German ESB diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/axis-minor-common/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/axis-minor-common/1945.txt index f9c8fac..09afd92 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/axis-minor-common/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/axis-minor-common/1945.txt @@ -9,16 +9,16 @@ PzKpfw IB(g) sD6 CS 2 sD6 CS 2 31† C E H K†1 B D E H R CMG: AA ok (TCA only) | CE: +1 Rear Turret & Indirect Fire | French ESB H39(f) ® AP10 CS 2 ® AP10 CS 2 33† A†1 B C D E H CMG: AA ok (TCA only) | CE: +1 Rear Turret & Indirect Fire | French ESB LT vz 35(g) sD5 CS 4 sD5 CS 4 34† B E R S German ESB -LT vz 38(t)A A3[1]4[2]3[3] sD6 CS 4 A3 sD6 CS 4 35† E H R S Czech ESB -LT vz 38(t)E A4[2]3[3] sD7 CS 4 A3 sD7 CS 4 35† B E H S Czech ESB +LT vz 38(t)A A3[1]4[2]3[3] sD6 CS 4 sD6 CS 4 35† E H R S Czech ESB +LT vz 38(t)E A4[2]3[3] sD7 CS 4 sD7 CS 4 35† B E H S Czech ESB S35(f) CS 4 CS 4 36† A†1 D E H S Immob: dr ≤ 4 [EXC: mines, Direct Fire vs front/rear] | CMG: AA ok (TCA only) | CE: +1 Rear Turret & Indirect Fire | French ESB -PzKpfw IIIL(g) A5[2]4[3]3[4] sD5 CS 5 A3 sD5 CS 5 37† C E H O†1 Q R German ESB +PzKpfw IIIL(g) A5[2]4[3]3[4] sD5 CS 5 sD5 CS 5 37† C E H O†1 Q R German ESB PzKpfw IIIN(g) H8[3+] s8 sD7 CS 5 H8 s8 sD7 CS 5 38† E O†1 Q R S German ESB PzKpfw IVD(g) AP7 H5[3+] s8 sD7 CS 5 AP7 H5 s8 sD7 CS 5 39† E Q R German ESB PzKpfw IVF1(g) AP7 H5[3+] s8 sD7 CS 6 AP7 H5 s8 sD7 CS 6 39† B E H Q R German ESB -PzKpfw IVH(g) A4[2]3[3] s7 sD5 CS 6 A3 s7 sD5 CS 6 39† B E H O†1 Q R German ESB -StuG IIIG(g) A3[4] s8 sD7 CS 4 A3 s8 sD7 CS 4 40† B E H Q R AAMG: VCA only | German ESB -JgdPz 38(t) A3[4] HE7 CS 4 A3 HE7 CS 4 41† B E H AAMG: BU only, Rider NA, elevation restrictions | Czech ESB +PzKpfw IVH(g) A4[2]3[3] s7 sD5 CS 6 s7 sD5 CS 6 39† B E H O†1 Q R German ESB +StuG IIIG(g) A3[4] s8 sD7 CS 4 s8 sD7 CS 4 40† B E H Q R AAMG: VCA only | German ESB +JgdPz 38(t) A3[4] HE7 CS 4 HE7 CS 4 41† B E H AAMG: BU only, Rider NA, elevation restrictions | Czech ESB SPW 250/1(g) CS 4 CS 4 42 E R German ESB SPW 251/1(g) CS 5 CS 5 42† C E R German ESB SPW 251/9(g) H5 s8 CS 4[brewup] H5 s8 CS 4[brewup] 42† E R CMG: VCA only | German ESB diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british/1945.txt index b282eab..bbc68bc 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british/1945.txt @@ -47,7 +47,7 @@ Valentine II sM8 CS 4 Valentine V sM8 CS 4 sM8 CS 4 28† K†1 NT Valentine VIII HE7 sD6 CS 4 HE7 sD6 CS 4 29 NT Valentine XI WP6 s8 sD8 CS 4 WP6 s8 sD8 CS 4 30 n/a -Churchill I HE9†[2] s†[2] sD5[4] sM8†[1] CS 7 HE9†[2] s†[2] sD5 sM8†[1] CS 7 31† NT S†2 Z†1 CC 40 MA: T | 76 SA: NT (bow-mounted) | 76 SA: +1 DRM vs Moving/Motion | Smoke & HE: 76 SA only | 76 SA: s9, ∞ HE | Steep climbs +Churchill I HE9†[2] s†[2] sD5[4] sM8†[1] CS 7 HE9†[2] s†[2] sM8†[1] CS 7 31† NT S†2 Z†1 CC 40 MA: T | 76 SA: NT (bow-mounted) | 76 SA: +1 DRM vs Moving/Motion | Smoke & HE: 76 SA only | 76 SA: s9, ∞ HE | Steep climbs Churchill IV D6[J4]7[5]†[2] HE7[F3]8[4+]†[1] sD6[4+] sM8†[3] CS 7 D7†[2] HE8†[1] sD6 sM8†[3] CS 7 32† J†2 N Y†1 Z†3 CC Steep climbs Churchill V H6 s9 sD7 sM8†[1] CS 7 H6 s9 sD7 sM8†[1] CS 7 33† S Z†1 CC Steep climbs Churchill VI WP6[J4+]†[1] s8 sD7 sM8†[2] CS 7 WP6†[1] s8 sD7 sM8†[2] CS 7 34† W†1 Z†2 CC Steep climbs diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british~canadian/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british~canadian/1945.txt index defb70b..c18fb6f 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british~canadian/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british~canadian/1945.txt @@ -47,7 +47,7 @@ Valentine II sM8 CS 4 Valentine V sM8 CS 4 sM8 CS 4 28† K†1 NT Valentine VIII HE7 sD6 CS 4 HE7 sD6 CS 4 29 NT Valentine XI WP6 s8 sD8 CS 4 WP6 s8 sD8 CS 4 30 n/a -Churchill I HE9†[2] s†[2] sD5[4] sM8†[1] CS 7 HE9†[2] s†[2] sD5 sM8†[1] CS 7 31† NT S†2 Z†1 CC 40 MA: T | 76 SA: NT (bow-mounted) | 76 SA: +1 DRM vs Moving/Motion | Smoke & HE: 76 SA only | 76 SA: s9, ∞ HE | Steep climbs +Churchill I HE9†[2] s†[2] sD5[4] sM8†[1] CS 7 HE9†[2] s†[2] sM8†[1] CS 7 31† NT S†2 Z†1 CC 40 MA: T | 76 SA: NT (bow-mounted) | 76 SA: +1 DRM vs Moving/Motion | Smoke & HE: 76 SA only | 76 SA: s9, ∞ HE | Steep climbs Churchill IV D6[J4]7[5]†[2] HE7[F3]8[4+]†[1] sD6[4+] sM8†[3] CS 7 D7†[2] HE8†[1] sD6 sM8†[3] CS 7 32† J†2 N Y†1 Z†3 CC Steep climbs Churchill V H6 s9 sD7 sM8†[1] CS 7 H6 s9 sD7 sM8†[1] CS 7 33† S Z†1 CC Steep climbs Churchill VI WP6[J4+]†[1] s8 sD7 sM8†[2] CS 7 WP6†[1] s8 sD7 sM8†[2] CS 7 34† W†1 Z†2 CC Steep climbs diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british~newzealand/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british~newzealand/1945.txt index 100dcf8..e8dc886 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british~newzealand/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/british~newzealand/1945.txt @@ -47,7 +47,7 @@ Valentine II sM8 CS 4 Valentine V sM8 CS 4 sM8 CS 4 28† K†1 NT Valentine VIII HE7 sD6 CS 4 HE7 sD6 CS 4 29 NT Valentine XI WP6 s8 sD8 CS 4 WP6 s8 sD8 CS 4 30 n/a -Churchill I HE9†[2] s†[2] sD5[4] sM8†[1] CS 7 HE9†[2] s†[2] sD5 sM8†[1] CS 7 31† NT S†2 Z†1 CC 40 MA: T | 76 SA: NT (bow-mounted) | 76 SA: +1 DRM vs Moving/Motion | Smoke & HE: 76 SA only | 76 SA: s9, ∞ HE | Steep climbs +Churchill I HE9†[2] s†[2] sD5[4] sM8†[1] CS 7 HE9†[2] s†[2] sM8†[1] CS 7 31† NT S†2 Z†1 CC 40 MA: T | 76 SA: NT (bow-mounted) | 76 SA: +1 DRM vs Moving/Motion | Smoke & HE: 76 SA only | 76 SA: s9, ∞ HE | Steep climbs Churchill IV D6[J4]7[5]†[2] HE7[F3]8[4+]†[1] sD6[4+] sM8†[3] CS 7 D7†[2] HE8†[1] sD6 sM8†[3] CS 7 32† J†2 N Y†1 Z†3 CC Steep climbs Churchill V H6 s9 sD7 sM8†[1] CS 7 H6 s9 sD7 sM8†[1] CS 7 33† S Z†1 CC Steep climbs Churchill VI WP6[J4+]†[1] s8 sD7 sM8†[2] CS 7 WP6†[1] s8 sD7 sM8†[2] CS 7 34† W†1 Z†2 CC Steep climbs diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1942.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1942.txt index 1948132..9a77a23 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1942.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1942.txt @@ -16,9 +16,9 @@ FT-17 730(f) AP9 CS 2 AP9 CS 2 38H 735(f) AP10 CS 3 AP10 CS 3 9.2 a b† f French ESB | CMG: AA ok (TCA only) 35-S 739(f) CS 4 CS 4 9.3 a b†2 d†1 f French ESB | CMG: AA ok (TCA only) | Immob: dr ≤ 4 [EXC: mines, Direct Fire vs front/rear] PzKpfw IIID sD6 CS 5 sD6 CS 5 10† n/a -PzKpfw IIIF A4[1] sD7 CS 5 A4 sD7 CS 5 11† n/a -PzKpfw IIIG A4[1] sD7 CS 5 A4 sD7 CS 5 12 N -PzKpfw IIIH A4[1] sD7 CS 6 A4 sD7 CS 6 13† N +PzKpfw IIIF A4[1] sD7 CS 5 sD7 CS 5 11† n/a +PzKpfw IIIG A4[1] sD7 CS 5 sD7 CS 5 12 N +PzKpfw IIIH A4[1] sD7 CS 6 sD7 CS 6 13† N PzKpfw IIIJ A6[2] sD7 CS 6 A6 sD7 CS 6 14† N S PzKpfw IIIL A6[2] sD7 CS 5 A6 sD7 CS 5 15† B† N S PzKpfw IIIN H9 s9 sD7 CS 5 H9 s9 sD7 CS 5 16 B† NT S @@ -50,8 +50,8 @@ StuG 75/18(i) H7 s9 CS 3 H7 s9 CS 3 StuG 75/34(i) s9 CS 3 s9 CS 3 40 I P† Red TH# | Italian ESB | AAMG: VCA only StuG 105/25(i) H7 s9 CS 3 H7 s9 CS 3 41 I P† No IF | Red TH# | Italian ESB | AAMG: VCA only StuG 75/46(i) s9 CS 3 s9 CS 3 42 I P† Red TH# | Italian ESB | AAMG: VCA only -PzJg I A5[1] HE7 CS 3 A5 HE7 CS 3 43 N -PzJg 35R(f) A5[1] HE7 CS 3 A5 HE7 CS 3 44 a French ESB +PzJg I A5[1] HE7 CS 3 HE7 CS 3 43 N +PzJg 35R(f) A5[1] HE7 CS 3 HE7 CS 3 44 a French ESB Pz 35R 731(f) CS 2 CS 2 44.1† a French ESB Marder I(f) A6[2] HE7 s7 CS 4[brewup] A6 HE7 s7 CS 4[brewup] 45† a French ESB GSW 39H(f) Pak A4[4] HE9 CS 3 HE9 CS 3 45.1 a e French ESB @@ -72,12 +72,12 @@ SPW 250/sMG CS 4† CS 4† SPW 250/7 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 J† N Inherent Infantry Crew | AAMG: NA VCA SPW 250/8 H6 s8 CS 4[brewup] H6 s8 CS 4[brewup] 60 Q† CMG: VCA only SPW 250/9 CS 4 CS 4 61† A† MA & CMG: AA ok -SPW 250/10 A4[1] CS 4 A4 CS 4 62 J† N AAMG: NA VCA +SPW 250/10 A4[1] CS 4 CS 4 62 J† N AAMG: NA VCA SPW 251/1 CS 5 CS 5 63 C† N SPW 251/sMG CS 5† CS 5† 58† C† J† N Inherent Crew & Passenger | CMG: Normal Range = 16, VCA only | CMG: Removal/Scrounge OK (LMG) | AAMG: Removal OK (dm HMG); Scrounge OK (LMG) | AAMG: NA VCA SPW 251/2 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 C† J† N Inherent Infantry Crew | AAMG: NA VCA SPW 251/9 H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 64 C† N Q† CMG: VCA only -SPW 251/10 A4[1] CS 4 A4 CS 4 65 C† J† N ATR | AAMG: NA VCA +SPW 251/10 A4[1] CS 4 CS 4 65 C† J† N ATR | AAMG: NA VCA SPW 251/16 CS 4[brewup] CS 4[brewup] 66† n/a Port/starboard FT's SPW 251/21 CS 4 CS 4 66.1† n/a 3 TK DR | MA: AA ok SPW 251/22 HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 67 J† AAMG: NA VCA diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1943.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1943.txt index d2d0f96..82af066 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1943.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1943.txt @@ -8,19 +8,19 @@ PzKpfw IIF sD7 CS 3 sD7 CS 3 PzKpfw II(Fl) sD7† CS 2[brewup] sD7† CS 2[brewup] 4† n/a sD: 3 hex range PzKpfw IIL sD7 CS 4 sD7 CS 4 5 n/a PzKpfw 35t sD5 CS 4 sD5 CS 4 6† n/a -PzKpfw 38(t)A A4[1]5[2] sD6 CS 4 A5 sD6 CS 4 7† E ESB: 0 DRM -PzKpfw 38(t)E A4[1]5[2] sD7 CS 4 A5 sD7 CS 4 8† E ESB: 0 DRM +PzKpfw 38(t)A A4[1]5[2] sD6 CS 4 sD6 CS 4 7† E ESB: 0 DRM +PzKpfw 38(t)E A4[1]5[2] sD7 CS 4 sD7 CS 4 8† E ESB: 0 DRM Aufklaerer 38(t) CS 5 CS 5 9 A† E MA & CMG: AA ok | ESB: 0 DRM FT-17 730m(f) CS 2 CS 2 9.1† a c f Road Rate NA | French ESB | CE: +1 Rear Turret & Indirect Fire FT-17 730(f) AP9 CS 2 AP9 CS 2 9.1† a c f Road Rate NA | French ESB | CE: +1 Rear Turret & Indirect Fire 38H 735(f) AP10 CS 3 AP10 CS 3 9.2 a b† f French ESB | CMG: AA ok (TCA only) 35-S 739(f) CS 4 CS 4 9.3 a b†2 d†1 f French ESB | CMG: AA ok (TCA only) | Immob: dr ≤ 4 [EXC: mines, Direct Fire vs front/rear] PzKpfw IIID sD6 CS 5 sD6 CS 5 10† n/a -PzKpfw IIIF A4[1] sD7 CS 5 A4 sD7 CS 5 11† n/a -PzKpfw IIIG A4[1] sD7 CS 5 A4 sD7 CS 5 12 N -PzKpfw IIIH A4[1] sD7 CS 6 A4 sD7 CS 6 13† N -PzKpfw IIIJ A6[2] sD7 CS 6 A6 sD7 CS 6 14† N S -PzKpfw IIIL A6[2] sD7 CS 5 A6 sD7 CS 5 15† B† N S +PzKpfw IIIF A4[1] sD7 CS 5 sD7 CS 5 11† n/a +PzKpfw IIIG A4[1] sD7 CS 5 sD7 CS 5 12 N +PzKpfw IIIH A4[1] sD7 CS 6 sD7 CS 6 13† N +PzKpfw IIIJ A6[2] sD7 CS 6 sD7 CS 6 14† N S +PzKpfw IIIL A6[2] sD7 CS 5 sD7 CS 5 15† B† N S PzKpfw IIIN H9 s9 sD7 CS 5 H9 s9 sD7 CS 5 16 B† NT S PzKpfw III(Fl) sD7 CS 3 sD7 CS 3 17 n/a PzKpfw IVA AP7 s9 sD6 CS 5 AP7 s9 sD6 CS 5 18† n/a @@ -28,18 +28,18 @@ PzKpfw IVC AP7 s9 sD6 CS 5 AP7 s9 sD6 CS 5 PzKpfw IVD AP7 H6 s9 sD7 CS 5 AP7 H6 s9 sD7 CS 5 20 N R† PzKpfw IVE AP7 H6 s9 sD7 CS 6 AP7 H6 s9 sD7 CS 6 21 N R† PzKpfw IVF1 AP7 H6 s9 sD7 CS 6 AP7 H6 s9 sD7 CS 6 22 N R† -PzKpfw IVF2 A5[2] s8 sD6 CS 6 A5 s8 sD6 CS 6 23† N S -PzKpfw IVH A5[2] s8 sD5 CS 6 A5 s8 sD5 CS 6 24† B† S +PzKpfw IVF2 A5[2] s8 sD6 CS 6 s8 sD6 CS 6 23† N S +PzKpfw IVH A5[2] s8 sD5 CS 6 s8 sD5 CS 6 24† B† S PzKpfw IVJ A3[4] s8 sN9 CS 6 s8 sN9 CS 6 25 S PzKpfw VD sD5 CS 5[brewup] sD5 CS 5[brewup] 26 F† 12: Burn, 11: Immob, 10: Stall PzKpfw VG sN7[4] CS 6 CS 6 27† H† 12: Stall PzKpfw M15/42(i) CS 4 CS 4 28 I Red TH# | Italian ESB PzKpfw P26/40(i) s8 CS 4 s8 CS 4 29 I Red TH# | Italian ESB -PzKpfw VIE A6[2] sD7 CS 6 A6 sD7 CS 6 30† K NFT SA: Mines (CC: 12 FP) | Morale 9 +PzKpfw VIE A6[2] sD7 CS 6 sD7 CS 6 30† K NFT SA: Mines (CC: 12 FP) | Morale 9 PzKpfw VIE (L) A4[4] sN7[4] CS 6 CS 6 31 K Morale 9 PzKpfw VIB sN9 CS 6 sN9 CS 6 32† K Morale 9 StuG IIIB AP7 H6 s9 sD7 CS 4 AP7 H6 s9 sD7 CS 4 33† n/a -StuG IIIG A6[2] s8 sD7 CS 4 A6 s8 sD7 CS 4 34† NFT P† S AAMG: VCA only +StuG IIIG A6[2] s8 sD7 CS 4 s8 sD7 CS 4 34† NFT P† S AAMG: VCA only StuG IIIG (L) A4[4] s8 sN9 CS 4 s8 sN9 CS 4 35 O† Q† S AAMG: BU only, Rider NA, elevation restrictions | CMG: VCA only StuH 42 H9 s9 sD7 CS 4 H9 s9 sD7 CS 4 36† NFT P† S AAMG: VCA only StuH 42 (L) H9 s9 sN9 CS 4 H9 s9 sN9 CS 4 35 O† Q† S AAMG: BU only, Rider NA, elevation restrictions | CMG: VCA only @@ -50,13 +50,13 @@ StuG 75/18(i) H7 s9 CS 3 H7 s9 CS 3 StuG 75/34(i) s9 CS 3 s9 CS 3 40 I P† Red TH# | Italian ESB | AAMG: VCA only StuG 105/25(i) H7 s9 CS 3 H7 s9 CS 3 41 I P† No IF | Red TH# | Italian ESB | AAMG: VCA only StuG 75/46(i) s9 CS 3 s9 CS 3 42 I P† Red TH# | Italian ESB | AAMG: VCA only -PzJg I A5[1] HE7 CS 3 A5 HE7 CS 3 43 N -PzJg 35R(f) A5[1] HE7 CS 3 A5 HE7 CS 3 44 a French ESB +PzJg I A5[1] HE7 CS 3 HE7 CS 3 43 N +PzJg 35R(f) A5[1] HE7 CS 3 HE7 CS 3 44 a French ESB Pz 35R 731(f) CS 2 CS 2 44.1† a French ESB -Marder I(f) A6[2] HE7 s7 CS 4[brewup] A6 HE7 s7 CS 4[brewup] 45† a French ESB +Marder I(f) A6[2] HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 45† a French ESB GSW 39H(f) Pak A4[4] HE9 CS 3 HE9 CS 3 45.1 a e French ESB -Marder II A6[2] HE7 s7 CS 4[brewup] A6 HE7 s7 CS 4[brewup] 46 M† NFT -Marder III(t)H A6[2] HE7 s7 sD6 CS 4[brewup] A6 HE7 s7 sD6 CS 4[brewup] 47 E G NF CE: +3 Front | ESB: 0 DRM +Marder II A6[2] HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 46 M† NFT +Marder III(t)H A6[2] HE7 s7 sD6 CS 4[brewup] HE7 s7 sD6 CS 4[brewup] 47 E G NF CE: +3 Front | ESB: 0 DRM Marder III(t)M A5[3] HE7 s7 sD5 CS 4[brewup] A5 HE7 s7 sD5 CS 4[brewup] 48 E ESB: 0 DRM PzJg III/IV HE7 CS 5 HE7 CS 5 49 M† JgdPz 38(t) A4[4] HE7 CS 4 HE7 CS 4 50 E O† ESB: 0 DRM | AAMG: BU only, Rider NA, elevation restrictions @@ -72,12 +72,12 @@ SPW 250/sMG CS 4† CS 4† SPW 250/7 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 J† N Inherent Infantry Crew | AAMG: NA VCA SPW 250/8 H6 s8 CS 4[brewup] H6 s8 CS 4[brewup] 60 Q† CMG: VCA only SPW 250/9 CS 4 CS 4 61† A† MA & CMG: AA ok -SPW 250/10 A4[1] CS 4 A4 CS 4 62 J† N AAMG: NA VCA +SPW 250/10 A4[1] CS 4 CS 4 62 J† N AAMG: NA VCA SPW 251/1 CS 5 CS 5 63 C† N SPW 251/sMG CS 5† CS 5† 58† C† J† N Inherent Crew & Passenger | CMG: Normal Range = 16, VCA only | CMG: Removal/Scrounge OK (LMG) | AAMG: Removal OK (dm HMG); Scrounge OK (LMG) | AAMG: NA VCA SPW 251/2 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 C† J† N Inherent Infantry Crew | AAMG: NA VCA SPW 251/9 H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 64 C† N Q† CMG: VCA only -SPW 251/10 A4[1] CS 4 A4 CS 4 65 C† J† N ATR | AAMG: NA VCA +SPW 251/10 A4[1] CS 4 CS 4 65 C† J† N ATR | AAMG: NA VCA SPW 251/16 CS 4[brewup] CS 4[brewup] 66† n/a Port/starboard FT's SPW 251/21 CS 4 CS 4 66.1† n/a 3 TK DR | MA: AA ok SPW 251/22 HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 67 J† AAMG: NA VCA diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1944.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1944.txt index 66ce10c..8e3c090 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1944.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1944.txt @@ -1,130 +1,130 @@ === vehicles/german/1944 === -Name Capabilities (effective) # Notes Comments ----------------------- ----------------------------- -------------------------- ------ --------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -PzKpfw IB sD6 CS 2 sD6 CS 2 1† NF 2 TK DR -PzKpfw IIA sD6 CS 3 sD6 CS 3 2 n/a -PzKpfw IIF sD7 CS 3 sD7 CS 3 3 N -PzKpfw II(Fl) sD7† CS 2[brewup] sD7† CS 2[brewup] 4† n/a sD: 3 hex range -PzKpfw IIL sD7 CS 4 sD7 CS 4 5 n/a -PzKpfw 35t sD5 CS 4 sD5 CS 4 6† n/a -PzKpfw 38(t)A A4[1]5[2] sD6 CS 4 A5 sD6 CS 4 7† E ESB: 0 DRM -PzKpfw 38(t)E A4[1]5[2] sD7 CS 4 A5 sD7 CS 4 8† E ESB: 0 DRM -Aufklaerer 38(t) CS 5 CS 5 9 A† E MA & CMG: AA ok | ESB: 0 DRM -FT-17 730m(f) CS 2 CS 2 9.1† a c f Road Rate NA | French ESB | CE: +1 Rear Turret & Indirect Fire -FT-17 730(f) AP9 CS 2 AP9 CS 2 9.1† a c f Road Rate NA | French ESB | CE: +1 Rear Turret & Indirect Fire -38H 735(f) AP10 CS 3 AP10 CS 3 9.2 a b† f French ESB | CMG: AA ok (TCA only) -35-S 739(f) CS 4 CS 4 9.3 a b†2 d†1 f French ESB | CMG: AA ok (TCA only) | Immob: dr ≤ 4 [EXC: mines, Direct Fire vs front/rear] -PzKpfw IIID sD6 CS 5 sD6 CS 5 10† n/a -PzKpfw IIIF A4[1] sD7 CS 5 A4 sD7 CS 5 11† n/a -PzKpfw IIIG A4[1] sD7 CS 5 A4 sD7 CS 5 12 N -PzKpfw IIIH A4[1] sD7 CS 6 A4 sD7 CS 6 13† N -PzKpfw IIIJ A6[2] sD7 CS 6 A6 sD7 CS 6 14† N S -PzKpfw IIIL A6[2] sD7 CS 5 A6 sD7 CS 5 15† B† N S -PzKpfw IIIN H9 s9 sD7 CS 5 H9 s9 sD7 CS 5 16 B† NT S -PzKpfw III(Fl) sD7 CS 3 sD7 CS 3 17 n/a -PzKpfw IVA AP7 s9 sD6 CS 5 AP7 s9 sD6 CS 5 18† n/a -PzKpfw IVC AP7 s9 sD6 CS 5 AP7 s9 sD6 CS 5 19† n/a -PzKpfw IVD AP7 H6 s9 sD7 CS 5 AP7 H6 s9 sD7 CS 5 20 N R† -PzKpfw IVE AP7 H6 s9 sD7 CS 6 AP7 H6 s9 sD7 CS 6 21 N R† -PzKpfw IVF1 AP7 H6 s9 sD7 CS 6 AP7 H6 s9 sD7 CS 6 22 N R† -PzKpfw IVF2 A5[2] s8 sD6 CS 6 A5 s8 sD6 CS 6 23† N S -PzKpfw IVH A5[2] s8 sD5 CS 6 A5 s8 sD5 CS 6 24† B† S -PzKpfw IVJ A3[4] s8 sN9 CS 6 A3 s8 sN9 CS 6 25 S -PzKpfw VD sD5 CS 5[brewup] sD5 CS 5[brewup] 26 F† 12: Burn, 11: Immob, 10: Stall -PzKpfw VG sN7[4] CS 6 sN7 CS 6 27† H† 12: Stall -PzKpfw M15/42(i) CS 4 CS 4 28 I Red TH# | Italian ESB -PzKpfw P26/40(i) s8 CS 4 s8 CS 4 29 I Red TH# | Italian ESB -PzKpfw VIE A6[2] sD7 CS 6 A6 sD7 CS 6 30† K NFT SA: Mines (CC: 12 FP) | Morale 9 -PzKpfw VIE (L) A4[4] sN7[4] CS 6 A4 sN7 CS 6 31 K Morale 9 -PzKpfw VIB sN9 CS 6 sN9 CS 6 32† K Morale 9 -StuG IIIB AP7 H6 s9 sD7 CS 4 AP7 H6 s9 sD7 CS 4 33† n/a -StuG IIIG A6[2] s8 sD7 CS 4 A6 s8 sD7 CS 4 34† NFT P† S AAMG: VCA only -StuG IIIG (L) A4[4] s8 sN9 CS 4 A4 s8 sN9 CS 4 35 O† Q† S AAMG: BU only, Rider NA, elevation restrictions | CMG: VCA only -StuH 42 H9 s9 sD7 CS 4 H9 s9 sD7 CS 4 36† NFT P† S AAMG: VCA only -StuH 42 (L) H9 s9 sN9 CS 4 H9 s9 sN9 CS 4 35 O† Q† S AAMG: BU only, Rider NA, elevation restrictions | CMG: VCA only -StuPz IV H7 s9 CS 6 H7 s9 CS 6 37† S BMG: HD Fire OK | No IF -Sturmtiger sN9 CS 5 sN9 CS 5 37.1† K MA: No Bnd (F)F, Motion Fire, Acq, CE | No Area Target Type, same Location, consecutive Fire | +1 TH DRM vs Moving/Motion/Dash | Riders Bail Out when MA fires | IFT: 36+ FP with -3 DRM | HE TK#: [{ *:Direct Hit (dr 1-2): 28 (armored), 22 (unarmored);
Specific Collateral Attack = full FP *:Near Miss: 10 (armored), 16 (unarmored);
Specific Collateral Attack = 20 FP }] | No IF | Morale 9 -PzJg Tiger CS 7 CS 7 38 n/a -StuG 75/18(i) H7 s9 CS 3 H7 s9 CS 3 39 I P† Red TH# | Italian ESB | AAMG: VCA only -StuG 75/34(i) s9 CS 3 s9 CS 3 40 I P† Red TH# | Italian ESB | AAMG: VCA only -StuG 105/25(i) H7 s9 CS 3 H7 s9 CS 3 41 I P† No IF | Red TH# | Italian ESB | AAMG: VCA only -StuG 75/46(i) s9 CS 3 s9 CS 3 42 I P† Red TH# | Italian ESB | AAMG: VCA only -PzJg I A5[1] HE7 CS 3 A5 HE7 CS 3 43 N -PzJg 35R(f) A5[1] HE7 CS 3 A5 HE7 CS 3 44 a French ESB -Pz 35R 731(f) CS 2 CS 2 44.1† a French ESB -Marder I(f) A6[2] HE7 s7 CS 4[brewup] A6 HE7 s7 CS 4[brewup] 45† a French ESB -GSW 39H(f) Pak A4[4] HE9 CS 3 A4 HE9 CS 3 45.1 a e French ESB -Marder II A6[2] HE7 s7 CS 4[brewup] A6 HE7 s7 CS 4[brewup] 46 M† NFT -Marder III(t)H A6[2] HE7 s7 sD6 CS 4[brewup] A6 HE7 s7 sD6 CS 4[brewup] 47 E G NF CE: +3 Front | ESB: 0 DRM -Marder III(t)M A5[3] HE7 s7 sD5 CS 4[brewup] A5 HE7 s7 sD5 CS 4[brewup] 48 E ESB: 0 DRM -PzJg III/IV HE7 CS 5 HE7 CS 5 49 M† -JgdPz 38(t) A4[4] HE7 CS 4 A4 HE7 CS 4 50 E O† ESB: 0 DRM | AAMG: BU only, Rider NA, elevation restrictions -JgdPz 38(t) (Fl) CS 4 CS 4 51 E O† ESB: 0 DRM | AAMG: BU only, Rider NA, elevation restrictions -JgdPz IV A4[4] HE7 s7 sN7[4] CS 4 A4 HE7 s7 sN7 CS 4 52 S -JgdPz IV (L) A4[4] HE7 s7 sN8[4] CS 4 A4 HE7 s7 sN8 CS 4 52 S -StuIG 33B H7 s9 CS 5 H7 s9 CS 5 53† n/a BMG: HD Fire OK | No IF -JgdPz IV/70 HE7 sN9 CS 4 HE7 sN9 CS 4 54† S -JgdPz V HE7 sN9 CS 6 HE7 sN9 CS 6 55 H 12: Stall -JgdPz VI HE7 sN9 CS 7 HE7 sN9 CS 7 56 n/a -SPW 250/1 CS 4 CS 4 57 N -SPW 250/sMG CS 4† CS 4† 58† J† N Inherent Crew & Passenger | CMG: Normal Range = 16, VCA only | CMG: Removal/Scrounge OK (LMG) | AAMG: Removal OK (dm HMG); Scrounge OK (LMG) | AAMG: NA VCA -SPW 250/7 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 J† N Inherent Infantry Crew | AAMG: NA VCA -SPW 250/8 H6 s8 CS 4[brewup] H6 s8 CS 4[brewup] 60 Q† CMG: VCA only -SPW 250/9 CS 4 CS 4 61† A† MA & CMG: AA ok -SPW 250/10 A4[1] CS 4 A4 CS 4 62 J† N AAMG: NA VCA -SPW 251/1 CS 5 CS 5 63 C† N -SPW 251/sMG CS 5† CS 5† 58† C† J† N Inherent Crew & Passenger | CMG: Normal Range = 16, VCA only | CMG: Removal/Scrounge OK (LMG) | AAMG: Removal OK (dm HMG); Scrounge OK (LMG) | AAMG: NA VCA -SPW 251/2 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 C† J† N Inherent Infantry Crew | AAMG: NA VCA -SPW 251/9 H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 64 C† N Q† CMG: VCA only -SPW 251/10 A4[1] CS 4 A4 CS 4 65 C† J† N PSK | AAMG: NA VCA -SPW 251/16 CS 4[brewup] CS 4[brewup] 66† n/a Port/starboard FT's -SPW 251/21 CS 4 CS 4 66.1† n/a 3 TK DR | MA: AA ok -SPW 251/22 HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 67 J† AAMG: NA VCA -SPW S307(f) A4[4] HE9 CS 4 A4 HE9 CS 4 67.1 a e French ESB -mSPW S307(f) IR s5 CS 4 IR s5 CS 4 67.2 a e CE: +1 Rear & Indirect Fire | VCA Facing | Extra Smoke | No IF | French ESB -Kfz 13 CS 2 CS 2 68† n/a Always CE -PSW 221 sD6 CS 2 sD6 CS 2 69† A† N BU Fire NA | Reverse MP ×4 | MA & CMG: AA ok -PSW 222 sD6 CS 3 sD6 CS 3 70† A† N Reverse MP ×3 | MA & CMG: AA ok -PSW 222 (L) sD6 CS 3 sD6 CS 3 70† A† NF Reverse MP ×3 | MA & CMG: AA ok -PSW 231 (6 rad) CS 4 CS 4 71† n/a Reverse MP ×2 -PSW 231 (8 rad) sD6 CS 4 sD6 CS 4 72† N -PSW 232 (8 rad) sD6 CS 4 sD6 CS 4 72 NF -PSW 233 H8 s9 sD7 CS 5 H8 s9 sD7 CS 5 73 NT -PSW 234/1 CS 5 CS 5 74 A† MA & CMG: AA ok -PSW 234/2 A5[3] sD7 CS 4 A5 sD7 CS 4 75 n/a -PSW 234/3 H8 s9 CS 5 H8 s9 CS 5 76 Q† CMG: VCA only -PSW 234/4 HE7 s7 CS 5[brewup] HE7 s7 CS 5[brewup] 77† n/a Reverse MP ×4 -sIG IB H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 78 G No IF | CE: +3 Front -sIG II H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 79 N No IF -sIG 38(t)M H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 80 E NFT No IF | ESB: 0 DRM -PzA II H5 s8 CS 4 H5 s8 CS 4 81 M† -PzA LrS(f) H4 s8 CS 4 H4 s8 CS 4 82 a N No IF | French ESB -GSW 39H(f) H4 s7 CS 4 H4 s7 CS 4 82.1 a e French ESB -PzA III/IV H5 s8 CS 6 H5 s8 CS 6 83 n/a No IF -FlaKPz 38(t) CS 4 CS 4 84 A† E CE: +1 | MA & CMG: AA ok | ESB: 0 DRM -37 FlaK/Pz IV CS 5 CS 5 85† A† Moving: [{ *:Fire ≤ level NA }] | Firing: [{ *:No CE DRM *:Random SW Destruction for MA }] | MA & CMG: AA ok -FlaKPz IV/20 CS 6 CS 6 86 A† 4 TK DR | MA & CMG: AA ok -FlaKPz IV/37 CS 6 CS 6 87 A† MA & CMG: AA ok -SdKfz 10/4 CS 5 CS 5 88 A† D† N MA & CMG: AA ok | Ammo trailer -SdKfz 10/5 CS 4 CS 4 88.1† A†2 D†1 MA & CMG: AA ok | Ammo trailer -SdKfz 6/2 CS 5 CS 5 89 A† D† N MA & CMG: AA ok | Ammo trailer -SdKfz 7/1 CS 4 CS 4 90 A† D† N 4 TK DR | MA & CMG: AA ok | Ammo trailer -Kfz 4 CS 3 CS 3 91† N 2 TK DR (MG) -2cm FlaK LKW CS 5 CS 5 92 A† MA & CMG: AA ok -3.7cm FlaK LKW CS 5 CS 5 92 A† MA & CMG: AA ok -Goliath 93† L† Bog assistance -Kfz 1 cs 2† cs 2† 94† L† N Inherent Crew if armed (with CS#) | Bog assistance -Kfz 1/20 cs 2 cs 2 95† L† +3 Target Size & HD in Water | Bog assistance -Opel 6700 (Blitz) cs 6 cs 6 96 N -Buessing-NAG 4500 cs 7 cs 7 96 N -SdKfz 2 cs 2 cs 2 97† L† N As vehicle (not motorcycle) | Crew/HS Riders OK | Hidden AT Mine attacks NA | AP Mine attacks: Area Fire | Bog assistance -SdKfz 7 cs 6 cs 6 98 N -SdKfz 11 cs 5 cs 5 99 N -PzKpfw IA sD6 CS 2 sD6 CS 2 1† Ge N 2 TK DR (MG) -PzKpfw ICV sD5 CS 3 sD5 CS 3 2 A† MG: VCA only -PzKpfw IID sD6 CS 3 sD6 CS 3 3 n/a -PzKpfw II Bridgelayer sD6 CS 2 sD6 CS 2 4† n/a Inherent Crew | Movement restrictions | Stun = Recall, CE NA -Pz-7TP CS 3 CS 3 5 B† -PSW M35 CS 5 CS 5 6† n/a Reverse MP ×2 -SdKfz8 FlaK 18 A5[2]4[3] CS 6 A4 CS 6 7††[1] n/a CE: +3 VCA, otherwise 0 DRM | Indirect Fire: CE +1 | MA: Rear VCA NA | MA: Random SW Destruction | Mines: As unarmored +Name Capabilities (effective) # Notes Comments +---------------------- ----------------------------- ----------------------- ------ --------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +PzKpfw IB sD6 CS 2 sD6 CS 2 1† NF 2 TK DR +PzKpfw IIA sD6 CS 3 sD6 CS 3 2 n/a +PzKpfw IIF sD7 CS 3 sD7 CS 3 3 N +PzKpfw II(Fl) sD7† CS 2[brewup] sD7† CS 2[brewup] 4† n/a sD: 3 hex range +PzKpfw IIL sD7 CS 4 sD7 CS 4 5 n/a +PzKpfw 35t sD5 CS 4 sD5 CS 4 6† n/a +PzKpfw 38(t)A A4[1]5[2] sD6 CS 4 sD6 CS 4 7† E ESB: 0 DRM +PzKpfw 38(t)E A4[1]5[2] sD7 CS 4 sD7 CS 4 8† E ESB: 0 DRM +Aufklaerer 38(t) CS 5 CS 5 9 A† E MA & CMG: AA ok | ESB: 0 DRM +FT-17 730m(f) CS 2 CS 2 9.1† a c f Road Rate NA | French ESB | CE: +1 Rear Turret & Indirect Fire +FT-17 730(f) AP9 CS 2 AP9 CS 2 9.1† a c f Road Rate NA | French ESB | CE: +1 Rear Turret & Indirect Fire +38H 735(f) AP10 CS 3 AP10 CS 3 9.2 a b† f French ESB | CMG: AA ok (TCA only) +35-S 739(f) CS 4 CS 4 9.3 a b†2 d†1 f French ESB | CMG: AA ok (TCA only) | Immob: dr ≤ 4 [EXC: mines, Direct Fire vs front/rear] +PzKpfw IIID sD6 CS 5 sD6 CS 5 10† n/a +PzKpfw IIIF A4[1] sD7 CS 5 sD7 CS 5 11† n/a +PzKpfw IIIG A4[1] sD7 CS 5 sD7 CS 5 12 N +PzKpfw IIIH A4[1] sD7 CS 6 sD7 CS 6 13† N +PzKpfw IIIJ A6[2] sD7 CS 6 sD7 CS 6 14† N S +PzKpfw IIIL A6[2] sD7 CS 5 sD7 CS 5 15† B† N S +PzKpfw IIIN H9 s9 sD7 CS 5 H9 s9 sD7 CS 5 16 B† NT S +PzKpfw III(Fl) sD7 CS 3 sD7 CS 3 17 n/a +PzKpfw IVA AP7 s9 sD6 CS 5 AP7 s9 sD6 CS 5 18† n/a +PzKpfw IVC AP7 s9 sD6 CS 5 AP7 s9 sD6 CS 5 19† n/a +PzKpfw IVD AP7 H6 s9 sD7 CS 5 AP7 H6 s9 sD7 CS 5 20 N R† +PzKpfw IVE AP7 H6 s9 sD7 CS 6 AP7 H6 s9 sD7 CS 6 21 N R† +PzKpfw IVF1 AP7 H6 s9 sD7 CS 6 AP7 H6 s9 sD7 CS 6 22 N R† +PzKpfw IVF2 A5[2] s8 sD6 CS 6 s8 sD6 CS 6 23† N S +PzKpfw IVH A5[2] s8 sD5 CS 6 s8 sD5 CS 6 24† B† S +PzKpfw IVJ A3[4] s8 sN9 CS 6 A3 s8 sN9 CS 6 25 S +PzKpfw VD sD5 CS 5[brewup] sD5 CS 5[brewup] 26 F† 12: Burn, 11: Immob, 10: Stall +PzKpfw VG sN7[4] CS 6 sN7 CS 6 27† H† 12: Stall +PzKpfw M15/42(i) CS 4 CS 4 28 I Red TH# | Italian ESB +PzKpfw P26/40(i) s8 CS 4 s8 CS 4 29 I Red TH# | Italian ESB +PzKpfw VIE A6[2] sD7 CS 6 sD7 CS 6 30† K NFT SA: Mines (CC: 12 FP) | Morale 9 +PzKpfw VIE (L) A4[4] sN7[4] CS 6 A4 sN7 CS 6 31 K Morale 9 +PzKpfw VIB sN9 CS 6 sN9 CS 6 32† K Morale 9 +StuG IIIB AP7 H6 s9 sD7 CS 4 AP7 H6 s9 sD7 CS 4 33† n/a +StuG IIIG A6[2] s8 sD7 CS 4 s8 sD7 CS 4 34† NFT P† S AAMG: VCA only +StuG IIIG (L) A4[4] s8 sN9 CS 4 A4 s8 sN9 CS 4 35 O† Q† S AAMG: BU only, Rider NA, elevation restrictions | CMG: VCA only +StuH 42 H9 s9 sD7 CS 4 H9 s9 sD7 CS 4 36† NFT P† S AAMG: VCA only +StuH 42 (L) H9 s9 sN9 CS 4 H9 s9 sN9 CS 4 35 O† Q† S AAMG: BU only, Rider NA, elevation restrictions | CMG: VCA only +StuPz IV H7 s9 CS 6 H7 s9 CS 6 37† S BMG: HD Fire OK | No IF +Sturmtiger sN9 CS 5 sN9 CS 5 37.1† K MA: No Bnd (F)F, Motion Fire, Acq, CE | No Area Target Type, same Location, consecutive Fire | +1 TH DRM vs Moving/Motion/Dash | Riders Bail Out when MA fires | IFT: 36+ FP with -3 DRM | HE TK#: [{ *:Direct Hit (dr 1-2): 28 (armored), 22 (unarmored);
Specific Collateral Attack = full FP *:Near Miss: 10 (armored), 16 (unarmored);
Specific Collateral Attack = 20 FP }] | No IF | Morale 9 +PzJg Tiger CS 7 CS 7 38 n/a +StuG 75/18(i) H7 s9 CS 3 H7 s9 CS 3 39 I P† Red TH# | Italian ESB | AAMG: VCA only +StuG 75/34(i) s9 CS 3 s9 CS 3 40 I P† Red TH# | Italian ESB | AAMG: VCA only +StuG 105/25(i) H7 s9 CS 3 H7 s9 CS 3 41 I P† No IF | Red TH# | Italian ESB | AAMG: VCA only +StuG 75/46(i) s9 CS 3 s9 CS 3 42 I P† Red TH# | Italian ESB | AAMG: VCA only +PzJg I A5[1] HE7 CS 3 HE7 CS 3 43 N +PzJg 35R(f) A5[1] HE7 CS 3 HE7 CS 3 44 a French ESB +Pz 35R 731(f) CS 2 CS 2 44.1† a French ESB +Marder I(f) A6[2] HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 45† a French ESB +GSW 39H(f) Pak A4[4] HE9 CS 3 A4 HE9 CS 3 45.1 a e French ESB +Marder II A6[2] HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 46 M† NFT +Marder III(t)H A6[2] HE7 s7 sD6 CS 4[brewup] HE7 s7 sD6 CS 4[brewup] 47 E G NF CE: +3 Front | ESB: 0 DRM +Marder III(t)M A5[3] HE7 s7 sD5 CS 4[brewup] HE7 s7 sD5 CS 4[brewup] 48 E ESB: 0 DRM +PzJg III/IV HE7 CS 5 HE7 CS 5 49 M† +JgdPz 38(t) A4[4] HE7 CS 4 A4 HE7 CS 4 50 E O† ESB: 0 DRM | AAMG: BU only, Rider NA, elevation restrictions +JgdPz 38(t) (Fl) CS 4 CS 4 51 E O† ESB: 0 DRM | AAMG: BU only, Rider NA, elevation restrictions +JgdPz IV A4[4] HE7 s7 sN7[4] CS 4 A4 HE7 s7 sN7 CS 4 52 S +JgdPz IV (L) A4[4] HE7 s7 sN8[4] CS 4 A4 HE7 s7 sN8 CS 4 52 S +StuIG 33B H7 s9 CS 5 H7 s9 CS 5 53† n/a BMG: HD Fire OK | No IF +JgdPz IV/70 HE7 sN9 CS 4 HE7 sN9 CS 4 54† S +JgdPz V HE7 sN9 CS 6 HE7 sN9 CS 6 55 H 12: Stall +JgdPz VI HE7 sN9 CS 7 HE7 sN9 CS 7 56 n/a +SPW 250/1 CS 4 CS 4 57 N +SPW 250/sMG CS 4† CS 4† 58† J† N Inherent Crew & Passenger | CMG: Normal Range = 16, VCA only | CMG: Removal/Scrounge OK (LMG) | AAMG: Removal OK (dm HMG); Scrounge OK (LMG) | AAMG: NA VCA +SPW 250/7 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 J† N Inherent Infantry Crew | AAMG: NA VCA +SPW 250/8 H6 s8 CS 4[brewup] H6 s8 CS 4[brewup] 60 Q† CMG: VCA only +SPW 250/9 CS 4 CS 4 61† A† MA & CMG: AA ok +SPW 250/10 A4[1] CS 4 CS 4 62 J† N AAMG: NA VCA +SPW 251/1 CS 5 CS 5 63 C† N +SPW 251/sMG CS 5† CS 5† 58† C† J† N Inherent Crew & Passenger | CMG: Normal Range = 16, VCA only | CMG: Removal/Scrounge OK (LMG) | AAMG: Removal OK (dm HMG); Scrounge OK (LMG) | AAMG: NA VCA +SPW 251/2 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 C† J† N Inherent Infantry Crew | AAMG: NA VCA +SPW 251/9 H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 64 C† N Q† CMG: VCA only +SPW 251/10 A4[1] CS 4 CS 4 65 C† J† N PSK | AAMG: NA VCA +SPW 251/16 CS 4[brewup] CS 4[brewup] 66† n/a Port/starboard FT's +SPW 251/21 CS 4 CS 4 66.1† n/a 3 TK DR | MA: AA ok +SPW 251/22 HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 67 J† AAMG: NA VCA +SPW S307(f) A4[4] HE9 CS 4 A4 HE9 CS 4 67.1 a e French ESB +mSPW S307(f) IR s5 CS 4 IR s5 CS 4 67.2 a e CE: +1 Rear & Indirect Fire | VCA Facing | Extra Smoke | No IF | French ESB +Kfz 13 CS 2 CS 2 68† n/a Always CE +PSW 221 sD6 CS 2 sD6 CS 2 69† A† N BU Fire NA | Reverse MP ×4 | MA & CMG: AA ok +PSW 222 sD6 CS 3 sD6 CS 3 70† A† N Reverse MP ×3 | MA & CMG: AA ok +PSW 222 (L) sD6 CS 3 sD6 CS 3 70† A† NF Reverse MP ×3 | MA & CMG: AA ok +PSW 231 (6 rad) CS 4 CS 4 71† n/a Reverse MP ×2 +PSW 231 (8 rad) sD6 CS 4 sD6 CS 4 72† N +PSW 232 (8 rad) sD6 CS 4 sD6 CS 4 72 NF +PSW 233 H8 s9 sD7 CS 5 H8 s9 sD7 CS 5 73 NT +PSW 234/1 CS 5 CS 5 74 A† MA & CMG: AA ok +PSW 234/2 A5[3] sD7 CS 4 sD7 CS 4 75 n/a +PSW 234/3 H8 s9 CS 5 H8 s9 CS 5 76 Q† CMG: VCA only +PSW 234/4 HE7 s7 CS 5[brewup] HE7 s7 CS 5[brewup] 77† n/a Reverse MP ×4 +sIG IB H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 78 G No IF | CE: +3 Front +sIG II H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 79 N No IF +sIG 38(t)M H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 80 E NFT No IF | ESB: 0 DRM +PzA II H5 s8 CS 4 H5 s8 CS 4 81 M† +PzA LrS(f) H4 s8 CS 4 H4 s8 CS 4 82 a N No IF | French ESB +GSW 39H(f) H4 s7 CS 4 H4 s7 CS 4 82.1 a e French ESB +PzA III/IV H5 s8 CS 6 H5 s8 CS 6 83 n/a No IF +FlaKPz 38(t) CS 4 CS 4 84 A† E CE: +1 | MA & CMG: AA ok | ESB: 0 DRM +37 FlaK/Pz IV CS 5 CS 5 85† A† Moving: [{ *:Fire ≤ level NA }] | Firing: [{ *:No CE DRM *:Random SW Destruction for MA }] | MA & CMG: AA ok +FlaKPz IV/20 CS 6 CS 6 86 A† 4 TK DR | MA & CMG: AA ok +FlaKPz IV/37 CS 6 CS 6 87 A† MA & CMG: AA ok +SdKfz 10/4 CS 5 CS 5 88 A† D† N MA & CMG: AA ok | Ammo trailer +SdKfz 10/5 CS 4 CS 4 88.1† A†2 D†1 MA & CMG: AA ok | Ammo trailer +SdKfz 6/2 CS 5 CS 5 89 A† D† N MA & CMG: AA ok | Ammo trailer +SdKfz 7/1 CS 4 CS 4 90 A† D† N 4 TK DR | MA & CMG: AA ok | Ammo trailer +Kfz 4 CS 3 CS 3 91† N 2 TK DR (MG) +2cm FlaK LKW CS 5 CS 5 92 A† MA & CMG: AA ok +3.7cm FlaK LKW CS 5 CS 5 92 A† MA & CMG: AA ok +Goliath 93† L† Bog assistance +Kfz 1 cs 2† cs 2† 94† L† N Inherent Crew if armed (with CS#) | Bog assistance +Kfz 1/20 cs 2 cs 2 95† L† +3 Target Size & HD in Water | Bog assistance +Opel 6700 (Blitz) cs 6 cs 6 96 N +Buessing-NAG 4500 cs 7 cs 7 96 N +SdKfz 2 cs 2 cs 2 97† L† N As vehicle (not motorcycle) | Crew/HS Riders OK | Hidden AT Mine attacks NA | AP Mine attacks: Area Fire | Bog assistance +SdKfz 7 cs 6 cs 6 98 N +SdKfz 11 cs 5 cs 5 99 N +PzKpfw IA sD6 CS 2 sD6 CS 2 1† Ge N 2 TK DR (MG) +PzKpfw ICV sD5 CS 3 sD5 CS 3 2 A† MG: VCA only +PzKpfw IID sD6 CS 3 sD6 CS 3 3 n/a +PzKpfw II Bridgelayer sD6 CS 2 sD6 CS 2 4† n/a Inherent Crew | Movement restrictions | Stun = Recall, CE NA +Pz-7TP CS 3 CS 3 5 B† +PSW M35 CS 5 CS 5 6† n/a Reverse MP ×2 +SdKfz8 FlaK 18 A5[2]4[3] CS 6 CS 6 7††[1] n/a CE: +3 VCA, otherwise 0 DRM | Indirect Fire: CE +1 | MA: Rear VCA NA | MA: Random SW Destruction | Mines: As unarmored diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1945.txt index c63a425..4166137 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/german/1945.txt @@ -1,130 +1,130 @@ === vehicles/german/1945 === -Name Capabilities (effective) # Notes Comments ----------------------- ----------------------------- -------------------------- ------ --------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -PzKpfw IB sD6 CS 2 sD6 CS 2 1† NF 2 TK DR -PzKpfw IIA sD6 CS 3 sD6 CS 3 2 n/a -PzKpfw IIF sD7 CS 3 sD7 CS 3 3 N -PzKpfw II(Fl) sD7† CS 2[brewup] sD7† CS 2[brewup] 4† n/a sD: 3 hex range -PzKpfw IIL sD7 CS 4 sD7 CS 4 5 n/a -PzKpfw 35t sD5 CS 4 sD5 CS 4 6† n/a -PzKpfw 38(t)A A4[1]5[2] sD6 CS 4 A5 sD6 CS 4 7† E ESB: 0 DRM -PzKpfw 38(t)E A4[1]5[2] sD7 CS 4 A5 sD7 CS 4 8† E ESB: 0 DRM -Aufklaerer 38(t) CS 5 CS 5 9 A† E MA & CMG: AA ok | ESB: 0 DRM -FT-17 730m(f) CS 2 CS 2 9.1† a c f Road Rate NA | French ESB | CE: +1 Rear Turret & Indirect Fire -FT-17 730(f) AP9 CS 2 AP9 CS 2 9.1† a c f Road Rate NA | French ESB | CE: +1 Rear Turret & Indirect Fire -38H 735(f) AP10 CS 3 AP10 CS 3 9.2 a b† f French ESB | CMG: AA ok (TCA only) -35-S 739(f) CS 4 CS 4 9.3 a b†2 d†1 f French ESB | CMG: AA ok (TCA only) | Immob: dr ≤ 4 [EXC: mines, Direct Fire vs front/rear] -PzKpfw IIID sD6 CS 5 sD6 CS 5 10† n/a -PzKpfw IIIF A4[1] sD7 CS 5 A4 sD7 CS 5 11† n/a -PzKpfw IIIG A4[1] sD7 CS 5 A4 sD7 CS 5 12 N -PzKpfw IIIH A4[1] sD7 CS 6 A4 sD7 CS 6 13† N -PzKpfw IIIJ A6[2] sD7 CS 6 A6 sD7 CS 6 14† N S -PzKpfw IIIL A6[2] sD7 CS 5 A6 sD7 CS 5 15† B† N S -PzKpfw IIIN H9 s9 sD7 CS 5 H9 s9 sD7 CS 5 16 B† NT S -PzKpfw III(Fl) sD7 CS 3 sD7 CS 3 17 n/a -PzKpfw IVA AP7 s9 sD6 CS 5 AP7 s9 sD6 CS 5 18† n/a -PzKpfw IVC AP7 s9 sD6 CS 5 AP7 s9 sD6 CS 5 19† n/a -PzKpfw IVD AP7 H6 s9 sD7 CS 5 AP7 H6 s9 sD7 CS 5 20 N R† -PzKpfw IVE AP7 H6 s9 sD7 CS 6 AP7 H6 s9 sD7 CS 6 21 N R† -PzKpfw IVF1 AP7 H6 s9 sD7 CS 6 AP7 H6 s9 sD7 CS 6 22 N R† -PzKpfw IVF2 A5[2] s8 sD6 CS 6 A5 s8 sD6 CS 6 23† N S -PzKpfw IVH A5[2] s8 sD5 CS 6 A5 s8 sD5 CS 6 24† B† S -PzKpfw IVJ A3[4] s8 sN9 CS 6 A3 s8 sN9 CS 6 25 S -PzKpfw VD sD5 CS 5[brewup] sD5 CS 5[brewup] 26 F† 12: Burn, 11: Immob, 10: Stall -PzKpfw VG sN7[4] CS 6 sN7 CS 6 27† H† 12: Stall -PzKpfw M15/42(i) CS 4 CS 4 28 I Red TH# | Italian ESB -PzKpfw P26/40(i) s8 CS 4 s8 CS 4 29 I Red TH# | Italian ESB -PzKpfw VIE A6[2] sD7 CS 6 A6 sD7 CS 6 30† K NFT SA: Mines (CC: 12 FP) | Morale 9 -PzKpfw VIE (L) A4[4] sN7[4] CS 6 A4 sN7 CS 6 31 K Morale 9 -PzKpfw VIB sN9 CS 6 sN9 CS 6 32† K Morale 9 -StuG IIIB AP7 H6 s9 sD7 CS 4 AP7 H6 s9 sD7 CS 4 33† n/a -StuG IIIG A6[2] s8 sD7 CS 4 A6 s8 sD7 CS 4 34† NFT P† S AAMG: VCA only -StuG IIIG (L) A4[4] s8 sN9 CS 4 A4 s8 sN9 CS 4 35 O† Q† S AAMG: BU only, Rider NA, elevation restrictions | CMG: VCA only -StuH 42 H9 s9 sD7 CS 4 H9 s9 sD7 CS 4 36† NFT P† S AAMG: VCA only -StuH 42 (L) H9 s9 sN9 CS 4 H9 s9 sN9 CS 4 35 O† Q† S AAMG: BU only, Rider NA, elevation restrictions | CMG: VCA only -StuPz IV H7 s9 CS 6 H7 s9 CS 6 37† S BMG: HD Fire OK | No IF -Sturmtiger sN9 CS 5 sN9 CS 5 37.1† K MA: No Bnd (F)F, Motion Fire, Acq, CE | No Area Target Type, same Location, consecutive Fire | +1 TH DRM vs Moving/Motion/Dash | Riders Bail Out when MA fires | IFT: 36+ FP with -3 DRM | HE TK#: [{ *:Direct Hit (dr 1-2): 28 (armored), 22 (unarmored);
Specific Collateral Attack = full FP *:Near Miss: 10 (armored), 16 (unarmored);
Specific Collateral Attack = 20 FP }] | No IF | Morale 9 -PzJg Tiger CS 7 CS 7 38 n/a -StuG 75/18(i) H7 s9 CS 3 H7 s9 CS 3 39 I P† Red TH# | Italian ESB | AAMG: VCA only -StuG 75/34(i) s9 CS 3 s9 CS 3 40 I P† Red TH# | Italian ESB | AAMG: VCA only -StuG 105/25(i) H7 s9 CS 3 H7 s9 CS 3 41 I P† No IF | Red TH# | Italian ESB | AAMG: VCA only -StuG 75/46(i) s9 CS 3 s9 CS 3 42 I P† Red TH# | Italian ESB | AAMG: VCA only -PzJg I A5[1] HE7 CS 3 A5 HE7 CS 3 43 N -PzJg 35R(f) A5[1] HE7 CS 3 A5 HE7 CS 3 44 a French ESB -Pz 35R 731(f) CS 2 CS 2 44.1† a French ESB -Marder I(f) A6[2] HE7 s7 CS 4[brewup] A6 HE7 s7 CS 4[brewup] 45† a French ESB -GSW 39H(f) Pak A4[4] HE9 CS 3 A4 HE9 CS 3 45.1 a e French ESB -Marder II A6[2] HE7 s7 CS 4[brewup] A6 HE7 s7 CS 4[brewup] 46 M† NFT -Marder III(t)H A6[2] HE7 s7 sD6 CS 4[brewup] A6 HE7 s7 sD6 CS 4[brewup] 47 E G NF CE: +3 Front | ESB: 0 DRM -Marder III(t)M A5[3] HE7 s7 sD5 CS 4[brewup] A5 HE7 s7 sD5 CS 4[brewup] 48 E ESB: 0 DRM -PzJg III/IV HE7 CS 5 HE7 CS 5 49 M† -JgdPz 38(t) A4[4] HE7 CS 4 A4 HE7 CS 4 50 E O† ESB: 0 DRM | AAMG: BU only, Rider NA, elevation restrictions -JgdPz 38(t) (Fl) CS 4 CS 4 51 E O† ESB: 0 DRM | AAMG: BU only, Rider NA, elevation restrictions -JgdPz IV A4[4] HE7 s7 sN7[4] CS 4 A4 HE7 s7 sN7 CS 4 52 S -JgdPz IV (L) A4[4] HE7 s7 sN8[4] CS 4 A4 HE7 s7 sN8 CS 4 52 S -StuIG 33B H7 s9 CS 5 H7 s9 CS 5 53† n/a BMG: HD Fire OK | No IF -JgdPz IV/70 HE7 sN9 CS 4 HE7 sN9 CS 4 54† S -JgdPz V HE7 sN9 CS 6 HE7 sN9 CS 6 55 H 12: Stall -JgdPz VI HE7 sN9 CS 7 HE7 sN9 CS 7 56 n/a -SPW 250/1 CS 4 CS 4 57 N -SPW 250/sMG CS 4† CS 4† 58† J† N Inherent Crew & Passenger | CMG: Normal Range = 16, VCA only | CMG: Removal/Scrounge OK (LMG) | AAMG: Removal OK (dm HMG); Scrounge OK (LMG) | AAMG: NA VCA -SPW 250/7 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 J† N Inherent Infantry Crew | AAMG: NA VCA -SPW 250/8 H6 s8 CS 4[brewup] H6 s8 CS 4[brewup] 60 Q† CMG: VCA only -SPW 250/9 CS 4 CS 4 61† A† MA & CMG: AA ok -SPW 250/10 A4[1] CS 4 A4 CS 4 62 J† N AAMG: NA VCA -SPW 251/1 CS 5 CS 5 63 C† N -SPW 251/sMG CS 5† CS 5† 58† C† J† N Inherent Crew & Passenger | CMG: Normal Range = 16, VCA only | CMG: Removal/Scrounge OK (LMG) | AAMG: Removal OK (dm HMG); Scrounge OK (LMG) | AAMG: NA VCA -SPW 251/2 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 C† J† N Inherent Infantry Crew | AAMG: NA VCA -SPW 251/9 H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 64 C† N Q† CMG: VCA only -SPW 251/10 A4[1] CS 4 A4 CS 4 65 C† J† N PSK | AAMG: NA VCA -SPW 251/16 CS 4[brewup] CS 4[brewup] 66† n/a Port/starboard FT's -SPW 251/21 CS 4 CS 4 66.1† n/a 3 TK DR | MA: AA ok -SPW 251/22 HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 67 J† AAMG: NA VCA -SPW S307(f) A4[4] HE9 CS 4 A4 HE9 CS 4 67.1 a e French ESB -mSPW S307(f) IR s5 CS 4 IR s5 CS 4 67.2 a e CE: +1 Rear & Indirect Fire | VCA Facing | Extra Smoke | No IF | French ESB -Kfz 13 CS 2 CS 2 68† n/a Always CE -PSW 221 sD6 CS 2 sD6 CS 2 69† A† N BU Fire NA | Reverse MP ×4 | MA & CMG: AA ok -PSW 222 sD6 CS 3 sD6 CS 3 70† A† N Reverse MP ×3 | MA & CMG: AA ok -PSW 222 (L) sD6 CS 3 sD6 CS 3 70† A† NF Reverse MP ×3 | MA & CMG: AA ok -PSW 231 (6 rad) CS 4 CS 4 71† n/a Reverse MP ×2 -PSW 231 (8 rad) sD6 CS 4 sD6 CS 4 72† N -PSW 232 (8 rad) sD6 CS 4 sD6 CS 4 72 NF -PSW 233 H8 s9 sD7 CS 5 H8 s9 sD7 CS 5 73 NT -PSW 234/1 CS 5 CS 5 74 A† MA & CMG: AA ok -PSW 234/2 A5[3] sD7 CS 4 A5 sD7 CS 4 75 n/a -PSW 234/3 H8 s9 CS 5 H8 s9 CS 5 76 Q† CMG: VCA only -PSW 234/4 HE7 s7 CS 5[brewup] HE7 s7 CS 5[brewup] 77† n/a Reverse MP ×4 -sIG IB H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 78 G No IF | CE: +3 Front -sIG II H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 79 N No IF -sIG 38(t)M H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 80 E NFT No IF | ESB: 0 DRM -PzA II H5 s8 CS 4 H5 s8 CS 4 81 M† -PzA LrS(f) H4 s8 CS 4 H4 s8 CS 4 82 a N No IF | French ESB -GSW 39H(f) H4 s7 CS 4 H4 s7 CS 4 82.1 a e French ESB -PzA III/IV H5 s8 CS 6 H5 s8 CS 6 83 n/a No IF -FlaKPz 38(t) CS 4 CS 4 84 A† E CE: +1 | MA & CMG: AA ok | ESB: 0 DRM -37 FlaK/Pz IV CS 5 CS 5 85† A† Moving: [{ *:Fire ≤ level NA }] | Firing: [{ *:No CE DRM *:Random SW Destruction for MA }] | MA & CMG: AA ok -FlaKPz IV/20 CS 6 CS 6 86 A† 4 TK DR | MA & CMG: AA ok -FlaKPz IV/37 CS 6 CS 6 87 A† MA & CMG: AA ok -SdKfz 10/4 CS 5 CS 5 88 A† D† N MA & CMG: AA ok | Ammo trailer -SdKfz 10/5 CS 4 CS 4 88.1† A†2 D†1 MA & CMG: AA ok | Ammo trailer -SdKfz 6/2 CS 5 CS 5 89 A† D† N MA & CMG: AA ok | Ammo trailer -SdKfz 7/1 CS 4 CS 4 90 A† D† N 4 TK DR | MA & CMG: AA ok | Ammo trailer -Kfz 4 CS 3 CS 3 91† N 2 TK DR (MG) -2cm FlaK LKW CS 5 CS 5 92 A† MA & CMG: AA ok -3.7cm FlaK LKW CS 5 CS 5 92 A† MA & CMG: AA ok -Goliath 93† L† Bog assistance -Kfz 1 cs 2† cs 2† 94† L† N Inherent Crew if armed (with CS#) | Bog assistance -Kfz 1/20 cs 2 cs 2 95† L† +3 Target Size & HD in Water | Bog assistance -Opel 6700 (Blitz) cs 6 cs 6 96 N -Buessing-NAG 4500 cs 7 cs 7 96 N -SdKfz 2 cs 2 cs 2 97† L† N As vehicle (not motorcycle) | Crew/HS Riders OK | Hidden AT Mine attacks NA | AP Mine attacks: Area Fire | Bog assistance -SdKfz 7 cs 6 cs 6 98 N -SdKfz 11 cs 5 cs 5 99 N -PzKpfw IA sD6 CS 2 sD6 CS 2 1† Ge N 2 TK DR (MG) -PzKpfw ICV sD5 CS 3 sD5 CS 3 2 A† MG: VCA only -PzKpfw IID sD6 CS 3 sD6 CS 3 3 n/a -PzKpfw II Bridgelayer sD6 CS 2 sD6 CS 2 4† n/a Inherent Crew | Movement restrictions | Stun = Recall, CE NA -Pz-7TP CS 3 CS 3 5 B† -PSW M35 CS 5 CS 5 6† n/a Reverse MP ×2 -SdKfz8 FlaK 18 A5[2]4[3] CS 6 A4 CS 6 7††[1] n/a CE: +3 VCA, otherwise 0 DRM | Indirect Fire: CE +1 | MA: Rear VCA NA | MA: Random SW Destruction | Mines: As unarmored +Name Capabilities (effective) # Notes Comments +---------------------- ----------------------------- ----------------------- ------ --------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +PzKpfw IB sD6 CS 2 sD6 CS 2 1† NF 2 TK DR +PzKpfw IIA sD6 CS 3 sD6 CS 3 2 n/a +PzKpfw IIF sD7 CS 3 sD7 CS 3 3 N +PzKpfw II(Fl) sD7† CS 2[brewup] sD7† CS 2[brewup] 4† n/a sD: 3 hex range +PzKpfw IIL sD7 CS 4 sD7 CS 4 5 n/a +PzKpfw 35t sD5 CS 4 sD5 CS 4 6† n/a +PzKpfw 38(t)A A4[1]5[2] sD6 CS 4 sD6 CS 4 7† E ESB: 0 DRM +PzKpfw 38(t)E A4[1]5[2] sD7 CS 4 sD7 CS 4 8† E ESB: 0 DRM +Aufklaerer 38(t) CS 5 CS 5 9 A† E MA & CMG: AA ok | ESB: 0 DRM +FT-17 730m(f) CS 2 CS 2 9.1† a c f Road Rate NA | French ESB | CE: +1 Rear Turret & Indirect Fire +FT-17 730(f) AP9 CS 2 AP9 CS 2 9.1† a c f Road Rate NA | French ESB | CE: +1 Rear Turret & Indirect Fire +38H 735(f) AP10 CS 3 AP10 CS 3 9.2 a b† f French ESB | CMG: AA ok (TCA only) +35-S 739(f) CS 4 CS 4 9.3 a b†2 d†1 f French ESB | CMG: AA ok (TCA only) | Immob: dr ≤ 4 [EXC: mines, Direct Fire vs front/rear] +PzKpfw IIID sD6 CS 5 sD6 CS 5 10† n/a +PzKpfw IIIF A4[1] sD7 CS 5 sD7 CS 5 11† n/a +PzKpfw IIIG A4[1] sD7 CS 5 sD7 CS 5 12 N +PzKpfw IIIH A4[1] sD7 CS 6 sD7 CS 6 13† N +PzKpfw IIIJ A6[2] sD7 CS 6 sD7 CS 6 14† N S +PzKpfw IIIL A6[2] sD7 CS 5 sD7 CS 5 15† B† N S +PzKpfw IIIN H9 s9 sD7 CS 5 H9 s9 sD7 CS 5 16 B† NT S +PzKpfw III(Fl) sD7 CS 3 sD7 CS 3 17 n/a +PzKpfw IVA AP7 s9 sD6 CS 5 AP7 s9 sD6 CS 5 18† n/a +PzKpfw IVC AP7 s9 sD6 CS 5 AP7 s9 sD6 CS 5 19† n/a +PzKpfw IVD AP7 H6 s9 sD7 CS 5 AP7 H6 s9 sD7 CS 5 20 N R† +PzKpfw IVE AP7 H6 s9 sD7 CS 6 AP7 H6 s9 sD7 CS 6 21 N R† +PzKpfw IVF1 AP7 H6 s9 sD7 CS 6 AP7 H6 s9 sD7 CS 6 22 N R† +PzKpfw IVF2 A5[2] s8 sD6 CS 6 s8 sD6 CS 6 23† N S +PzKpfw IVH A5[2] s8 sD5 CS 6 s8 sD5 CS 6 24† B† S +PzKpfw IVJ A3[4] s8 sN9 CS 6 s8 sN9 CS 6 25 S +PzKpfw VD sD5 CS 5[brewup] sD5 CS 5[brewup] 26 F† 12: Burn, 11: Immob, 10: Stall +PzKpfw VG sN7[4] CS 6 CS 6 27† H† 12: Stall +PzKpfw M15/42(i) CS 4 CS 4 28 I Red TH# | Italian ESB +PzKpfw P26/40(i) s8 CS 4 s8 CS 4 29 I Red TH# | Italian ESB +PzKpfw VIE A6[2] sD7 CS 6 sD7 CS 6 30† K NFT SA: Mines (CC: 12 FP) | Morale 9 +PzKpfw VIE (L) A4[4] sN7[4] CS 6 CS 6 31 K Morale 9 +PzKpfw VIB sN9 CS 6 sN9 CS 6 32† K Morale 9 +StuG IIIB AP7 H6 s9 sD7 CS 4 AP7 H6 s9 sD7 CS 4 33† n/a +StuG IIIG A6[2] s8 sD7 CS 4 s8 sD7 CS 4 34† NFT P† S AAMG: VCA only +StuG IIIG (L) A4[4] s8 sN9 CS 4 s8 sN9 CS 4 35 O† Q† S AAMG: BU only, Rider NA, elevation restrictions | CMG: VCA only +StuH 42 H9 s9 sD7 CS 4 H9 s9 sD7 CS 4 36† NFT P† S AAMG: VCA only +StuH 42 (L) H9 s9 sN9 CS 4 H9 s9 sN9 CS 4 35 O† Q† S AAMG: BU only, Rider NA, elevation restrictions | CMG: VCA only +StuPz IV H7 s9 CS 6 H7 s9 CS 6 37† S BMG: HD Fire OK | No IF +Sturmtiger sN9 CS 5 sN9 CS 5 37.1† K MA: No Bnd (F)F, Motion Fire, Acq, CE | No Area Target Type, same Location, consecutive Fire | +1 TH DRM vs Moving/Motion/Dash | Riders Bail Out when MA fires | IFT: 36+ FP with -3 DRM | HE TK#: [{ *:Direct Hit (dr 1-2): 28 (armored), 22 (unarmored);
Specific Collateral Attack = full FP *:Near Miss: 10 (armored), 16 (unarmored);
Specific Collateral Attack = 20 FP }] | No IF | Morale 9 +PzJg Tiger CS 7 CS 7 38 n/a +StuG 75/18(i) H7 s9 CS 3 H7 s9 CS 3 39 I P† Red TH# | Italian ESB | AAMG: VCA only +StuG 75/34(i) s9 CS 3 s9 CS 3 40 I P† Red TH# | Italian ESB | AAMG: VCA only +StuG 105/25(i) H7 s9 CS 3 H7 s9 CS 3 41 I P† No IF | Red TH# | Italian ESB | AAMG: VCA only +StuG 75/46(i) s9 CS 3 s9 CS 3 42 I P† Red TH# | Italian ESB | AAMG: VCA only +PzJg I A5[1] HE7 CS 3 HE7 CS 3 43 N +PzJg 35R(f) A5[1] HE7 CS 3 HE7 CS 3 44 a French ESB +Pz 35R 731(f) CS 2 CS 2 44.1† a French ESB +Marder I(f) A6[2] HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 45† a French ESB +GSW 39H(f) Pak A4[4] HE9 CS 3 HE9 CS 3 45.1 a e French ESB +Marder II A6[2] HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 46 M† NFT +Marder III(t)H A6[2] HE7 s7 sD6 CS 4[brewup] HE7 s7 sD6 CS 4[brewup] 47 E G NF CE: +3 Front | ESB: 0 DRM +Marder III(t)M A5[3] HE7 s7 sD5 CS 4[brewup] HE7 s7 sD5 CS 4[brewup] 48 E ESB: 0 DRM +PzJg III/IV HE7 CS 5 HE7 CS 5 49 M† +JgdPz 38(t) A4[4] HE7 CS 4 HE7 CS 4 50 E O† ESB: 0 DRM | AAMG: BU only, Rider NA, elevation restrictions +JgdPz 38(t) (Fl) CS 4 CS 4 51 E O† ESB: 0 DRM | AAMG: BU only, Rider NA, elevation restrictions +JgdPz IV A4[4] HE7 s7 sN7[4] CS 4 HE7 s7 CS 4 52 S +JgdPz IV (L) A4[4] HE7 s7 sN8[4] CS 4 HE7 s7 CS 4 52 S +StuIG 33B H7 s9 CS 5 H7 s9 CS 5 53† n/a BMG: HD Fire OK | No IF +JgdPz IV/70 HE7 sN9 CS 4 HE7 sN9 CS 4 54† S +JgdPz V HE7 sN9 CS 6 HE7 sN9 CS 6 55 H 12: Stall +JgdPz VI HE7 sN9 CS 7 HE7 sN9 CS 7 56 n/a +SPW 250/1 CS 4 CS 4 57 N +SPW 250/sMG CS 4† CS 4† 58† J† N Inherent Crew & Passenger | CMG: Normal Range = 16, VCA only | CMG: Removal/Scrounge OK (LMG) | AAMG: Removal OK (dm HMG); Scrounge OK (LMG) | AAMG: NA VCA +SPW 250/7 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 J† N Inherent Infantry Crew | AAMG: NA VCA +SPW 250/8 H6 s8 CS 4[brewup] H6 s8 CS 4[brewup] 60 Q† CMG: VCA only +SPW 250/9 CS 4 CS 4 61† A† MA & CMG: AA ok +SPW 250/10 A4[1] CS 4 CS 4 62 J† N AAMG: NA VCA +SPW 251/1 CS 5 CS 5 63 C† N +SPW 251/sMG CS 5† CS 5† 58† C† J† N Inherent Crew & Passenger | CMG: Normal Range = 16, VCA only | CMG: Removal/Scrounge OK (LMG) | AAMG: Removal OK (dm HMG); Scrounge OK (LMG) | AAMG: NA VCA +SPW 251/2 IR s8 CS 4[brewup] IR s8 CS 4[brewup] 59 C† J† N Inherent Infantry Crew | AAMG: NA VCA +SPW 251/9 H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 64 C† N Q† CMG: VCA only +SPW 251/10 A4[1] CS 4 CS 4 65 C† J† N PSK | AAMG: NA VCA +SPW 251/16 CS 4[brewup] CS 4[brewup] 66† n/a Port/starboard FT's +SPW 251/21 CS 4 CS 4 66.1† n/a 3 TK DR | MA: AA ok +SPW 251/22 HE7 s7 CS 4[brewup] HE7 s7 CS 4[brewup] 67 J† AAMG: NA VCA +SPW S307(f) A4[4] HE9 CS 4 HE9 CS 4 67.1 a e French ESB +mSPW S307(f) IR s5 CS 4 IR s5 CS 4 67.2 a e CE: +1 Rear & Indirect Fire | VCA Facing | Extra Smoke | No IF | French ESB +Kfz 13 CS 2 CS 2 68† n/a Always CE +PSW 221 sD6 CS 2 sD6 CS 2 69† A† N BU Fire NA | Reverse MP ×4 | MA & CMG: AA ok +PSW 222 sD6 CS 3 sD6 CS 3 70† A† N Reverse MP ×3 | MA & CMG: AA ok +PSW 222 (L) sD6 CS 3 sD6 CS 3 70† A† NF Reverse MP ×3 | MA & CMG: AA ok +PSW 231 (6 rad) CS 4 CS 4 71† n/a Reverse MP ×2 +PSW 231 (8 rad) sD6 CS 4 sD6 CS 4 72† N +PSW 232 (8 rad) sD6 CS 4 sD6 CS 4 72 NF +PSW 233 H8 s9 sD7 CS 5 H8 s9 sD7 CS 5 73 NT +PSW 234/1 CS 5 CS 5 74 A† MA & CMG: AA ok +PSW 234/2 A5[3] sD7 CS 4 sD7 CS 4 75 n/a +PSW 234/3 H8 s9 CS 5 H8 s9 CS 5 76 Q† CMG: VCA only +PSW 234/4 HE7 s7 CS 5[brewup] HE7 s7 CS 5[brewup] 77† n/a Reverse MP ×4 +sIG IB H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 78 G No IF | CE: +3 Front +sIG II H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 79 N No IF +sIG 38(t)M H6 s9 CS 4[brewup] H6 s9 CS 4[brewup] 80 E NFT No IF | ESB: 0 DRM +PzA II H5 s8 CS 4 H5 s8 CS 4 81 M† +PzA LrS(f) H4 s8 CS 4 H4 s8 CS 4 82 a N No IF | French ESB +GSW 39H(f) H4 s7 CS 4 H4 s7 CS 4 82.1 a e French ESB +PzA III/IV H5 s8 CS 6 H5 s8 CS 6 83 n/a No IF +FlaKPz 38(t) CS 4 CS 4 84 A† E CE: +1 | MA & CMG: AA ok | ESB: 0 DRM +37 FlaK/Pz IV CS 5 CS 5 85† A† Moving: [{ *:Fire ≤ level NA }] | Firing: [{ *:No CE DRM *:Random SW Destruction for MA }] | MA & CMG: AA ok +FlaKPz IV/20 CS 6 CS 6 86 A† 4 TK DR | MA & CMG: AA ok +FlaKPz IV/37 CS 6 CS 6 87 A† MA & CMG: AA ok +SdKfz 10/4 CS 5 CS 5 88 A† D† N MA & CMG: AA ok | Ammo trailer +SdKfz 10/5 CS 4 CS 4 88.1† A†2 D†1 MA & CMG: AA ok | Ammo trailer +SdKfz 6/2 CS 5 CS 5 89 A† D† N MA & CMG: AA ok | Ammo trailer +SdKfz 7/1 CS 4 CS 4 90 A† D† N 4 TK DR | MA & CMG: AA ok | Ammo trailer +Kfz 4 CS 3 CS 3 91† N 2 TK DR (MG) +2cm FlaK LKW CS 5 CS 5 92 A† MA & CMG: AA ok +3.7cm FlaK LKW CS 5 CS 5 92 A† MA & CMG: AA ok +Goliath 93† L† Bog assistance +Kfz 1 cs 2† cs 2† 94† L† N Inherent Crew if armed (with CS#) | Bog assistance +Kfz 1/20 cs 2 cs 2 95† L† +3 Target Size & HD in Water | Bog assistance +Opel 6700 (Blitz) cs 6 cs 6 96 N +Buessing-NAG 4500 cs 7 cs 7 96 N +SdKfz 2 cs 2 cs 2 97† L† N As vehicle (not motorcycle) | Crew/HS Riders OK | Hidden AT Mine attacks NA | AP Mine attacks: Area Fire | Bog assistance +SdKfz 7 cs 6 cs 6 98 N +SdKfz 11 cs 5 cs 5 99 N +PzKpfw IA sD6 CS 2 sD6 CS 2 1† Ge N 2 TK DR (MG) +PzKpfw ICV sD5 CS 3 sD5 CS 3 2 A† MG: VCA only +PzKpfw IID sD6 CS 3 sD6 CS 3 3 n/a +PzKpfw II Bridgelayer sD6 CS 2 sD6 CS 2 4† n/a Inherent Crew | Movement restrictions | Stun = Recall, CE NA +Pz-7TP CS 3 CS 3 5 B† +PSW M35 CS 5 CS 5 6† n/a Reverse MP ×2 +SdKfz8 FlaK 18 A5[2]4[3] CS 6 CS 6 7††[1] n/a CE: +3 VCA, otherwise 0 DRM | Indirect Fire: CE +1 | MA: Rear VCA NA | MA: Random SW Destruction | Mines: As unarmored diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/hungarian/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/hungarian/1945.txt index 95c17d3..33815eb 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/hungarian/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/hungarian/1945.txt @@ -1,15 +1,15 @@ === vehicles/hungarian/1945 === -Name Capabilities (effective) # Notes Comments ----------------- ----------------------------- ---------------------- --- -------------- --------------------------------------------------------- -38M Toldi I CS 3 CS 3 7† A†1 MA: ATR 12 [TH] | MA: Scrounge OK | CMG: AA ok (TCA only) -38M Toldi IIA CS 3 CS 3 8† A†1 AP TK# = 9 | CMG: AA ok (TCA only) -40M Turan I(r) sD5 CS 5 sD5 CS 5 9† E N Q Russian ESB | ESB: +1 DRM | Red TH# -41M Turan II(r) AP6 s7 sD5 CS 5 AP6 s7 sD5 CS 5 10† E N Q Russian ESB | ESB: +1 DRM | Red TH# -PzKpfw VG(g) sN6 CS 6 sN6 CS 6 11† E 12: Stall | German ESB | Black TH# -PzKpfw VIE(L)(g) A3[4] sN6 CS 6 A3 sN6 CS 6 12† E Morale 8 | German ESB | Black TH# -43M Zrinyi II s7 sD5 CS 4 s7 sD5 CS 4 13† Q -39M Csaba CS 4 CS 4 14 n/a -40M Csaba CS 4 CS 4 14 n/a -Marder II(g) A4[3]3[4] HE7 s6 CS 4[brewup] A3 HE7 s6 CS 4[brewup] 15 E German ESB | Black TH# -40M Nimrod H6[9][3+] CS 6 H6[9] CS 6 16† P†1 HEAT TK# = 26 | MA & CMG: AA ok +Name Capabilities (effective) # Notes Comments +---------------- ----------------------------- ------------------- --- -------------- --------------------------------------------------------- +38M Toldi I CS 3 CS 3 7† A†1 MA: ATR 12 [TH] | MA: Scrounge OK | CMG: AA ok (TCA only) +38M Toldi IIA CS 3 CS 3 8† A†1 AP TK# = 9 | CMG: AA ok (TCA only) +40M Turan I(r) sD5 CS 5 sD5 CS 5 9† E N Q Russian ESB | ESB: +1 DRM | Red TH# +41M Turan II(r) AP6 s7 sD5 CS 5 AP6 s7 sD5 CS 5 10† E N Q Russian ESB | ESB: +1 DRM | Red TH# +PzKpfw VG(g) sN6 CS 6 sN6 CS 6 11† E 12: Stall | German ESB | Black TH# +PzKpfw VIE(L)(g) A3[4] sN6 CS 6 sN6 CS 6 12† E Morale 8 | German ESB | Black TH# +43M Zrinyi II s7 sD5 CS 4 s7 sD5 CS 4 13† Q +39M Csaba CS 4 CS 4 14 n/a +40M Csaba CS 4 CS 4 14 n/a +Marder II(g) A4[3]3[4] HE7 s6 CS 4[brewup] HE7 s6 CS 4[brewup] 15 E German ESB | Black TH# +40M Nimrod H6[9][3+] CS 6 H6[9] CS 6 16† P†1 HEAT TK# = 26 | MA & CMG: AA ok diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1943.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1943.txt index 60a261f..1620e4a 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1943.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1943.txt @@ -5,10 +5,10 @@ Name Capabilities (effective) T-37 ® CS 2 ® CS 2 1 H† M +3 Target Size & HD if in Water | 12: Immob, 11: Stall T-27 ® CS 2 ® CS 2 1.1† M Q Riders: 1 crew, 1 SMC only (NA if Towing) | 12: Immob, 11: Stall | Stun = Recall, CE & Fire NA T-40 ® CS 2 ® CS 2 2† H† 2 TK DR (12.7 & MG) | +3 Target Size & HD if in Water -T-50 ® A4[2] CS 4 ® A4 CS 4 3 n/a +T-50 ® A4[2] CS 4 ® CS 4 3 n/a T-60 M40 ® CS 2 ® CS 2 4 n/a T-60 M42 ®† CS 2 ®† CS 2 4 C† Radio -T-70 ®† A4[2] CS 2 ®† A4 CS 2 5 C† Radio +T-70 ®† A4[2] CS 2 ®† CS 2 5 C† Radio T-26 M33 ® CS 3 ® CS 3 6 D I† M P 12: Immob, 11: Stall T-26 M37/39 ® CS 3 ® CS 3 6 D M P 12: Immob, 11: Stall T-26 M31 ® CS 3 ® CS 3 6.1† M P Turret Knock-Out: Non-HE TK = Final TK | CMG: Scrounge as BMG | 12: Immob, 11: Stall @@ -25,10 +25,10 @@ T-28 M34(L) ® s8 CS 5 ® s8 CS 5 T-28E M40 ® s8 CS 6 ® s8 CS 6 12† M 12: Immob, 11: Stall T-28E M40(L) ® s8 CS 6 ® s8 CS 6 12.1† M 12: Immob, 11: Stall T-34 M40 ® CS 5 ® CS 5 13 M 12: Immob, 11: Stall -T-34 M41 ®† A4[2] CS 5 ®† A4 CS 5 14† C† M Radio | 12: Immob, 11: Stall -OT-34 ®† A2[2] AP7 CS 4 ®† A2 AP7 CS 4 15† C† M No IF | Radio | 12: Immob, 11: Stall -T-34 M43 A4[2] CS 5 A4 CS 5 16† n/a -T-43 ®† A4[2] CS 5 ®† A4 CS 5 17 C† M Radio | 12: Immob, 11: Stall +T-34 M41 ®† A4[2] CS 5 ®† CS 5 14† C† M Radio | 12: Immob, 11: Stall +OT-34 ®† A2[2] AP7 CS 4 ®† AP7 CS 4 15† C† M No IF | Radio | 12: Immob, 11: Stall +T-34 M43 A4[2] CS 5 CS 5 16† n/a +T-43 ®† A4[2] CS 5 ®† CS 5 17 C† M Radio | 12: Immob, 11: Stall T-34/85 A5[4] sD6† CS 6 sD6† CS 6 18† J† sD: single-use M4/76(a) A3[4] s8 sM8 CS 6 s8 sM8 CS 6 19† N Black TH# | U.S. AP & APCR TK #'s | American ESB T-44 A6[5] CS 5 CS 5 20 B† M BMG: +1 DRM vs Moving/Motion | 12: Immob, 11: Stall @@ -37,11 +37,11 @@ SMK CS 7 CS 7 T-100 CS 7 CS 7 21.2 M T† 12: Immob, 11: Stall | 76 MA: RST | 45L SA: RST; Always BU; No IF | TCA restrictions KV-1 M39/40 CS 6 CS 6 22† M 12: Immob, 11: Stall KV-1E CS 6 CS 6 23 D M 12: Immob, 11: Stall -KV-1 M41 A4[2] CS 6 A4 CS 6 23 D M 12: Immob, 11: Stall -KV-1 M42 A4[2] CS 6 A4 CS 6 23 D M 12: Immob, 11: Stall +KV-1 M41 A4[2] CS 6 CS 6 23 D M 12: Immob, 11: Stall +KV-1 M42 A4[2] CS 6 CS 6 23 D M 12: Immob, 11: Stall KV-2 AP9 CS 7 AP9 CS 7 24† M Pays NT TCA DRM | No IF | 12: Immob, 11: Stall -KV-8 A4[2] AP7 CS 6 A4 AP7 CS 6 15† C M Radio | 12: Immob, 11: Stall -KV-1S A4[2] CS 6 A4 CS 6 25† n/a +KV-8 A4[2] AP7 CS 6 AP7 CS 6 15† C M Radio | 12: Immob, 11: Stall +KV-1S A4[2] CS 6 CS 6 25† n/a KV-85 A4[3]5[4] CS 5 A4 CS 5 26 B† BMG: +1 DRM vs Moving/Motion IS-2 CS 6 CS 6 27 B† No IF | BMG: +1 DRM vs Moving/Motion IS-2m CS 6 CS 6 28 B† G† No IF | BMG: +1 DRM vs Moving/Motion | AAMG: 12.7 @@ -56,7 +56,7 @@ SU-85 A5[3] HE7 s7 CS 5 A5 HE7 s7 CS SU-100 HE7 CS 5 HE7 CS 5 36 n/a SU-57(a) A5[3] HE7 CS 4 A5 HE7 CS 4 37 K American ESB | Red TH# BA-20 ® CS 3 ® CS 3 38 n/a -BA-6 ® A4[2] CS 4 ® A4 CS 4 39 n/a +BA-6 ® A4[2] CS 4 ® CS 4 39 n/a BA-64B CS 2 CS 2 40† A† BU Fire NA | MA & CMG: AA ok ZSU-37 CS 4 CS 4 41† A† Pays NT CA DRM | MA & CMG: AA ok SU-12 AP7 s8 CS 4 AP7 s8 CS 4 42 F† MA: VCA ≤ level NA diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1944.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1944.txt index 7cc266d..b2e8c4c 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1944.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1944.txt @@ -5,10 +5,10 @@ Name Capabilities (effective) T-37 ® CS 2 ® CS 2 1 H† M +3 Target Size & HD if in Water | 12: Immob, 11: Stall T-27 ® CS 2 ® CS 2 1.1† M Q Riders: 1 crew, 1 SMC only (NA if Towing) | 12: Immob, 11: Stall | Stun = Recall, CE & Fire NA T-40 ® CS 2 ® CS 2 2† H† 2 TK DR (12.7 & MG) | +3 Target Size & HD if in Water -T-50 ® A4[2] CS 4 ® A4 CS 4 3 n/a +T-50 ® A4[2] CS 4 ® CS 4 3 n/a T-60 M40 ® CS 2 ® CS 2 4 n/a T-60 M42 ®† CS 2 ®† CS 2 4 C† Radio -T-70 ®† A4[2] CS 2 ®† A4 CS 2 5 C† Radio +T-70 ®† A4[2] CS 2 ®† CS 2 5 C† Radio T-26 M33 ® CS 3 ® CS 3 6 D I† M P 12: Immob, 11: Stall T-26 M37/39 ® CS 3 ® CS 3 6 D M P 12: Immob, 11: Stall T-26 M31 ® CS 3 ® CS 3 6.1† M P Turret Knock-Out: Non-HE TK = Final TK | CMG: Scrounge as BMG | 12: Immob, 11: Stall @@ -25,10 +25,10 @@ T-28 M34(L) ® s8 CS 5 ® s8 CS 5 T-28E M40 ® s8 CS 6 ® s8 CS 6 12† M 12: Immob, 11: Stall T-28E M40(L) ® s8 CS 6 ® s8 CS 6 12.1† M 12: Immob, 11: Stall T-34 M40 ® CS 5 ® CS 5 13 M 12: Immob, 11: Stall -T-34 M41 ®† A4[2] CS 5 ®† A4 CS 5 14† C† M Radio | 12: Immob, 11: Stall -OT-34 ®† A2[2] AP7 CS 4 ®† A2 AP7 CS 4 15† C† M No IF | Radio | 12: Immob, 11: Stall -T-34 M43 A4[2] CS 5 A4 CS 5 16† n/a -T-43 ®† A4[2] CS 5 ®† A4 CS 5 17 C† M Radio | 12: Immob, 11: Stall +T-34 M41 ®† A4[2] CS 5 ®† CS 5 14† C† M Radio | 12: Immob, 11: Stall +OT-34 ®† A2[2] AP7 CS 4 ®† AP7 CS 4 15† C† M No IF | Radio | 12: Immob, 11: Stall +T-34 M43 A4[2] CS 5 CS 5 16† n/a +T-43 ®† A4[2] CS 5 ®† CS 5 17 C† M Radio | 12: Immob, 11: Stall T-34/85 A5[4] sD6† CS 6 A5 sD6† CS 6 18† J† sD: single-use M4/76(a) A3[4] s8 sM8 CS 6 A3 s8 sM8 CS 6 19† N Black TH# | U.S. AP & APCR TK #'s | American ESB T-44 A6[5] CS 5 CS 5 20 B† M BMG: +1 DRM vs Moving/Motion | 12: Immob, 11: Stall @@ -37,26 +37,26 @@ SMK CS 7 CS 7 T-100 CS 7 CS 7 21.2 M T† 12: Immob, 11: Stall | 76 MA: RST | 45L SA: RST; Always BU; No IF | TCA restrictions KV-1 M39/40 CS 6 CS 6 22† M 12: Immob, 11: Stall KV-1E CS 6 CS 6 23 D M 12: Immob, 11: Stall -KV-1 M41 A4[2] CS 6 A4 CS 6 23 D M 12: Immob, 11: Stall -KV-1 M42 A4[2] CS 6 A4 CS 6 23 D M 12: Immob, 11: Stall +KV-1 M41 A4[2] CS 6 CS 6 23 D M 12: Immob, 11: Stall +KV-1 M42 A4[2] CS 6 CS 6 23 D M 12: Immob, 11: Stall KV-2 AP9 CS 7 AP9 CS 7 24† M Pays NT TCA DRM | No IF | 12: Immob, 11: Stall -KV-8 A4[2] AP7 CS 6 A4 AP7 CS 6 15† C M Radio | 12: Immob, 11: Stall -KV-1S A4[2] CS 6 A4 CS 6 25† n/a +KV-8 A4[2] AP7 CS 6 AP7 CS 6 15† C M Radio | 12: Immob, 11: Stall +KV-1S A4[2] CS 6 CS 6 25† n/a KV-85 A4[3]5[4] CS 5 A5 CS 5 26 B† BMG: +1 DRM vs Moving/Motion IS-2 CS 6 CS 6 27 B† No IF | BMG: +1 DRM vs Moving/Motion IS-2m CS 6 CS 6 28 B† G† No IF | BMG: +1 DRM vs Moving/Motion | AAMG: 12.7 IS-3 sD6† CS 6 sD6† CS 6 29 G† J† No IF | AAMG: 12.7 | sD: single-use -SU-76M A5[3] CS 4[brewup] A5 CS 4[brewup] 30† n/a -SU-76i(g) A5[3] CS 5 A5 CS 5 31 K German ESB | Red TH# +SU-76M A5[3] CS 4[brewup] CS 4[brewup] 30† n/a +SU-76i(g) A5[3] CS 5 CS 5 31 K German ESB | Red TH# SU-122 H9 s8 CS 5 H9 s8 CS 5 32 n/a No IF SU-152 CS 6 CS 6 33† n/a No IF ISU-122 s8 CS 6 s8 CS 6 34 G† No IF | AAMG: 12.7 ISU-152 CS 6 CS 6 34 G† No IF | AAMG: 12.7 -SU-85 A5[3] HE7 s7 CS 5 A5 HE7 s7 CS 5 35 n/a +SU-85 A5[3] HE7 s7 CS 5 HE7 s7 CS 5 35 n/a SU-100 HE7 CS 5 HE7 CS 5 36 n/a -SU-57(a) A5[3] HE7 CS 4 A5 HE7 CS 4 37 K American ESB | Red TH# +SU-57(a) A5[3] HE7 CS 4 HE7 CS 4 37 K American ESB | Red TH# BA-20 ® CS 3 ® CS 3 38 n/a -BA-6 ® A4[2] CS 4 ® A4 CS 4 39 n/a +BA-6 ® A4[2] CS 4 ® CS 4 39 n/a BA-64B CS 2 CS 2 40† A† BU Fire NA | MA & CMG: AA ok ZSU-37 CS 4 CS 4 41† A† Pays NT CA DRM | MA & CMG: AA ok SU-12 AP7 s8 CS 4 AP7 s8 CS 4 42 F† MA: VCA ≤ level NA @@ -116,5 +116,5 @@ BT-5 M34 ® C4†[2] CS 3 ® C4†[2 BT-7 M37 ® C4†[3] CS 3 ® C4†[3] CS 3 14 C†3 Ru D†2 Ru I† Ru M†1 12: Immob, 11: Stall T-26A ® AP7 C6†[3] s9 CS 3 ® AP7 C6†[3] s9 CS 3 15† B C†3 Ru D†2 Ru M†1 12: Immob, 11: Stall BT-7A AP7 C6†[2] s9 CS 3 AP7 C6†[2] s9 CS 3 16† B C†2 Ru M†1 Shrapnel Rounds | 12: Immob, 11: Stall -BA-6 ® A4[2]5[3] C4† CS 4 ® A5 C4† CS 4 17† n/a +BA-6 ® A4[2]5[3] C4† CS 4 ® C4† CS 4 17† n/a SU-12 AP7 C6†[2] s8 CS 4 AP7 C6†[2] s8 CS 4 18† B C†2 Ru F†1 Shrapnel Rounds | MA: VCA ≤ level NA diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1945.txt index 8938d54..304e1a6 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/russian/1945.txt @@ -5,10 +5,10 @@ Name Capabilities (effective) T-37 ® CS 2 ® CS 2 1 H† M +3 Target Size & HD if in Water | 12: Immob, 11: Stall T-27 ® CS 2 ® CS 2 1.1† M Q Riders: 1 crew, 1 SMC only (NA if Towing) | 12: Immob, 11: Stall | Stun = Recall, CE & Fire NA T-40 ® CS 2 ® CS 2 2† H† 2 TK DR (12.7 & MG) | +3 Target Size & HD if in Water -T-50 ® A4[2] CS 4 ® A4 CS 4 3 n/a +T-50 ® A4[2] CS 4 ® CS 4 3 n/a T-60 M40 ® CS 2 ® CS 2 4 n/a T-60 M42 ®† CS 2 ®† CS 2 4 C† Radio -T-70 ®† A4[2] CS 2 ®† A4 CS 2 5 C† Radio +T-70 ®† A4[2] CS 2 ®† CS 2 5 C† Radio T-26 M33 ® CS 3 ® CS 3 6 D I† M P 12: Immob, 11: Stall T-26 M37/39 ® CS 3 ® CS 3 6 D M P 12: Immob, 11: Stall T-26 M31 ® CS 3 ® CS 3 6.1† M P Turret Knock-Out: Non-HE TK = Final TK | CMG: Scrounge as BMG | 12: Immob, 11: Stall @@ -25,38 +25,38 @@ T-28 M34(L) ® s8 CS 5 ® s8 CS 5 T-28E M40 ® s8 CS 6 ® s8 CS 6 12† M 12: Immob, 11: Stall T-28E M40(L) ® s8 CS 6 ® s8 CS 6 12.1† M 12: Immob, 11: Stall T-34 M40 ® CS 5 ® CS 5 13 M 12: Immob, 11: Stall -T-34 M41 ®† A4[2] CS 5 ®† A4 CS 5 14† C† M Radio | 12: Immob, 11: Stall -OT-34 ®† A2[2] AP7 CS 4 ®† A2 AP7 CS 4 15† C† M No IF | Radio | 12: Immob, 11: Stall -T-34 M43 A4[2] CS 5 A4 CS 5 16† n/a -T-43 ®† A4[2] CS 5 ®† A4 CS 5 17 C† M Radio | 12: Immob, 11: Stall -T-34/85 A5[4] sD6† CS 6 A5 sD6† CS 6 18† J† sD: single-use -M4/76(a) A3[4] s8 sM8 CS 6 A3 s8 sM8 CS 6 19† N Black TH# | U.S. AP & APCR TK #'s | American ESB +T-34 M41 ®† A4[2] CS 5 ®† CS 5 14† C† M Radio | 12: Immob, 11: Stall +OT-34 ®† A2[2] AP7 CS 4 ®† AP7 CS 4 15† C† M No IF | Radio | 12: Immob, 11: Stall +T-34 M43 A4[2] CS 5 CS 5 16† n/a +T-43 ®† A4[2] CS 5 ®† CS 5 17 C† M Radio | 12: Immob, 11: Stall +T-34/85 A5[4] sD6† CS 6 sD6† CS 6 18† J† sD: single-use +M4/76(a) A3[4] s8 sM8 CS 6 s8 sM8 CS 6 19† N Black TH# | U.S. AP & APCR TK #'s | American ESB T-44 A6[5] CS 5 A6 CS 5 20 B† M BMG: +1 DRM vs Moving/Motion | 12: Immob, 11: Stall T-35 ® s9 CS 8 ® s9 CS 8 21† M 45L SA: Always BU; No TCA Change DRM; No IF | 12: Immob, 11: Stall SMK CS 7 CS 7 21.1 M T† 12: Immob, 11: Stall | 76 MA: RST | 45L SA: RST; Always BU; No IF | TCA restrictions T-100 CS 7 CS 7 21.2 M T† 12: Immob, 11: Stall | 76 MA: RST | 45L SA: RST; Always BU; No IF | TCA restrictions KV-1 M39/40 CS 6 CS 6 22† M 12: Immob, 11: Stall KV-1E CS 6 CS 6 23 D M 12: Immob, 11: Stall -KV-1 M41 A4[2] CS 6 A4 CS 6 23 D M 12: Immob, 11: Stall -KV-1 M42 A4[2] CS 6 A4 CS 6 23 D M 12: Immob, 11: Stall +KV-1 M41 A4[2] CS 6 CS 6 23 D M 12: Immob, 11: Stall +KV-1 M42 A4[2] CS 6 CS 6 23 D M 12: Immob, 11: Stall KV-2 AP9 CS 7 AP9 CS 7 24† M Pays NT TCA DRM | No IF | 12: Immob, 11: Stall -KV-8 A4[2] AP7 CS 6 A4 AP7 CS 6 15† C M Radio | 12: Immob, 11: Stall -KV-1S A4[2] CS 6 A4 CS 6 25† n/a -KV-85 A4[3]5[4] CS 5 A5 CS 5 26 B† BMG: +1 DRM vs Moving/Motion +KV-8 A4[2] AP7 CS 6 AP7 CS 6 15† C M Radio | 12: Immob, 11: Stall +KV-1S A4[2] CS 6 CS 6 25† n/a +KV-85 A4[3]5[4] CS 5 CS 5 26 B† BMG: +1 DRM vs Moving/Motion IS-2 CS 6 CS 6 27 B† No IF | BMG: +1 DRM vs Moving/Motion IS-2m CS 6 CS 6 28 B† G† No IF | BMG: +1 DRM vs Moving/Motion | AAMG: 12.7 IS-3 sD6† CS 6 sD6† CS 6 29 G† J† No IF | AAMG: 12.7 | sD: single-use -SU-76M A5[3] CS 4[brewup] A5 CS 4[brewup] 30† n/a -SU-76i(g) A5[3] CS 5 A5 CS 5 31 K German ESB | Red TH# +SU-76M A5[3] CS 4[brewup] CS 4[brewup] 30† n/a +SU-76i(g) A5[3] CS 5 CS 5 31 K German ESB | Red TH# SU-122 H9 s8 CS 5 H9 s8 CS 5 32 n/a No IF SU-152 CS 6 CS 6 33† n/a No IF ISU-122 s8 CS 6 s8 CS 6 34 G† No IF | AAMG: 12.7 ISU-152 CS 6 CS 6 34 G† No IF | AAMG: 12.7 -SU-85 A5[3] HE7 s7 CS 5 A5 HE7 s7 CS 5 35 n/a +SU-85 A5[3] HE7 s7 CS 5 HE7 s7 CS 5 35 n/a SU-100 HE7 CS 5 HE7 CS 5 36 n/a -SU-57(a) A5[3] HE7 CS 4 A5 HE7 CS 4 37 K American ESB | Red TH# +SU-57(a) A5[3] HE7 CS 4 HE7 CS 4 37 K American ESB | Red TH# BA-20 ® CS 3 ® CS 3 38 n/a -BA-6 ® A4[2] CS 4 ® A4 CS 4 39 n/a +BA-6 ® A4[2] CS 4 ® CS 4 39 n/a BA-64B CS 2 CS 2 40† A† BU Fire NA | MA & CMG: AA ok ZSU-37 CS 4 CS 4 41† A† Pays NT CA DRM | MA & CMG: AA ok SU-12 AP7 s8 CS 4 AP7 s8 CS 4 42 F† MA: VCA ≤ level NA @@ -116,5 +116,5 @@ BT-5 M34 ® C4†[2] CS 3 ® C4†[2 BT-7 M37 ® C4†[3] CS 3 ® C4†[3] CS 3 14 C†3 Ru D†2 Ru I† Ru M†1 12: Immob, 11: Stall T-26A ® AP7 C6†[3] s9 CS 3 ® AP7 C6†[3] s9 CS 3 15† B C†3 Ru D†2 Ru M†1 12: Immob, 11: Stall BT-7A AP7 C6†[2] s9 CS 3 AP7 C6†[2] s9 CS 3 16† B C†2 Ru M†1 Shrapnel Rounds | 12: Immob, 11: Stall -BA-6 ® A4[2]5[3] C4† CS 4 ® A5 C4† CS 4 17† n/a +BA-6 ® A4[2]5[3] C4† CS 4 ® C4† CS 4 17† n/a SU-12 AP7 C6†[2] s8 CS 4 AP7 C6†[2] s8 CS 4 18† B C†2 Ru F†1 Shrapnel Rounds | MA: VCA ≤ level NA diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/slovakian/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/slovakian/1945.txt index c4279fc..a69ef9e 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/slovakian/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/slovakian/1945.txt @@ -1,11 +1,11 @@ === vehicles/slovakian/1945 === -Name Capabilities (effective) # Notes Comments --------------- --------------------------------- -------------------------- --- --------------------------------- ------------------------------------------------------------------------------------------------------- -T vz 33(t) ® CS 2 ® CS 2 17† E F G†2 K†1 Czech ESB | Stun = Recall, CE & Fire NA | 2 TK DR -LT vz 34 ® CS 2 ® CS 2 18 n/a -PzKpfw IIA(g) sD6 CS 3 sD6 CS 3 19 E German ESB | Black TH# -LT vz 40(t) sD6 CS 4 sD6 CS 4 20† E K†1 Czech ESB | 2 TK DR -Marder III(t)H A4[3]3[4] HE7 s7 sD6 CS 4[brewup] A3 HE7 s7 sD6 CS 4[brewup] 21† E CE: +3 Front | Czech ESB | Black TH# -Kfz 1(g) cs 2†[1] cs 2†[1] 22† E I†1 L†2 Inherent Crew if armed (with CS#) | Bog Assistance -SdKfz 2(g) cs 2 cs 2 23† E L†1 German ESB | Crew/HS Rider OK | Hidden AT Mine attacks NA | AP Mine attacks: Area Fire | Bog Assistance +Name Capabilities (effective) # Notes Comments +-------------- --------------------------------- ----------------------- --- --------------------------------- ------------------------------------------------------------------------------------------------------- +T vz 33(t) ® CS 2 ® CS 2 17† E F G†2 K†1 Czech ESB | Stun = Recall, CE & Fire NA | 2 TK DR +LT vz 34 ® CS 2 ® CS 2 18 n/a +PzKpfw IIA(g) sD6 CS 3 sD6 CS 3 19 E German ESB | Black TH# +LT vz 40(t) sD6 CS 4 sD6 CS 4 20† E K†1 Czech ESB | 2 TK DR +Marder III(t)H A4[3]3[4] HE7 s7 sD6 CS 4[brewup] HE7 s7 sD6 CS 4[brewup] 21† E CE: +3 Front | Czech ESB | Black TH# +Kfz 1(g) cs 2†[1] cs 2†[1] 22† E I†1 L†2 Inherent Crew if armed (with CS#) | Bog Assistance +SdKfz 2(g) cs 2 cs 2 23† E L†1 German ESB | Crew/HS Rider OK | Hidden AT Mine attacks NA | AP Mine attacks: Area Fire | Bog Assistance diff --git a/vasl_templates/webapp/tests/test_capabilities.py b/vasl_templates/webapp/tests/test_capabilities.py index c98b02c..9670827 100644 --- a/vasl_templates/webapp/tests/test_capabilities.py +++ b/vasl_templates/webapp/tests/test_capabilities.py @@ -81,7 +81,7 @@ def test_month_capabilities( webapp, webdriver ): #pylint: disable=too-many-stat _check_capabilities( webdriver, webapp, *vehicle, "ETO", "01/1944", "A4 sM8 CS 6" ) _check_capabilities( webdriver, webapp, *vehicle, "ETO", "12/1944", "A4 sM8 CS 6" ) _check_capabilities( webdriver, webapp, *vehicle, "ETO", "01/1945", "A5 s5 sM8 CS 6" ) - _check_capabilities( webdriver, webapp, *vehicle, "ETO", "01/1946", "A5 s5 sM8 CS 6" ) + _check_capabilities( webdriver, webapp, *vehicle, "ETO", "01/1946", "sM8 CS 6" ) # M4A1(76)W & M4A3(76)W: A4(A4)/5(5)†2, s5(5) for vo_name in ("M4A1(76)W","M4A3(76)W"): @@ -90,7 +90,7 @@ def test_month_capabilities( webapp, webdriver ): #pylint: disable=too-many-stat _check_capabilities( webdriver, webapp, *vehicle, "ETO", "07/1944", "sM8 CS 6" ) _check_capabilities( webdriver, webapp, *vehicle, "ETO", "08/1944", "A4[!2] sM8 CS 6" ) _check_capabilities( webdriver, webapp, *vehicle, "ETO", "01/1945", "A5[!2] s5 sM8 CS 6" ) - _check_capabilities( webdriver, webapp, *vehicle, "ETO", "01/1946", "A5[!2] s5 sM8 CS 6" ) + _check_capabilities( webdriver, webapp, *vehicle, "ETO", "01/1946", "sM8 CS 6" ) # Sherman Crab: s5(J4+); WP7(J4+)†2 vehicle = [ "american", "vehicles", "Sherman Crab" ] @@ -277,7 +277,7 @@ def test_month_capabilities( webapp, webdriver ): #pylint: disable=too-many-stat _check_capabilities( webdriver, webapp, *vehicle, "ETO", "06/1944", "WP7[!] s8 CS 5 [brewup]" ) _check_capabilities( webdriver, webapp, *vehicle, "ETO", "01/1945", "WP7[!] s8 CS 5 [brewup]" ) - # 81 Krh/32: s8(N1)† + # 81 Krh/32: s8(N1+)† ordnance = [ "finnish", "ordnance", "81 Krh/32" ] _check_capabilities( webdriver, webapp, *ordnance, "ETO", "12/1940", "NT" ) _check_capabilities( webdriver, webapp, *ordnance, "ETO", "10/1941", "NT" ) @@ -831,7 +831,7 @@ def test_capability_updates_in_ui( webapp, webdriver ): ] ) check_capabilities( "01/01/1943", [ [ - [ "A5", "sD6", "CS 4" ], + [ "sD6", "CS 4" ], [ "A51", "HE7", "CS 3", "foo!" ] ], [ [ "NT", "A4", "H6[9]\u2020" ] ], @@ -840,7 +840,7 @@ def test_capability_updates_in_ui( webapp, webdriver ): ] ) check_capabilities( "01/01/1944", [ [ - [ "A5", "sD6", "CS 4" ], + [ "sD6", "CS 4" ], [ "A51", "HE7", "CS 3", "foo!" ] ], [ [ "NT", "A3", "H6[9]\u2020" ] ], @@ -849,10 +849,10 @@ def test_capability_updates_in_ui( webapp, webdriver ): ] ) check_capabilities( "01/01/1945", [ [ - [ "A5", "sD6", "CS 4" ], + [ "sD6", "CS 4" ], [ "A51", "HE7", "CS 3", "foo!" ] ], - [ [ "NT", "A3", "H6[9]\u2020" ] ], + [ [ "NT", "H6[9]\u2020" ] ], [ [ "D7\u2020", "HE8\u2020", "sD6", "sM8\u2020", "CS 7" ] ], [ [ "NT", "A7" ] ] ] ) diff --git a/vasl_templates/webapp/tests/test_vehicles_ordnance.py b/vasl_templates/webapp/tests/test_vehicles_ordnance.py index b4bff40..6c4cc94 100644 --- a/vasl_templates/webapp/tests/test_vehicles_ordnance.py +++ b/vasl_templates/webapp/tests/test_vehicles_ordnance.py @@ -223,7 +223,7 @@ def test_variable_capabilities( webapp, webdriver ): do_test( 12, 1944, '"D6\u2020" "HE8\u2020" "sD6" "sM8\u2020" "CS 7"' ) do_test( 1, 1945, '"D7\u2020" "HE8\u2020" "sD6" "sM8\u2020" "CS 7"' ) do_test( 12, 1945, '"D7\u2020" "HE8\u2020" "sD6" "sM8\u2020" "CS 7"' ) - do_test( 1, 1946, '"D7\u2020" "HE8\u2020" "sD6" "sM8\u2020" "CS 7"' ) + do_test( 1, 1946, '"HE8\u2020" "sD6" "sM8\u2020" "CS 7"' ) # ---------------------------------------------------------------------