diff --git a/master changelog.md b/master changelog.md index e8cbc03..ffd2c89 100644 --- a/master changelog.md +++ b/master changelog.md @@ -5,6 +5,7 @@ Since December 2022, this changelog shows only past changes. See patchnotes.md for info on the most recent patch! # Table of Contents +- [25 July 2026](#25-july-2026) - [18 July 2026](#18-july-2026) - [11 July 2026](#11-july-2026) - [3 July 2026](#3-july-2026) @@ -118,6 +119,24 @@ See patchnotes.md for info on the most recent patch! - [13 August 2020](#13-august-2020) - [12 August 2020](#12-august-2020) +# 25 July 2026 +## Year 4, month 7, patch 4 + +## Patch goals +- Continue technical improvements for the Throneroom stage! +- Further improve audiovisuals +- [Subscribe on ko-fi](https://ko-fi.com/pr0nogoandveeq7) to get a sneak peek of the incoming changes! + +## Core + +- Reorganized replay options to `Misc` tab (c. Jesse) + +## Audiovisuals + +- Updated background graphics for `Options` and `CrownLink Join` menus (c. Jesse) +- New death SFX for: + - Striga (c. Milia) + # 18 July 2026 ## Year 4, month 7, patch 3 diff --git a/mpq/arr/flingy.datex b/mpq/arr/flingy.datex index 4dfac0d..098c07f 100644 Binary files a/mpq/arr/flingy.datex and b/mpq/arr/flingy.datex differ diff --git a/mpq/arr/flingy.txt b/mpq/arr/flingy.txt index 63251bf..cdff6c0 100644 --- a/mpq/arr/flingy.txt +++ b/mpq/arr/flingy.txt @@ -498,7 +498,7 @@ Skortrith Cesiant Tentacle Cyclops Weapon Impact Sentinel Rail Hotshot -Nathrok Lake +Vornath Pond Skithrok Scab Qilin Auriel @@ -662,7 +662,7 @@ Missionary Weaponhit Maverick (Upstart) Vulture (Upstart) Goremast -Eidolon (Upstart) +Morrigan Cutlass Cutlass Turret Broadside @@ -700,19 +700,19 @@ Cybrene Raynor Vulture Scralia Endbore Electricity -Extended Flingy #494 -Extended Flingy #495 -Extended Flingy #496 -Extended Flingy #497 -Extended Flingy #498 -Extended Flingy #499 -Extended Flingy #500 -Extended Flingy #501 -Extended Flingy #502 -Extended Flingy #503 -Extended Flingy #504 -Extended Flingy #505 -Extended Flingy #506 +Rozirokor +Zytryleth +Camazotz +Grimoire +Simulacrum (Khalendric) +Idol (Khalendric) +Thrombocyte +Vestige (Starbound) +Arquebus (Hecaton) +Acqui +Alzurokor (Imicren) +Hydrokor (Goszirith) +Nihilist Extended Flingy #507 Extended Flingy #508 Extended Flingy #509 diff --git a/mpq/arr/images.datex b/mpq/arr/images.datex index a6b0a3e..2e44730 100644 Binary files a/mpq/arr/images.datex and b/mpq/arr/images.datex differ diff --git a/mpq/arr/images.tbl b/mpq/arr/images.tbl index cdc494c..147bd22 100644 Binary files a/mpq/arr/images.tbl and b/mpq/arr/images.tbl differ diff --git a/mpq/arr/images.txt b/mpq/arr/images.txt index 7d218bb..97381f9 100644 --- a/mpq/arr/images.txt +++ b/mpq/arr/images.txt @@ -1778,7 +1778,7 @@ Hotshot Hotshot Shadow Ocsal Regression Overlay Tyranny Overlay -Nathrok Lake +Vornath Pond Mortothrokor Birth Skibact Scab Mortothrokor Passive Overlay @@ -2014,13 +2014,13 @@ Eidolon Shadow (Nydus) Maverick (Futurist) Maverick Shadow (Futurist) Hydralisk (Orkoti) -Hydralisk Shadow (Orkoti) +Hydralisk (Orkoti) Shadow Tencendur Tencendur Shadow Tencendur Attack Overlay (Orange) Tencendur Attack Overlay (Blue) Tencendur Attack Overlay (Green) -Hydralisk Remains (Orkoti) +Hydralisk (Orkoti) Remains Tencendur Flag Inzorthrokor Inzorthrokor Shadow @@ -2311,9 +2311,9 @@ Vulture (Upstart) Shadow Vulture (Upstart) Engine Goremast Goremast Shadow -Eidolon (Upstart) -Eidolon (Upstart) Shadow -Eidolon (Upstart) Remains +Morrigan +Morrigan Shadow +Morrigan Remains Cutlass Cutlass Shadow Cutlass Turret @@ -2399,68 +2399,68 @@ Endbore Electricity Civilian Death Civilian Remains Pilgrim Remains -Extended Image #1399 -Extended Image #1400 -Extended Image #1401 -Extended Image #1402 -Extended Image #1403 -Extended Image #1404 -Extended Image #1405 -Extended Image #1406 -Extended Image #1407 -Extended Image #1408 -Extended Image #1409 -Extended Image #1410 -Extended Image #1411 -Extended Image #1412 -Extended Image #1413 -Extended Image #1414 -Extended Image #1415 -Extended Image #1416 -Extended Image #1417 -Extended Image #1418 -Extended Image #1419 -Extended Image #1420 -Extended Image #1421 -Extended Image #1422 -Extended Image #1423 -Extended Image #1424 -Extended Image #1425 -Extended Image #1426 -Extended Image #1427 -Extended Image #1428 -Extended Image #1429 -Extended Image #1430 -Extended Image #1431 -Extended Image #1432 -Extended Image #1433 -Extended Image #1434 -Extended Image #1435 -Extended Image #1436 -Extended Image #1437 -Extended Image #1438 -Extended Image #1439 -Extended Image #1440 -Extended Image #1441 -Extended Image #1442 -Extended Image #1443 -Extended Image #1444 -Extended Image #1445 -Extended Image #1446 -Extended Image #1447 -Extended Image #1448 -Extended Image #1449 -Extended Image #1450 -Extended Image #1451 -Extended Image #1452 -Extended Image #1453 -Extended Image #1454 -Extended Image #1455 -Extended Image #1456 -Extended Image #1457 -Extended Image #1458 -Extended Image #1459 -Extended Image #1460 +Rozirokor +Rozirokor Shadow +Rozirokor Remains +Rozirokor Birth +Rozirokor Mutate +Thrombocyte +Thrombocyte Shadow +Grimoire +Grimoire Shadow +Zytryleth +Zytryleth Shadow +Inzorthrokor Mutate +Camazotz +Camazotz Shadow +Grimoire +Grimoire Shadow +Bloodsummon Building Rubble Small +Bloodsummon Building Rubble Large +Bloodsummon Unit Rubble Tiny +Bloodsummon Unit Rubble Small +Bloodsummon Unit Rubble Medium +Bloodsummon Ritual +Vornath Pond Shadow +Atreus Remains +Simulacrum (Khalendric) +Simulacrum (Khalendric) Shadow +Idol (Khalendric) +Idol (Khalendric) Shadow +Idol (Khalendric) Remains +Thrombocyte +Thrombocyte Shadow +Vestige (Starbound) +Vestige (Starbound) Shadow +Arquebus (Hecaton) +Arquebus (Hecaton) Shadow +Acqui +Acqui Shadow +Alzurokor (Imicren) +Alzurokor (Imicren) Shadow +Alzurokor (Imicren) Birth +Alzurokor (Imicren) Remnants +Hydrokor (Goszirith) +Hydrokor (Goszirith) Shadow +Hydrokor (Goszirith) Birth +Hydrokor (Goszirith) Remains +Hydrokor (Goszirith) Mutate +Hydralisk Mutate +Nihilist +Nihilist Shadow +Sovrokor Remains +Sovrokor Shadow +Sovrokor Birth +Sovrokor Mutate +Zethrokor Mutate +Eidolon (Nydus) Remains +Hydralisk (Orkoti) Mutate +Valkyrie (Hecaton) Shadow +Valkyrie (Hecaton) Engines +Impact Dissipation +Crushing Delivery Small +Crushing Delivery Medium +Crushing Delivery Large Extended Image #1461 Extended Image #1462 Extended Image #1463 diff --git a/mpq/arr/portdata.datex b/mpq/arr/portdata.datex index c4fba29..d160b03 100644 Binary files a/mpq/arr/portdata.datex and b/mpq/arr/portdata.datex differ diff --git a/mpq/arr/portdata.tbl b/mpq/arr/portdata.tbl index 5f248b1..1ca1970 100644 Binary files a/mpq/arr/portdata.tbl and b/mpq/arr/portdata.tbl differ diff --git a/mpq/arr/portdata.txt b/mpq/arr/portdata.txt index 28abb5e..fc1cc01 100644 --- a/mpq/arr/portdata.txt +++ b/mpq/arr/portdata.txt @@ -307,9 +307,9 @@ Boyeau Ferrum Prophet 1 Prophet 2 -Extended Portrait #200 -Extended Portrait #201 -Extended Portrait #202 +Bloodsummon Advisor +Vestige +Rozirokor Extended Portrait #203 Extended Portrait #204 Extended Portrait #205 diff --git a/mpq/arr/sfxdata.dat b/mpq/arr/sfxdata.dat index 93eee17..a81cc30 100644 Binary files a/mpq/arr/sfxdata.dat and b/mpq/arr/sfxdata.dat differ diff --git a/mpq/arr/sfxdata.txt b/mpq/arr/sfxdata.txt index 245b329..b3c285f 100644 --- a/mpq/arr/sfxdata.txt +++ b/mpq/arr/sfxdata.txt @@ -4256,47 +4256,47 @@ Pilgrim Construction Completion 01 Domain Passive 01 Domain Passive 02 Domain Passive 03 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 -Extended Sound #1 +Striga Death 01 +Striga Death 02 +Striga Death 03 +Camazotz Weaponfire 01 +Camazotz Weaponfire 02 +Camazotz Weaponfire 03 +Rozirokor Weaponfire 01 +Rozirokor Weaponfire 02 +Rozirokor Weaponhit 01 +Rozirokor Weaponhit 02 +Rozirokor Weaponhit 03 +Bloodsummon Load 01 +Bloodsummon Unload 01 +Grimoire Selected 01 +Grimoire Passive 01 +Vicar Ready 01 +Vicar Ready 02 +Vicar Ready 03 +Vicar Selected 01 +Vicar Selected 02 +Vicar Selected 03 +Vicar Selected 04 +Vicar Order Passive 01 +Vicar Order Passive 02 +Vicar Order Passive 03 +Vicar Order Passive 04 +Vicar Order Aggressive 01 +Vicar Order Aggressive 02 +Vicar Order Aggressive 03 +Vicar Order Aggressive 04 +Vicar Under Attack 01 +Vicar Under Attack 02 +Vicar Under Attack 03 +Vicar Under Attack 04 +Vicar Ability Use 01 +Landlock Ambient 01 +Conduit Selected 01 +Cyclops (Futurist) Weaponfire 01 +Cyclops (Futurist) Weaponfire 02 +Cyclops (Futurist) Weaponfire 03 +Cyclops (Futurist) Weaponfire 04 Extended Sound #1 Extended Sound #1 Extended Sound #1 diff --git a/mpq/arr/sounds.txt b/mpq/arr/sounds.txt index 5d3891b..7c8ee2c 100644 --- a/mpq/arr/sounds.txt +++ b/mpq/arr/sounds.txt @@ -4255,4 +4255,45 @@ cm\a\pilgrim\dth-02.wav cm\a\pilgrim\bld-01.wav cm\a\domain\pas-01.wav cm\a\domain\pas-02.wav -cm\a\domain\pas-03.wav \ No newline at end of file +cm\a\domain\pas-03.wav +cm\t\striga\dth-01.wav +cm\t\striga\dth-02.wav +cm\t\striga\dth-03.wav +cm\f-t\camazotz\wf-01.wav +cm\f-t\camazotz\wf-02.wav +cm\f-t\camazotz\wf-03.wav +cm\f-z\rozirokor\wf-01.wav +cm\f-z\rozirokor\wf-02.wav +cm\f-z\rozirokor\wh-01.wav +cm\f-z\rozirokor\wh-02.wav +cm\f-z\rozirokor\wh-03.wav +cm\b\b-load-01.wav +cm\b\b-unload-01.wav +cm\b\grimoire\wht-01.wav +cm\b\grimoire\pas-proc-01.wav +cm\a\vicar\rdy-01.wav +cm\a\vicar\rdy-02.wav +cm\a\vicar\rdy-03.wav +cm\a\vicar\wht-01.wav +cm\a\vicar\wht-02.wav +cm\a\vicar\wht-03.wav +cm\a\vicar\wht-04.wav +cm\a\vicar\yes-01.wav +cm\a\vicar\yes-02.wav +cm\a\vicar\yes-03.wav +cm\a\vicar\yes-04.wav +cm\a\vicar\agg-01.wav +cm\a\vicar\agg-02.wav +cm\a\vicar\agg-03.wav +cm\a\vicar\agg-04.wav +cm\a\vicar\hlp-01.wav +cm\a\vicar\hlp-02.wav +cm\a\vicar\hlp-03.wav +cm\a\vicar\hlp-04.wav +cm\a\vicar\cst-01.wav +cm\a\_building\landlock-amb-01.wav +cm\a\_building\conduit-wht-01.wav +cm\f-t\cyclops-futurist\wf-01.wav +cm\f-t\cyclops-futurist\wf-02.wav +cm\f-t\cyclops-futurist\wf-03.wav +cm\f-t\cyclops-futurist\wf-04.wav \ No newline at end of file diff --git a/mpq/arr/sprites.datex b/mpq/arr/sprites.datex index 0d2dbce..8a22ed7 100644 Binary files a/mpq/arr/sprites.datex and b/mpq/arr/sprites.datex differ diff --git a/mpq/arr/sprites.txt b/mpq/arr/sprites.txt index 3e9cfaf..775a2b7 100644 --- a/mpq/arr/sprites.txt +++ b/mpq/arr/sprites.txt @@ -887,7 +887,7 @@ Cyclops Weapon Impact Sentinel Rail Lanifect Remains Hotshot -Nathrok Lake +Vornath Pond Skithrok Scab Qilin Auriel @@ -1118,7 +1118,7 @@ Maverick (Upstart) Maverick (Upstart) Remains Vulture (Upstart) Goremast -Eidolon (Upstart) +Morrigan Cutlass Cutlass Turret Broadside @@ -1158,32 +1158,32 @@ Scralia Endbore Electricity Civilian Remnants Pilgrim Remnants -Extended Sprite #644 -Extended Sprite #645 -Extended Sprite #646 -Extended Sprite #647 -Extended Sprite #648 -Extended Sprite #649 -Extended Sprite #650 -Extended Sprite #651 -Extended Sprite #652 -Extended Sprite #653 -Extended Sprite #654 -Extended Sprite #655 -Extended Sprite #656 -Extended Sprite #657 -Extended Sprite #658 -Extended Sprite #659 -Extended Sprite #660 -Extended Sprite #661 -Extended Sprite #662 -Extended Sprite #663 -Extended Sprite #664 -Extended Sprite #665 -Extended Sprite #666 -Extended Sprite #667 -Extended Sprite #668 -Extended Sprite #669 +Rozirokor +Rozirokor Remains +Zytryleth +Camazotz +Grimoire +Bloodsummon Rubble Small +Bloodsummon Rubble Large +Bloodsummon Unit Rubble Tiny +Bloodsummon Unit Rubble Small +Bloodsummon Unit Rubble Medium +Atreus Remains +Simulacrum (Khalendric) +Idol (Khalendric) +Idol (Khalendric) Remains +Thrombocyte +Vestige (Starbound) +Arquebus (Hecaton) +Acqui +Alzurokor (Imicren) +Hydrokor (Goszirith) +Alzurokor Remains +Hydrokor Remains +Nihilist +Sovrokor Remains +Eidolon (Nydus) Remains +Morrigan Remains Extended Sprite #670 Extended Sprite #671 Extended Sprite #672 diff --git a/mpq/arr/techdata.datex b/mpq/arr/techdata.datex index a5e90ac..ccf5caa 100644 Binary files a/mpq/arr/techdata.datex and b/mpq/arr/techdata.datex differ diff --git a/mpq/arr/techdata.txt b/mpq/arr/techdata.txt index 2b875df..6c70cb2 100644 --- a/mpq/arr/techdata.txt +++ b/mpq/arr/techdata.txt @@ -51,7 +51,7 @@ Preylock (Askosi) Lobotomy Grenade (Goska dupe) Skryspawn (Stroluum) Puppeteer (Askosi) -Extended Tech #10 +Blood Burst (Bloodsummon) Extended Tech #11 Extended Tech #12 Extended Tech #13 diff --git a/mpq/arr/units.datex b/mpq/arr/units.datex index 0336eae..ceb482a 100644 Binary files a/mpq/arr/units.datex and b/mpq/arr/units.datex differ diff --git a/mpq/arr/units.txt b/mpq/arr/units.txt index 86ea9c2..2def215 100644 --- a/mpq/arr/units.txt +++ b/mpq/arr/units.txt @@ -139,7 +139,7 @@ Terran Olympian Zerg Matravil Nest Zerg Almakis Antre Zerg Ulgorg Cavern -Zerg Muthrok Spire +Zerg Mutath Spire Zerg Quazeth Pool Zerg Cagrant Cesiant Zerg Spraith Cesiant @@ -148,7 +148,7 @@ Zerg Surkith Cesiant Terran Guildhall Terran Striga Zerg Excisant -Terran Luminary +Terran Luminary (Golden Republic) Terran Siren Zerg Othstol Oviform Zerg Tethvith Swamp @@ -208,7 +208,7 @@ Right Upper Level Door Left Pit Door Right Pit Door Terran Sentinel -Spliced Tarasque +Terran Tarasque (Nydus Trinity) Terran Anticthon Zerg Kethraj Keep Terran Atelier @@ -572,8 +572,8 @@ Terran Vulture (Upstart) Terran Cutlass (Futurist) Cutlass Turret (Futurist) Terran Maverick (Upstart) -Protoss Ecclesiast (Astral) -Terran Eidolon (Upstart) +Protoss Tritius (Astral) +Terran Morrigan (Upstart) Terran Ajax (Futurist) Askosi Dorminge Askosi Lotiro @@ -614,22 +614,22 @@ Big Infested Kerrigan Raynor Vulture Duke Battlecruiser Askosi Scralia -Extended Unit #389 -Extended Unit #390 -Extended Unit #391 -Extended Unit #392 -Extended Unit #393 -Extended Unit #394 -Extended Unit #395 -Extended Unit #396 -Extended Unit #397 -Extended Unit #398 -Extended Unit #399 -Extended Unit #400 -Extended Unit #401 -Extended Unit #402 -Extended Unit #403 -Extended Unit #404 +Zerg Rozirokor (Imicren) +Bloodsummon Thrombocyte +Bloodsummon Grimoire +Zerg Zytryleth (Zorthos) +Terran Camazotz (Nydus) +Protoss Simulacrum (Khalendric) +Protoss Idol (Khalendric) +Protoss Vestige (Starbound) +Terran Arquebus (Hecaton) +Bloodsummon Acqui +Zerg Alzurokor (Imicren) +Zerg Hydrokor (Goszirith) +Protoss Gladius (Order) +Terran Eidolon (Golden Republic) +Zerg Zethalisk (Orkoti) +Bloodsummon Nihilist Extended Unit #405 Extended Unit #406 Extended Unit #407 diff --git a/mpq/arr/upgrades.datex b/mpq/arr/upgrades.datex index cfcee2a..dd8670f 100644 Binary files a/mpq/arr/upgrades.datex and b/mpq/arr/upgrades.datex differ diff --git a/mpq/arr/upgrades.txt b/mpq/arr/upgrades.txt index 3633657..df07e73 100644 --- a/mpq/arr/upgrades.txt +++ b/mpq/arr/upgrades.txt @@ -61,9 +61,9 @@ Terran Structure Armor GlobalUpgrade60 Forerunner Alloy Forerunner Lattice -Extended Upgrade #3 -Extended Upgrade #4 -Extended Upgrade #5 +Bloodsummon Stigmata +Bloodsummon Atar +Bloodsummon Sacrament Extended Upgrade #6 Extended Upgrade #7 Extended Upgrade #8 diff --git a/mpq/arr/weapons.datex b/mpq/arr/weapons.datex index a23d6ff..0563cfe 100644 Binary files a/mpq/arr/weapons.datex and b/mpq/arr/weapons.datex differ diff --git a/mpq/arr/weapons.txt b/mpq/arr/weapons.txt index 80ad79f..c306d1f 100644 --- a/mpq/arr/weapons.txt +++ b/mpq/arr/weapons.txt @@ -253,4 +253,748 @@ Tunneling Maw (Malkothrokor) Logi Rockets (Valkyrie Hecaton) C-10 Canister Rifle (Kerrigan) Claws (Kerrigan) -None (new) \ No newline at end of file +None (new) +Corto Railgun (Cutlass) +Extended Weapon #128 +Extended Weapon #129 +Extended Weapon #130 +Extended Weapon #131 +Extended Weapon #132 +Extended Weapon #133 +Extended Weapon #134 +Extended Weapon #135 +Extended Weapon #136 +Extended Weapon #137 +Extended Weapon #138 +Extended Weapon #139 +Extended Weapon #140 +Extended Weapon #141 +Extended Weapon #142 +Extended Weapon #143 +Extended Weapon #144 +Extended Weapon #145 +Extended Weapon #146 +Extended Weapon #147 +Extended Weapon #148 +Extended Weapon #149 +Extended Weapon #150 +Extended Weapon #151 +Extended Weapon #152 +Extended Weapon #153 +Extended Weapon #154 +Extended Weapon #155 +Extended Weapon #156 +Extended Weapon #157 +Extended Weapon #158 +Extended Weapon #159 +Extended Weapon #160 +Extended Weapon #161 +Extended Weapon #162 +Extended Weapon #163 +Extended Weapon #164 +Extended Weapon #165 +Extended Weapon #166 +Extended Weapon #167 +Extended Weapon #168 +Extended Weapon #169 +Extended Weapon #170 +Extended Weapon #171 +Extended Weapon #172 +Extended Weapon #173 +Extended Weapon #174 +Extended Weapon #175 +Extended Weapon #176 +Extended Weapon #177 +Extended Weapon #178 +Extended Weapon #179 +Extended Weapon #180 +Extended Weapon #181 +Extended Weapon #182 +Extended Weapon #183 +Extended Weapon #184 +Extended Weapon #185 +Extended Weapon #186 +Extended Weapon #187 +Extended Weapon #188 +Extended Weapon #189 +Extended Weapon #190 +Extended Weapon #191 +Extended Weapon #192 +Extended Weapon #193 +Extended Weapon #194 +Extended Weapon #195 +Extended Weapon #196 +Extended Weapon #197 +Extended Weapon #198 +Extended Weapon #199 +Extended Weapon #200 +Extended Weapon #201 +Extended Weapon #202 +Extended Weapon #203 +Extended Weapon #204 +Extended Weapon #205 +Extended Weapon #206 +Extended Weapon #207 +Extended Weapon #208 +Extended Weapon #209 +Extended Weapon #210 +Extended Weapon #211 +Extended Weapon #212 +Extended Weapon #213 +Extended Weapon #214 +Extended Weapon #215 +Extended Weapon #216 +Extended Weapon #217 +Extended Weapon #218 +Extended Weapon #219 +Extended Weapon #220 +Extended Weapon #221 +Extended Weapon #222 +Extended Weapon #223 +Extended Weapon #224 +Extended Weapon #225 +Extended Weapon #226 +Extended Weapon #227 +Extended Weapon #228 +Extended Weapon #229 +Extended Weapon #230 +Extended Weapon #231 +Extended Weapon #232 +Extended Weapon #233 +Extended Weapon #234 +Extended Weapon #235 +Extended Weapon #236 +Extended Weapon #237 +Extended Weapon #238 +Extended Weapon #239 +Extended Weapon #240 +Extended Weapon #241 +Extended Weapon #242 +Extended Weapon #243 +Extended Weapon #244 +Extended Weapon #245 +Extended Weapon #246 +Extended Weapon #247 +Extended Weapon #248 +Extended Weapon #249 +Extended Weapon #250 +Extended Weapon #251 +Extended Weapon #252 +Extended Weapon #253 +Extended Weapon #254 +Extended Weapon #255 +Extended Weapon #256 +Extended Weapon #257 +Extended Weapon #258 +Extended Weapon #259 +Extended Weapon #260 +Extended Weapon #261 +Extended Weapon #262 +Extended Weapon #263 +Extended Weapon #264 +Extended Weapon #265 +Extended Weapon #266 +Extended Weapon #267 +Extended Weapon #268 +Extended Weapon #269 +Extended Weapon #270 +Extended Weapon #271 +Extended Weapon #272 +Extended Weapon #273 +Extended Weapon #274 +Extended Weapon #275 +Extended Weapon #276 +Extended Weapon #277 +Extended Weapon #278 +Extended Weapon #279 +Extended Weapon #280 +Extended Weapon #281 +Extended Weapon #282 +Extended Weapon #283 +Extended Weapon #284 +Extended Weapon #285 +Extended Weapon #286 +Extended Weapon #287 +Extended Weapon #288 +Extended Weapon #289 +Extended Weapon #290 +Extended Weapon #291 +Extended Weapon #292 +Extended Weapon #293 +Extended Weapon #294 +Extended Weapon #295 +Extended Weapon #296 +Extended Weapon #297 +Extended Weapon #298 +Extended Weapon #299 +Extended Weapon #300 +Extended Weapon #301 +Extended Weapon #302 +Extended Weapon #303 +Extended Weapon #304 +Extended Weapon #305 +Extended Weapon #306 +Extended Weapon #307 +Extended Weapon #308 +Extended Weapon #309 +Extended Weapon #310 +Extended Weapon #311 +Extended Weapon #312 +Extended Weapon #313 +Extended Weapon #314 +Extended Weapon #315 +Extended Weapon #316 +Extended Weapon #317 +Extended Weapon #318 +Extended Weapon #319 +Extended Weapon #320 +Extended Weapon #321 +Extended Weapon #322 +Extended Weapon #323 +Extended Weapon #324 +Extended Weapon #325 +Extended Weapon #326 +Extended Weapon #327 +Extended Weapon #328 +Extended Weapon #329 +Extended Weapon #330 +Extended Weapon #331 +Extended Weapon #332 +Extended Weapon #333 +Extended Weapon #334 +Extended Weapon #335 +Extended Weapon #336 +Extended Weapon #337 +Extended Weapon #338 +Extended Weapon #339 +Extended Weapon #340 +Extended Weapon #341 +Extended Weapon #342 +Extended Weapon #343 +Extended Weapon #344 +Extended Weapon #345 +Extended Weapon #346 +Extended Weapon #347 +Extended Weapon #348 +Extended Weapon #349 +Extended Weapon #350 +Extended Weapon #351 +Extended Weapon #352 +Extended Weapon #353 +Extended Weapon #354 +Extended Weapon #355 +Extended Weapon #356 +Extended Weapon #357 +Extended Weapon #358 +Extended Weapon #359 +Extended Weapon #360 +Extended Weapon #361 +Extended Weapon #362 +Extended Weapon #363 +Extended Weapon #364 +Extended Weapon #365 +Extended Weapon #366 +Extended Weapon #367 +Extended Weapon #368 +Extended Weapon #369 +Extended Weapon #370 +Extended Weapon #371 +Extended Weapon #372 +Extended Weapon #373 +Extended Weapon #374 +Extended Weapon #375 +Extended Weapon #376 +Extended Weapon #377 +Extended Weapon #378 +Extended Weapon #379 +Extended Weapon #380 +Extended Weapon #381 +Extended Weapon #382 +Extended Weapon #383 +Extended Weapon #384 +Extended Weapon #385 +Extended Weapon #386 +Extended Weapon #387 +Extended Weapon #388 +Extended Weapon #389 +Extended Weapon #390 +Extended Weapon #391 +Extended Weapon #392 +Extended Weapon #393 +Extended Weapon #394 +Extended Weapon #395 +Extended Weapon #396 +Extended Weapon #397 +Extended Weapon #398 +Extended Weapon #399 +Extended Weapon #400 +Extended Weapon #401 +Extended Weapon #402 +Extended Weapon #403 +Extended Weapon #404 +Extended Weapon #405 +Extended Weapon #406 +Extended Weapon #407 +Extended Weapon #408 +Extended Weapon #409 +Extended Weapon #410 +Extended Weapon #411 +Extended Weapon #412 +Extended Weapon #413 +Extended Weapon #414 +Extended Weapon #415 +Extended Weapon #416 +Extended Weapon #417 +Extended Weapon #418 +Extended Weapon #419 +Extended Weapon #420 +Extended Weapon #421 +Extended Weapon #422 +Extended Weapon #423 +Extended Weapon #424 +Extended Weapon #425 +Extended Weapon #426 +Extended Weapon #427 +Extended Weapon #428 +Extended Weapon #429 +Extended Weapon #430 +Extended Weapon #431 +Extended Weapon #432 +Extended Weapon #433 +Extended Weapon #434 +Extended Weapon #435 +Extended Weapon #436 +Extended Weapon #437 +Extended Weapon #438 +Extended Weapon #439 +Extended Weapon #440 +Extended Weapon #441 +Extended Weapon #442 +Extended Weapon #443 +Extended Weapon #444 +Extended Weapon #445 +Extended Weapon #446 +Extended Weapon #447 +Extended Weapon #448 +Extended Weapon #449 +Extended Weapon #450 +Extended Weapon #451 +Extended Weapon #452 +Extended Weapon #453 +Extended Weapon #454 +Extended Weapon #455 +Extended Weapon #456 +Extended Weapon #457 +Extended Weapon #458 +Extended Weapon #459 +Extended Weapon #460 +Extended Weapon #461 +Extended Weapon #462 +Extended Weapon #463 +Extended Weapon #464 +Extended Weapon #465 +Extended Weapon #466 +Extended Weapon #467 +Extended Weapon #468 +Extended Weapon #469 +Extended Weapon #470 +Extended Weapon #471 +Extended Weapon #472 +Extended Weapon #473 +Extended Weapon #474 +Extended Weapon #475 +Extended Weapon #476 +Extended Weapon #477 +Extended Weapon #478 +Extended Weapon #479 +Extended Weapon #480 +Extended Weapon #481 +Extended Weapon #482 +Extended Weapon #483 +Extended Weapon #484 +Extended Weapon #485 +Extended Weapon #486 +Extended Weapon #487 +Extended Weapon #488 +Extended Weapon #489 +Extended Weapon #490 +Extended Weapon #491 +Extended Weapon #492 +Extended Weapon #493 +Extended Weapon #494 +Extended Weapon #495 +Extended Weapon #496 +Extended Weapon #497 +Extended Weapon #498 +Extended Weapon #499 +Extended Weapon #500 +Extended Weapon #501 +Extended Weapon #502 +Extended Weapon #503 +Extended Weapon #504 +Extended Weapon #505 +Extended Weapon #506 +Extended Weapon #507 +Extended Weapon #508 +Extended Weapon #509 +Extended Weapon #510 +Extended Weapon #511 +Extended Weapon #512 +Extended Weapon #513 +Extended Weapon #514 +Extended Weapon #515 +Extended Weapon #516 +Extended Weapon #517 +Extended Weapon #518 +Extended Weapon #519 +Extended Weapon #520 +Extended Weapon #521 +Extended Weapon #522 +Extended Weapon #523 +Extended Weapon #524 +Extended Weapon #525 +Extended Weapon #526 +Extended Weapon #527 +Extended Weapon #528 +Extended Weapon #529 +Extended Weapon #530 +Extended Weapon #531 +Extended Weapon #532 +Extended Weapon #533 +Extended Weapon #534 +Extended Weapon #535 +Extended Weapon #536 +Extended Weapon #537 +Extended Weapon #538 +Extended Weapon #539 +Extended Weapon #540 +Extended Weapon #541 +Extended Weapon #542 +Extended Weapon #543 +Extended Weapon #544 +Extended Weapon #545 +Extended Weapon #546 +Extended Weapon #547 +Extended Weapon #548 +Extended Weapon #549 +Extended Weapon #550 +Extended Weapon #551 +Extended Weapon #552 +Extended Weapon #553 +Extended Weapon #554 +Extended Weapon #555 +Extended Weapon #556 +Extended Weapon #557 +Extended Weapon #558 +Extended Weapon #559 +Extended Weapon #560 +Extended Weapon #561 +Extended Weapon #562 +Extended Weapon #563 +Extended Weapon #564 +Extended Weapon #565 +Extended Weapon #566 +Extended Weapon #567 +Extended Weapon #568 +Extended Weapon #569 +Extended Weapon #570 +Extended Weapon #571 +Extended Weapon #572 +Extended Weapon #573 +Extended Weapon #574 +Extended Weapon #575 +Extended Weapon #576 +Extended Weapon #577 +Extended Weapon #578 +Extended Weapon #579 +Extended Weapon #580 +Extended Weapon #581 +Extended Weapon #582 +Extended Weapon #583 +Extended Weapon #584 +Extended Weapon #585 +Extended Weapon #586 +Extended Weapon #587 +Extended Weapon #588 +Extended Weapon #589 +Extended Weapon #590 +Extended Weapon #591 +Extended Weapon #592 +Extended Weapon #593 +Extended Weapon #594 +Extended Weapon #595 +Extended Weapon #596 +Extended Weapon #597 +Extended Weapon #598 +Extended Weapon #599 +Extended Weapon #600 +Extended Weapon #601 +Extended Weapon #602 +Extended Weapon #603 +Extended Weapon #604 +Extended Weapon #605 +Extended Weapon #606 +Extended Weapon #607 +Extended Weapon #608 +Extended Weapon #609 +Extended Weapon #610 +Extended Weapon #611 +Extended Weapon #612 +Extended Weapon #613 +Extended Weapon #614 +Extended Weapon #615 +Extended Weapon #616 +Extended Weapon #617 +Extended Weapon #618 +Extended Weapon #619 +Extended Weapon #620 +Extended Weapon #621 +Extended Weapon #622 +Extended Weapon #623 +Extended Weapon #624 +Extended Weapon #625 +Extended Weapon #626 +Extended Weapon #627 +Extended Weapon #628 +Extended Weapon #629 +Extended Weapon #630 +Extended Weapon #631 +Extended Weapon #632 +Extended Weapon #633 +Extended Weapon #634 +Extended Weapon #635 +Extended Weapon #636 +Extended Weapon #637 +Extended Weapon #638 +Extended Weapon #639 +Extended Weapon #640 +Extended Weapon #641 +Extended Weapon #642 +Extended Weapon #643 +Extended Weapon #644 +Extended Weapon #645 +Extended Weapon #646 +Extended Weapon #647 +Extended Weapon #648 +Extended Weapon #649 +Extended Weapon #650 +Extended Weapon #651 +Extended Weapon #652 +Extended Weapon #653 +Extended Weapon #654 +Extended Weapon #655 +Extended Weapon #656 +Extended Weapon #657 +Extended Weapon #658 +Extended Weapon #659 +Extended Weapon #660 +Extended Weapon #661 +Extended Weapon #662 +Extended Weapon #663 +Extended Weapon #664 +Extended Weapon #665 +Extended Weapon #666 +Extended Weapon #667 +Extended Weapon #668 +Extended Weapon #669 +Extended Weapon #670 +Extended Weapon #671 +Extended Weapon #672 +Extended Weapon #673 +Extended Weapon #674 +Extended Weapon #675 +Extended Weapon #676 +Extended Weapon #677 +Extended Weapon #678 +Extended Weapon #679 +Extended Weapon #680 +Extended Weapon #681 +Extended Weapon #682 +Extended Weapon #683 +Extended Weapon #684 +Extended Weapon #685 +Extended Weapon #686 +Extended Weapon #687 +Extended Weapon #688 +Extended Weapon #689 +Extended Weapon #690 +Extended Weapon #691 +Extended Weapon #692 +Extended Weapon #693 +Extended Weapon #694 +Extended Weapon #695 +Extended Weapon #696 +Extended Weapon #697 +Extended Weapon #698 +Extended Weapon #699 +Extended Weapon #700 +Extended Weapon #701 +Extended Weapon #702 +Extended Weapon #703 +Extended Weapon #704 +Extended Weapon #705 +Extended Weapon #706 +Extended Weapon #707 +Extended Weapon #708 +Extended Weapon #709 +Extended Weapon #710 +Extended Weapon #711 +Extended Weapon #712 +Extended Weapon #713 +Extended Weapon #714 +Extended Weapon #715 +Extended Weapon #716 +Extended Weapon #717 +Extended Weapon #718 +Extended Weapon #719 +Extended Weapon #720 +Extended Weapon #721 +Extended Weapon #722 +Extended Weapon #723 +Extended Weapon #724 +Extended Weapon #725 +Extended Weapon #726 +Extended Weapon #727 +Extended Weapon #728 +Extended Weapon #729 +Extended Weapon #730 +Extended Weapon #731 +Extended Weapon #732 +Extended Weapon #733 +Extended Weapon #734 +Extended Weapon #735 +Extended Weapon #736 +Extended Weapon #737 +Extended Weapon #738 +Extended Weapon #739 +Extended Weapon #740 +Extended Weapon #741 +Extended Weapon #742 +Extended Weapon #743 +Extended Weapon #744 +Extended Weapon #745 +Extended Weapon #746 +Extended Weapon #747 +Extended Weapon #748 +Extended Weapon #749 +Extended Weapon #750 +Extended Weapon #751 +Extended Weapon #752 +Extended Weapon #753 +Extended Weapon #754 +Extended Weapon #755 +Extended Weapon #756 +Extended Weapon #757 +Extended Weapon #758 +Extended Weapon #759 +Extended Weapon #760 +Extended Weapon #761 +Extended Weapon #762 +Extended Weapon #763 +Extended Weapon #764 +Extended Weapon #765 +Extended Weapon #766 +Extended Weapon #767 +Extended Weapon #768 +Extended Weapon #769 +Extended Weapon #770 +Extended Weapon #771 +Extended Weapon #772 +Extended Weapon #773 +Extended Weapon #774 +Extended Weapon #775 +Extended Weapon #776 +Extended Weapon #777 +Extended Weapon #778 +Extended Weapon #779 +Extended Weapon #780 +Extended Weapon #781 +Extended Weapon #782 +Extended Weapon #783 +Extended Weapon #784 +Extended Weapon #785 +Extended Weapon #786 +Extended Weapon #787 +Extended Weapon #788 +Extended Weapon #789 +Extended Weapon #790 +Extended Weapon #791 +Extended Weapon #792 +Extended Weapon #793 +Extended Weapon #794 +Extended Weapon #795 +Extended Weapon #796 +Extended Weapon #797 +Extended Weapon #798 +Extended Weapon #799 +Extended Weapon #800 +Extended Weapon #801 +Extended Weapon #802 +Extended Weapon #803 +Extended Weapon #804 +Extended Weapon #805 +Extended Weapon #806 +Extended Weapon #807 +Extended Weapon #808 +Extended Weapon #809 +Extended Weapon #810 +Extended Weapon #811 +Extended Weapon #812 +Extended Weapon #813 +Extended Weapon #814 +Extended Weapon #815 +Extended Weapon #816 +Extended Weapon #817 +Extended Weapon #818 +Extended Weapon #819 +Extended Weapon #820 +Extended Weapon #821 +Extended Weapon #822 +Extended Weapon #823 +Extended Weapon #824 +Extended Weapon #825 +Extended Weapon #826 +Extended Weapon #827 +Extended Weapon #828 +Extended Weapon #829 +Extended Weapon #830 +Extended Weapon #831 +Extended Weapon #832 +Extended Weapon #833 +Extended Weapon #834 +Extended Weapon #835 +Extended Weapon #836 +Extended Weapon #837 +Extended Weapon #838 +Extended Weapon #839 +Extended Weapon #840 +Extended Weapon #841 +Extended Weapon #842 +Extended Weapon #843 +Extended Weapon #844 +Extended Weapon #845 +Extended Weapon #846 +Extended Weapon #847 +Extended Weapon #848 +Extended Weapon #849 +Extended Weapon #850 +Extended Weapon #851 +Extended Weapon #852 +Extended Weapon #853 +Extended Weapon #854 +Extended Weapon #855 +Extended Weapon #856 +Extended Weapon #857 +Extended Weapon #858 +Extended Weapon #859 +Extended Weapon #860 +Extended Weapon #861 +Extended Weapon #862 +Extended Weapon #863 +Extended Weapon #864 +Extended Weapon #865 +Extended Weapon #866 +Extended Weapon #867 +Extended Weapon #868 +Extended Weapon #869 +Extended Weapon #870 \ No newline at end of file diff --git a/mpq/datreq/Buttons.graft b/mpq/datreq/Buttons.graft index ec50736..b2dc859 100644 Binary files a/mpq/datreq/Buttons.graft and b/mpq/datreq/Buttons.graft differ diff --git a/mpq/datreq/Orders.graft b/mpq/datreq/Orders.graft index be4965d..58f275e 100644 Binary files a/mpq/datreq/Orders.graft and b/mpq/datreq/Orders.graft differ diff --git a/mpq/datreq/Tech.graft b/mpq/datreq/Tech.graft index 5b34003..45cb4fa 100644 Binary files a/mpq/datreq/Tech.graft and b/mpq/datreq/Tech.graft differ diff --git a/mpq/datreq/Units.graft b/mpq/datreq/Units.graft index 5bac48c..8cc15da 100644 Binary files a/mpq/datreq/Units.graft and b/mpq/datreq/Units.graft differ diff --git a/mpq/game/aconsole.pcx b/mpq/game/aconsole.pcx index 4ebd5e3..461193f 100644 Binary files a/mpq/game/aconsole.pcx and b/mpq/game/aconsole.pcx differ diff --git a/mpq/game/apbrempt.pcx b/mpq/game/apbrempt.pcx index ff4580a..8cb96d1 100644 Binary files a/mpq/game/apbrempt.pcx and b/mpq/game/apbrempt.pcx differ diff --git a/mpq/game/apbrfull.pcx b/mpq/game/apbrfull.pcx index e755c65..5a79237 100644 Binary files a/mpq/game/apbrfull.pcx and b/mpq/game/apbrfull.pcx differ diff --git a/mpq/game/icons.grp b/mpq/game/icons.grp index ee2007d..a7889e2 100644 Binary files a/mpq/game/icons.grp and b/mpq/game/icons.grp differ diff --git a/mpq/glue/dynamic/arrow.grp b/mpq/glue/dynamic/arrow.grp new file mode 100644 index 0000000..db13006 Binary files /dev/null and b/mpq/glue/dynamic/arrow.grp differ diff --git a/mpq/glue/dynamic/backgrounds/crownlink.pcx b/mpq/glue/dynamic/backgrounds/crownlink.pcx new file mode 100644 index 0000000..8faf446 Binary files /dev/null and b/mpq/glue/dynamic/backgrounds/crownlink.pcx differ diff --git a/mpq/glue/dynamic/backgrounds/options.pcx b/mpq/glue/dynamic/backgrounds/options.pcx new file mode 100644 index 0000000..8b390c4 Binary files /dev/null and b/mpq/glue/dynamic/backgrounds/options.pcx differ diff --git a/mpq/glue/dynamic/cl_status.pcx b/mpq/glue/dynamic/cl_status.pcx new file mode 100644 index 0000000..0edf2a8 Binary files /dev/null and b/mpq/glue/dynamic/cl_status.pcx differ diff --git a/mpq/glue/dynamic/dlg.grp b/mpq/glue/dynamic/dlg.grp new file mode 100644 index 0000000..a7cf88a Binary files /dev/null and b/mpq/glue/dynamic/dlg.grp differ diff --git a/mpq/glue/dynamic/pbotr.pcx b/mpq/glue/dynamic/pbotr.pcx new file mode 100644 index 0000000..f8f76c6 Binary files /dev/null and b/mpq/glue/dynamic/pbotr.pcx differ diff --git a/mpq/glue/dynamic/pcancel.pcx b/mpq/glue/dynamic/pcancel.pcx new file mode 100644 index 0000000..afc17b9 Binary files /dev/null and b/mpq/glue/dynamic/pcancel.pcx differ diff --git a/mpq/glue/dynamic/pjoin.pcx b/mpq/glue/dynamic/pjoin.pcx new file mode 100644 index 0000000..d967a54 Binary files /dev/null and b/mpq/glue/dynamic/pjoin.pcx differ diff --git a/mpq/glue/dynamic/plist.pcx b/mpq/glue/dynamic/plist.pcx new file mode 100644 index 0000000..c1f0540 Binary files /dev/null and b/mpq/glue/dynamic/plist.pcx differ diff --git a/mpq/glue/dynamic/plistlrg.pcx b/mpq/glue/dynamic/plistlrg.pcx new file mode 100644 index 0000000..199985d Binary files /dev/null and b/mpq/glue/dynamic/plistlrg.pcx differ diff --git a/mpq/glue/dynamic/plistlrg_crownlink.pcx b/mpq/glue/dynamic/plistlrg_crownlink.pcx new file mode 100644 index 0000000..8e21af8 Binary files /dev/null and b/mpq/glue/dynamic/plistlrg_crownlink.pcx differ diff --git a/mpq/glue/dynamic/plistlrg_wide.pcx b/mpq/glue/dynamic/plistlrg_wide.pcx new file mode 100644 index 0000000..1706a4c Binary files /dev/null and b/mpq/glue/dynamic/plistlrg_wide.pcx differ diff --git a/mpq/glue/dynamic/pok.pcx b/mpq/glue/dynamic/pok.pcx new file mode 100644 index 0000000..49b34fa Binary files /dev/null and b/mpq/glue/dynamic/pok.pcx differ diff --git a/mpq/glue/dynamic/tab_highlight.pcx b/mpq/glue/dynamic/tab_highlight.pcx new file mode 100644 index 0000000..baec7bb Binary files /dev/null and b/mpq/glue/dynamic/tab_highlight.pcx differ diff --git a/mpq/glue/dynamic/tfont.pcx b/mpq/glue/dynamic/tfont.pcx new file mode 100644 index 0000000..1d2db65 Binary files /dev/null and b/mpq/glue/dynamic/tfont.pcx differ diff --git a/mpq/glue/dynamic/tile.grp b/mpq/glue/dynamic/tile.grp new file mode 100644 index 0000000..be54eba Binary files /dev/null and b/mpq/glue/dynamic/tile.grp differ diff --git a/mpq/portrait/b/advisor/fid00.smk b/mpq/portrait/b/advisor/fid00.smk new file mode 100644 index 0000000..4ca4c04 Binary files /dev/null and b/mpq/portrait/b/advisor/fid00.smk differ diff --git a/mpq/portrait/b/advisor/fid01.smk b/mpq/portrait/b/advisor/fid01.smk new file mode 100644 index 0000000..b26267c Binary files /dev/null and b/mpq/portrait/b/advisor/fid01.smk differ diff --git a/mpq/portrait/b/advisor/tlk00.smk b/mpq/portrait/b/advisor/tlk00.smk new file mode 100644 index 0000000..b8d1fec Binary files /dev/null and b/mpq/portrait/b/advisor/tlk00.smk differ diff --git a/mpq/portrait/f/advisor_upstartterran/fid00.smk b/mpq/portrait/f/advisor_upstartt/fid00.smk similarity index 100% rename from mpq/portrait/f/advisor_upstartterran/fid00.smk rename to mpq/portrait/f/advisor_upstartt/fid00.smk diff --git a/mpq/portrait/f/advisor_upstartterran/tlk00.smk b/mpq/portrait/f/advisor_upstartt/tlk00.smk similarity index 100% rename from mpq/portrait/f/advisor_upstartterran/tlk00.smk rename to mpq/portrait/f/advisor_upstartt/tlk00.smk diff --git a/mpq/portrait/f/advisor_upstartterran/tlk01.smk b/mpq/portrait/f/advisor_upstartt/tlk01.smk similarity index 100% rename from mpq/portrait/f/advisor_upstartterran/tlk01.smk rename to mpq/portrait/f/advisor_upstartt/tlk01.smk diff --git a/mpq/portrait/f/iziralisk/fid00.smk b/mpq/portrait/f/iziralisk/fid00.smk index 0a0cbc7..b7f34bf 100644 Binary files a/mpq/portrait/f/iziralisk/fid00.smk and b/mpq/portrait/f/iziralisk/fid00.smk differ diff --git a/mpq/portrait/f/iziralisk/fid01.smk b/mpq/portrait/f/iziralisk/fid01.smk index b1d28b2..012161a 100644 Binary files a/mpq/portrait/f/iziralisk/fid01.smk and b/mpq/portrait/f/iziralisk/fid01.smk differ diff --git a/mpq/portrait/f/iziralisk/fid02.smk b/mpq/portrait/f/iziralisk/fid02.smk new file mode 100644 index 0000000..9bbb56f Binary files /dev/null and b/mpq/portrait/f/iziralisk/fid02.smk differ diff --git a/mpq/portrait/f/iziralisk/tlk00.smk b/mpq/portrait/f/iziralisk/tlk00.smk index c35cab5..3ec45bb 100644 Binary files a/mpq/portrait/f/iziralisk/tlk00.smk and b/mpq/portrait/f/iziralisk/tlk00.smk differ diff --git a/mpq/portrait/f/iziralisk/tlk01.smk b/mpq/portrait/f/iziralisk/tlk01.smk new file mode 100644 index 0000000..d26d75c Binary files /dev/null and b/mpq/portrait/f/iziralisk/tlk01.smk differ diff --git a/mpq/portrait/f/iziralisk/tlk02.smk b/mpq/portrait/f/iziralisk/tlk02.smk new file mode 100644 index 0000000..dd09e72 Binary files /dev/null and b/mpq/portrait/f/iziralisk/tlk02.smk differ diff --git a/mpq/portrait/f/rozirokor/fid00.smk b/mpq/portrait/f/rozirokor/fid00.smk new file mode 100644 index 0000000..d4b622d Binary files /dev/null and b/mpq/portrait/f/rozirokor/fid00.smk differ diff --git a/mpq/portrait/f/rozirokor/fid01.smk b/mpq/portrait/f/rozirokor/fid01.smk new file mode 100644 index 0000000..b3b2fb7 Binary files /dev/null and b/mpq/portrait/f/rozirokor/fid01.smk differ diff --git a/mpq/portrait/f/rozirokor/fid02.smk b/mpq/portrait/f/rozirokor/fid02.smk new file mode 100644 index 0000000..72dc2e7 Binary files /dev/null and b/mpq/portrait/f/rozirokor/fid02.smk differ diff --git a/mpq/portrait/f/rozirokor/tlk00.smk b/mpq/portrait/f/rozirokor/tlk00.smk new file mode 100644 index 0000000..98fd09a Binary files /dev/null and b/mpq/portrait/f/rozirokor/tlk00.smk differ diff --git a/mpq/portrait/f/rozirokor/tlk01.smk b/mpq/portrait/f/rozirokor/tlk01.smk new file mode 100644 index 0000000..e7e90f7 Binary files /dev/null and b/mpq/portrait/f/rozirokor/tlk01.smk differ diff --git a/mpq/portrait/f/rozirokor/tlk02.smk b/mpq/portrait/f/rozirokor/tlk02.smk new file mode 100644 index 0000000..e341ed0 Binary files /dev/null and b/mpq/portrait/f/rozirokor/tlk02.smk differ diff --git a/mpq/portrait/f/vestige/fid00.smk b/mpq/portrait/f/vestige/fid00.smk new file mode 100644 index 0000000..370f396 Binary files /dev/null and b/mpq/portrait/f/vestige/fid00.smk differ diff --git a/mpq/portrait/f/vestige/fid01.smk b/mpq/portrait/f/vestige/fid01.smk new file mode 100644 index 0000000..235305b Binary files /dev/null and b/mpq/portrait/f/vestige/fid01.smk differ diff --git a/mpq/portrait/f/vestige/fid02.smk b/mpq/portrait/f/vestige/fid02.smk new file mode 100644 index 0000000..a720b93 Binary files /dev/null and b/mpq/portrait/f/vestige/fid02.smk differ diff --git a/mpq/portrait/f/vestige/tlk00.smk b/mpq/portrait/f/vestige/tlk00.smk new file mode 100644 index 0000000..fe0baa4 Binary files /dev/null and b/mpq/portrait/f/vestige/tlk00.smk differ diff --git a/mpq/portrait/f/vestige/tlk01.smk b/mpq/portrait/f/vestige/tlk01.smk new file mode 100644 index 0000000..cb41027 Binary files /dev/null and b/mpq/portrait/f/vestige/tlk01.smk differ diff --git a/mpq/portrait/f/vestige/tlk02.smk b/mpq/portrait/f/vestige/tlk02.smk new file mode 100644 index 0000000..22284c5 Binary files /dev/null and b/mpq/portrait/f/vestige/tlk02.smk differ diff --git a/mpq/rez/dynamic_sample.bin b/mpq/rez/dynamic_sample.bin new file mode 100644 index 0000000..956eb76 Binary files /dev/null and b/mpq/rez/dynamic_sample.bin differ diff --git a/mpq/rez/glujoincrownlink.bin b/mpq/rez/glujoincrownlink.bin index 16de9a5..2b8aea2 100644 Binary files a/mpq/rez/glujoincrownlink.bin and b/mpq/rez/glujoincrownlink.bin differ diff --git a/mpq/rez/gluoptions.bin b/mpq/rez/gluoptions.bin index d5e83e7..6039858 100644 Binary files a/mpq/rez/gluoptions.bin and b/mpq/rez/gluoptions.bin differ diff --git a/mpq/rez/options/tab-misc.bin b/mpq/rez/options/tab-misc.bin index 8a683ff..b928792 100644 Binary files a/mpq/rez/options/tab-misc.bin and b/mpq/rez/options/tab-misc.bin differ diff --git a/mpq/rez/options/tab-ui.bin b/mpq/rez/options/tab-ui.bin index 2a0c381..be10019 100644 Binary files a/mpq/rez/options/tab-ui.bin and b/mpq/rez/options/tab-ui.bin differ diff --git a/mpq/rez/options/tab_control.bin b/mpq/rez/options/tab_control.bin new file mode 100644 index 0000000..0b74de0 Binary files /dev/null and b/mpq/rez/options/tab_control.bin differ diff --git a/mpq/rez/stat.txt b/mpq/rez/stat.txt index a4cce38..772d97d 100644 --- a/mpq/rez/stat.txt +++ b/mpq/rez/stat.txt @@ -320,7 +320,7 @@ Piety Wards<0> <0> <0> <0> -<0> +¤<3><4>Accelerated Speech <2>(passive)<10>While the Missionary is within 2 range of its target, it gains +2 armor penetration.<0> ¤<3><4>Flanking Spines <2>(passive)<10>When targeting debuffed enemies, Almaksalisk attacks ignore armor.<0> Anchor Attack requires:<10> Loaded ranged combatant<0> <0> @@ -377,7 +377,7 @@ w<3><4>Carapace Swarm <1>(<3>W<1>)<10>Creates damage-absorbing cloud cover that x<3><4>Parasitic Excision <1>(<3>X<1>)<10>After a 1-second channel, the Matraleth deposits a Vilgoleth at the target location.<0> ¤<3><4>Warring Winds <2>(passive)<10>Every time this combatant is struck, it releases a healing pulse worth 5 HP for allies within 8 range. This effect has a cooldown of 0.25 seconds<10>After ten healing pulses, this combatant pulls all hostiles within 8 range towards itself.<0> ¤<3><4>Scrapworld: Implosion <2>(passive)<10>This combatant detonates 1 seconds after death, pulling all combatants within 6 range towards its death site and slowing their movement speed by 33% for 5 seconds.<0> -g<3><4>Plague <1>(<3>G<1>)<10>After a 1-second channel, creates a 3-range zone that lasts 10 seconds. Victims that enter the zone are infected with Plague, and take up to 50 damage over 5 seconds.<10>On death, victims create a smaller 1.5-range infection zone that lasts 5 seconds. Plague cannot kill its victims.<0> +g<3><4>Plague <1>(<3>G<1>)<10>After a 1-second channel, creates a 3-range zone that lasts 10 seconds. Victims that enter the zone are infected with Plague, and take up to 50 damage over 5 seconds.<10>On death, victims create a smaller 1.5-range infection zone that lasts 5 seconds. Plague cannot kill its victims, and reduces healing by 50%.<0> ¤<3><4>Ensnaring Brood <2>(passive)<10>Allies within 4 range of a Matraleth apply Ensnare with every attack. Ensnared targets move and attack 33% slower. Ensnare expires after 2 seconds.<0> a<1><4>Assemble Vassal <1>(<3>A<1>)<10>Light fighter.<0> c<3><4>Remote Hijack <1>(<3>C<1>)<10>Launches a bioform that attaches to the victim and slows their movement speed by 50%.<10>After 5 seconds, the bioform becomes the target.<10>The bioform is released from their new form on death, or immediately if the target is an embedded craft.<0> @@ -390,7 +390,7 @@ Constituent Requires:<10> Proscenium OR Zylode<0> a<1><4>Build Cutlass <1>(<3>A<1>)<10>Assault armor.<0> c<1><4>Raise Constituent <1>(<3>C<1>)<10>Skybound worker.<0> e<3><4>Salvage <1>(<3>E<1>)<10>Orders the builder to deconstruct the target mechanical unit or structure, returning up to 33% of its resource cost during the channel.<0> -e<3><4>Rapid Rendezvous <1>(<3>E<1>)<10>Leaps to the target ground ally within 5 range, activating Impact Dissipation for all allies within 3 range of the jump target.<0> +z<3><4>Rapid Rendezvous <1>(<3>Z<1>)<10>Leaps to the target ground ally within 5 range, activating Impact Dissipation for all allies within 3 range of the jump target.<0> c<3><4>Hijack <1>(<3>C<1>)<10>Leaps to the target hostile, attaching to the victim and slowing their movement speed by 50%.<10><10>After 5 seconds, the Askosi combatant becomes the target.<0> e<3><4>Rematerialize <1>(<3>E<1>)<10>Pulls allies within 3 range of the target to the combatant's location, and grants them Impact Dissipation.<0> e<1><4>Mutate into Kalkiir Lake <1>(<3>E<1>)<10>Swarm node. Enables Liiralisks and Kalkalisks.<0> @@ -439,7 +439,7 @@ z<1><4>Bestow Luminary <1>(<3>Z<1>)<10>Disruptive specialist craft. Provides det a<1><4>Bestow Aspirant <1>(<3>A<1>)<10>Unstable strider.<0> s<1><4>Train Striga <1>(<3>S<1>)<10>Isolating infantry.<0> z<1><4>Raise Luminary <1>(<3>Z<1>)<10>Disruptive craft. Provides detection.<0> -¤<3><4>Incineration <2>(passive)<10>Victims of Auriel attacks take 4 damage per second for 2 seconds. If a victim dies while ablaze, their corpse is incinerated, leaving behind a landborne fire field that applies Apollyoid Adhesive.<0> +¤<3><4>Incineration <2>(passive)<10>Victims of this combatant take 4 damage per second for 2 seconds.<10>If they take fatal damage during this time, their corpse explodes into a landborne fire field that applies Apollyoid Adhesive.<0> q<1><4>Splice Tarasque <1>(<3>Q<1>)<10>Frontal biotank.<0> g<1><4>Assemble Analogue <1>(<3>G<1>)<10>Durable disruption drone.<0> z<1><4>Splice Anticthon <1>(<3>Z<1>)<10>Corpse engine.<0> @@ -467,7 +467,7 @@ t<1><4>Morph into Gosvileth <1>(<3>T<1>)<10>Advanced worker strain.<0> ¤<3><4>Criticality <2>(passive)<10>Victims of the Aspirant are debuffed for 2 seconds. If killed during this time, they create a 2-range energy field that lasts 5 seconds and restores 4 shields or HP per second for all allied ground combatants.<0> Abutment requires:<10> Cipher AND Gauntlet<0> Gosvil Aspect requires:<10> Irol Iris<0> -r<1><4>Install Abutment <1>(<3>R<1>)<10>Vespene processor.<0> +a<1><4>Install Abutment <1>(<3>A<1>)<10>Vespene processor.<0> a<1><4>Assemble Artisan <1>(<3>A<1>)<10>Advanced harvester.<0> ¤<3><4>Caustic Discharge <2>(passive)<10>Keskathalor attacks create a pool of acid that deals 30 impact damage over 5 seconds to all ground targets. Targets that move through the acid gain 150% movement speed for 3 seconds.<0> ¤<3><4>Ion Field <2>(passive)<10>Diadem attacks leave behind a field that deals 100 damage over 10 seconds to all ground targets. Units that move through the field gain 150% attack speed for 2 seconds.<0> @@ -528,7 +528,7 @@ d<1><4>Build Sundog <1>(<3>D<1>)<10>Ambush fighter.<0> ¤<3><4>Shroud of Adun <2>(passive)<10>Didacts cloak all allies within 4 range.<0> r<5><4>Morph into Azanthrokor <1>(<3>R<1>)<10>Besieging corvette strain.<0> ¤<3><4>Larval Gestation <2>(passive)<10>This cell generates one Larva every 14 seconds.<0> -x<1><4>Warp in Exemplar <1>(<3>X<1>)<10>Anti-armor frigate.<0> +x<1><4>Warp in Exemplar <1>(<3>X<1>)<10>Assault corvette.<0> Mimic requires:<10> Cipher<0> a<1><4>Build Starpad <1>(<3>A<1>)<10>Light orbital production.<0> v<1><4>Mutate into Larvosk Cesiant <1>(<3>V<1>)<10>Production cell.<0> @@ -566,7 +566,7 @@ s<1><4>Raise Missionary <1>(<3>S<1>)<10>All-purpose trooper.<0> s<1><4>Raise Proselyte <1>(<3>S<1>)<10>Nimble trooper.<0> g<1><4>Morph into Agrileth <1>(<3>G<1>)<10>Construction strain.<0> x<1><4>Build Aion <1>(<3>X<1>)<10>Reclaiming armor.<0> -t<1><4>Morph into Nathrelisk <1>(<3>R<1>)<10>Sustaining fighter strain.<0> +r<1><4>Morph into Nathrelisk <1>(<3>R<1>)<10>Sustaining fighter strain.<0> ¤<3><4>Corrosive Pathogen <2>(passive)<10>This strain's attacks debuff all hostiles within 4 range of their target, reducing their attack speed by 25% and armor by 1 for 3 seconds.<0> ¤<3><4>Corrosive Touch <2>(passive)<10>This strain's attacks debuff enemies, increasing attack cooldown by 25% and reducing armor by 1 for 3 seconds.<0> Nathrelisk requires:<10> Vornath Pond<0> @@ -821,7 +821,7 @@ v<1><4>Morph into Yblyleth <1>(<3>V<1>)<10>Expanding strain.<0> ¤<3><4>Cagra Autophagy <2>(passive)<10>Every 2 seconds while burrowed, Yblyleths consume the closest corpse within 5 range, spawning 2 Rilirokors.<0> ¤<3><4>Cagragenesis <2>(passive)<10>While burrowed, this strain generates cagra in an 8-tile radius.<0> ¤<3><4>Corrosive Touch <2>(passive)<10>This strain's air attacks debuff enemies, increasing attack cooldown by 25% and reducing armor by 1 for 3 seconds.<0> -<0> +z<1><4>Mutate into Zytryleth <1>(<3>Z<1>)<10>Spontaneous chondra.<0> s<1><4>Meld Emissary <1>(<3>S<1>)<10>Swift transport.<0> ¤<3><4>Reintegration <2>(passive)<10>While wounded, stepping over a corpse consumes it, healing for 50HP over 10 seconds.<0> Disabled<0> @@ -1004,23 +1004,23 @@ c<1><4>Install Lekrot <1>(<3>S<1>)<10>Manipulation relay.<0> Lekrot Requires<10> Panoply OR Lotiro<0> t<1><4>Install Hearthshard <1>(<3>S<1>)<10>Immortal relay.<0> Hearthshard Requires<10> Panoply OR Lotiro<0> +Zytryleth Requires:<10> Othstol Oviform<0> +t<1><4>Bleed Thrombocyte <1>(<3>T<1>)<10>Regenerative biode.<0> +b<3><4>Bloody Burst <1>(<3>B<1>)<10>Bursts the Thrombocyte, releasing a pulse that heals allies within 3 range for the Thrombocyte's current health.<0> +¤<3><4>Coagulation <2>(passive)<10>This combatant's attacks heal allies equal to damage dealt.<0> +¤<3><4>Portents <2>(passive)<10>When this combatant receives damage, it becomes cloaked, and decloaks after 2 seconds of not taking damage.<0> +t<1><4>Build Arquebus <1>(<3>C<1>)<10>Incendiary platform.<0> +¤<3><4>Forlorn Haste <2>(passive)<10>While isolated within 3 range, this combatant gains 200% movement speed.<0> +t<1><4>Morph into Alzurokor <1>(<3>T<1>)<10>Subjugation strain.<0> +Alzur Aspect requires:<10> Ulgorg Cavern<0> +h<1><4>Morph into Hydrokors <1>(<3>H<1>)<10>Swift melee strain.<0> +Hydrokor requires:<10> Hydrith Den<0> <0> <0> +Bloodsummon Stigmata<0> <0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> +Bloodsummon Sacrament<0> +¤<3><4>Ambush Agent <2>(passive)<10>While burrowed, Scrylyleths act as garrisons, allowing its cargo to attack with bonus weapon range.<0> a<1><4>Construct Athla <1>(<3>A<1>)<10>Constructor model.<0> f<1><4>Construct Ferrum <1>(<3>F<1>)<10>Aggressor model.<0> c<1><4>Construct Chalyb <1>(<3>C<1>)<10>Defender model.<0> @@ -1037,7 +1037,7 @@ t<1><4>Morph into Malkothrokor <1>(<3>T<1>)<10>Relentless hive organ.<0> Malkothrokor requires:<10> Othstol Oviform<0> ¤<3><4>Segmented Expansion <2>(passive)<10>Malkothrokors consume any corpses they walk over, restoring 10 life per corpse.<10>After consuming 10 corpses, the Malkothrokor becomes 50% slower and gestates a new Malkothrokor over the course of 15 seconds.<0> ¤<3><4>Intestinal Infinity <2>(passive)<10>While burrowed, Malkothrokors gain 500% HP regeneration, and they generate cagra in an 8-tile radius.<0> -¤<3><4>Hive Tissues <2>(passive)<10>Malkothrokors can gestate Cesiant mutations, which attach to the Malkothrokor.<0> +¤<3><4>Hive Tissues <2>(passive)<10>Malkothrokors can gestate Cesiant mutations, which attach to the Malkothrokor. Gestation occurs at an increased speed compared to standard construction.<0> Yblyleth requires:<10> Quazeth Pool<0> ¤<3><4>Power Breach <2>(passive)<10>This combatant's attacks can bounce to the nearest hostile up to three times. Each bounce occurs after a short delay and deals 25% reduced damage.<0> Askosi Biotic Bolting<0> @@ -1066,7 +1066,7 @@ g<1><4>Warp in Magister <1>(<3>G<1>)<10>Battle platform.<0> z<0><4>Advanced Warp <1>(<3>Z<1>)<0> b<0><4>Basic Warp <1>(<3>B<1>)<0> g<1><4>Warp in Gladius <1>(<3>G<1>)<10>Crowd-controlling corvette.<0> -¤<3><4>Impact Prevarication <2>(passive)<10>Each time this combatant is attacked by a hostile, it gains 33% increased movement and attack speeds for 3 seconds, and regenerates 30 HP over time.<0> +¤<3><4>Impact Prevarication <2>(passive)<10>Each time this combatant is attacked by a hostile, it gains 50% increased movement and attack speeds for 2 seconds, and blocks the next attack.<0> Eyelet<0> g<1><4>Build Monogram <1>(<3>G<1>)<10>Reinforcing hovercraft.<0> g<1><4>Build Gorgon <1>(<3>G<1>)<10>All-purpose corvette.<0> @@ -1090,7 +1090,7 @@ g<1><4>Assemble Golem <1>(<3>G<1>)<10>Sturdy frontline drone.<0> t<1><4>Build Mantle <1>(<3>T<1>)<10>Walker outpost.<0> ¤<3><4>Apollyoid Adhesive <2>(passive)<10>Flame-based attacks set victims alight, rending 1 armor per stack, and dealing 3 damage every second.<10><10>Apollyoid Adhesive burns itself out after 2 seconds of not being stacked.<0> ¤<3><4>Sustaining Sermon <2>(passive)<10>Every strike, the Cardinal's weapon releases a restorative pulse, healing 10 hit points for all allies within 3 range.<0> -¤<3><4>Impact Dissipation <2>(passive)<10>Each time this combatant is attacked by a hostile, it gains 33% increased movement speed for 3 seconds, and regenerates 15 HP over time.<0> +¤<3><4>Impact Dissipation <2>(passive)<10>After being attacked by a hostile, this combatant gains 50% increased movement speed for 2 seconds, and blocks the next attack.<0> Mining Efficiency<0> ¤<3><4>Schematic Unity <2>(passive)<10>Up to 5 Askosi workers can collaborate on construction efforts.<10>When Dyads assist in construction, they increase construction rate by 30%.<0> ¤<3><4>Shared Designs <2>(passive)<10>Up to 5 Askosi workers can collaborate on construction efforts.<10>Each additional Pilgrim increases construction rate by 20%.<0> @@ -1108,7 +1108,7 @@ a<1><4>Assemble Renesair <1>(<3>A<1>)<10>Reconstructing interceptor.<0> ¤<3><4>Triumphant Rise <2>(passive)<10>Victims of this warrior's attacks become energized for 1.5 seconds. Attacks on energized enemies bleed 2 shield points to all allies of the warrior within 3 range.<0> d<1><4>Train Madcap <1>(<3>D<1>)<10>Mechanized infantry.<0> ¤<3><4>Cabeirus Feeders <2>(passive)<10>While stationary, the Madcap gains a 15% attack speed bonus per attack, capping at a 150% bonus. This bonus falls off by 20% for every second the Madcap spends moving.<0> -¤<3><4>Miasma <2>(passive)<10>This strain's attacks infect its victims with Plague for 1.5 seconds. Plagued victims release Miasma fields on death, spreading the infection to all nearby targets.<0> +¤<3><4>Miasma <2>(passive)<10>This strain's attacks infect its victims with Plague for 1.5 seconds. Plagued victims release Miasma fields on death, spreading the infection to all nearby targets.<10>Plague cannot kill its victims, and reduces healing by 50%.<0> g<3><4>Land Grab <1>(<3>G<1>)<10>Orders the Wyvern to fire its weapon at the target site.<0> r<1><4>Warp in Strident Stratum <1>(<3>R<1>)<10>Utilitarian production.<0> Mantle requires:<10> Atlas<0> @@ -1133,7 +1133,7 @@ a<1><4>Warp in Aurora <1>(<3>A<1>)<10>Nimble fighter.<0> c<1><4>Build Centaur <1>(<3>C<1>)<10>All-purpose destroyer.<0> t<1><4>Build Magnetar <1>(<3>T<1>)<10>Undeniable cruiser.<0> ¤<3><4>Sunchaser Salvo <2>(passive)<10>While the Centaur is within 4 range of its target, it will also fire its secondary weapon.<0> -¤<3><4>Mitosis <2>(passive)<10>Upon taking damage, the Zoryusthaleth incubates, spawning one Rilirokor after a two-second delay.<0> +¤<3><4>Mitosis <2>(passive)<10>Upon taking damage, this strain incubates, spawning one Rilirokor after a two-second delay.<10>This status cannot be applied if the strain is already incubating.<0> w<1><4>Build Cuirass <1>(<3>W<1>)<10>Durable frontline walker.<0> ¤<3><4>Stonewall Protocol <2>(passive)<10>Upon taking fatal damage, the Cuirass deactivates, regains 50 HP, and begins self-repairing for 15 HP per second until fully-healed. If the Cuirass is dealt fatal damage again before it can fully repair, it is destroyed.<0> <0> @@ -1264,8 +1264,8 @@ f<3><4>Skyfall <1>(<3>F<1>)<10>Grounds the Paladin and launches a salvo of 20 mi t<1><4>Profanate Mind Tyrant <1>(<3>T<1>)<10>Dominating specialist.<0> d<3><4>Activate Disruption Field <1>(<3>D<1>)<10>Creates an energy field beneath the Lanifect, disabling the weapons of all grounded combatants within it.<0> a<1><4>Build Armistice <1>(<3>A<1>)<10>Mobile garrison.<0> -c<3><4>Maledictus <1>(<3>C<1>)<10>Channels for five seconds before declaring an allied combatant as its malefactor.<10>So long as their Tyrant is nearby, malefactors gain increased durability and speed, and victims of their attacks are tyrannized on death.<10>Mind Tyrants can only have one malefactor at a time.<0> -e<3><4>Maelstrom <1>(<3>E<1>)<10>Fires an energy bolt that slows the movement speed of all targets within 2 range of the target area by 50% for 5 seconds. Hostile corpses within the area of effect are ascended.<0> +c<3><4>Maledictus <1>(<3>C<1>)<10>Channels for five seconds before declaring an allied combatant as its malefactor.<10>So long as their Tyrant is nearby and has energy, malefactors gain increased durability and speed, and victims of their attacks are tyrannized on death.<10>Mind Tyrants can only have one malefactor at a time.<0> +e<3><4>Maelstrom <1>(<3>E<1>)<10>Fires an energy bolt that slows the movement speed of all targets within 2 range of the target area by 66% for 5 seconds. Hostile corpses within the area of effect are ascended.<0> ¤<3><4>Idolatry <2>(passive)<10>The Sycophant recharges shields for the closest ally within 3 range. On death, the Sycophant heals allies within 3 range for 50 shields.<0> d<3><4>Deactivate Disruption Field <1>(<3>D<1>)<10>Returns the Lanifect's weapons systems to normal.<0> s<1><4>Warp in Sycophant <1>(<3>S<1>)<10>Innervating skirmisher.<0> @@ -1291,7 +1291,7 @@ v<1><4>Build Quadriga <1>(<3>V<1>)<10>Reinforced gunboat.<0> v<1><4>Build Valkyrie <1>(<3>V<1>)<10>Air superiority frigate.<0> r<1><4>Warp in Lanifect <1>(<3>R<1>)<10>Air superiority fighter.<0> a<1><4>Profanate Cabalist <1>(<3>A<1>)<10>Cloaked melee assassin.<0> -<0> +a<1><4>Profanate Vestige <1>(<3>A<1>)<10>Reviled assassin.<0> <0> <0> Vithril Aspect requires:<10> Tethvith Swamp<0> @@ -1334,14 +1334,14 @@ Must target units with energy.<0> <0> <0> <0> -<0> -<0> -<0> -<0> -<0> -<0> +¤<3><4>War Atrophy <2>(passive)<10>When a target is damaged by the Nihilist, it becomes atrophied, reducing its movement speed by 33% when moving towards its enemies.<0> +¤<3><4>Necromastery <2>(passive)<10>The Grimoire can pay host to a single allied combatant. When other combatants of the same type die, a new one begins training at the Grimoire, free of cost.<0> +¤<3><4>Tragyle's Coagulants <2>(passive)<10>Victims of the Camazotz's attacks react favorably to the serum within, and bleed a miasma that restores 3 HP to allies of the Harakan within 2 range.<0> +f<1><4>Train Camazotz <1>(<3>F<1>)<10>Sustaining infantry.<0> +¤<3><4>Seething Dominion <2>(passive)<10>Zytryleths cannot move once hatched, and launch their Omnispores at all targets within their weapon range.<0> +Rozirokor requires:<10> Hydrith Den<0> z<1><4>Morph to Izirokor <1>(<3>Z<1>)<10>Close-combat strain.<0> -<0> +z<1><4>Morph to Rozirokor <1>(<3>Z<1>)<10>Close-combat strain.<0> Izirokor requires:<10> Hydrith Den<0> t<1><4>Morph into Keskathalor <1>(<3>T<1>)<10>Artillery strain.<0> Keskathalor requires:<10> Geszkath Grotto<0> @@ -1356,7 +1356,7 @@ z<3><4>Switch to Power Siphon <1>(<3>Z<1>)<10>Activates the Savant's sustained f v<1><4>Morph into Konvilisk <1>(<3>V<1>)<10>Reinforcing duelist strain.<0> ¤<3><4>Reactive Payload <2>(passive)<10>For every 4 range travelled, this combatant's missiles split into an additional projectiles, homing in on the closest combatants within 3 range of the original target.<0> x<1><4>Mutate to Othstol Oviform <1>(<3>X<1>)<10>Tier 3 tech node.<0> -e<1><4>Mutate into Kethraj Keep <1>(<3>E<1>)<10>Artillery assault node.<0> +x<1><4>Mutate into Kethraj Keep <1>(<3>X<1>)<10>Artillery assault node.<0> Entropy Gauntlets Require:<10> Module switch<0> Power Siphon requires:<10> Module switch<0> a<1><4>Morph to Kagralisk <1>(<3>A<1>)<10>Bursting ranged strain.<0> @@ -1764,7 +1764,7 @@ z<3><4>Lobotomy Warhead <1>(<3>Z<1>)<10>Fires a missile that Lobotomizes its tar Chantry requires:<10> Radix OR Function<0> Ocsal Aspect requires:<10> Irol Iris<0> Click: Select Unit Type<10>Shift+Click: Deselect One Unit<10>Ctrl+Shift+Click: Deselect Unit Type<0> -¤<3><4>Metastasis <2>(passive)<10>Victims of Plague spread the effect to those nearby when killed.<0> +<0> a<1><4>Mutate into Ocsal Cesiant <1>(<3>A<1>)<10>Mutated production cell.<0> e<3><4>Imperioso Mode <1>(<3>E<1>)<10>Returns the Madrigal's weapon and mobility to normal.<0> <0> diff --git a/mpq/rez/unitnames.tbl b/mpq/rez/unitnames.tbl index 0c8dd2d..dd27650 100644 Binary files a/mpq/rez/unitnames.tbl and b/mpq/rez/unitnames.tbl differ diff --git a/mpq/samase/unitdef.txt b/mpq/samase/unitdef.txt index 281aa68..b544196 100644 --- a/mpq/samase/unitdef.txt +++ b/mpq/samase/unitdef.txt @@ -62,6 +62,18 @@ military madrigal_hecaton_furia = 508 military valkyrie_hecaton = 520 military quadriga = 541 military serathiel = 547 +military goremast = 567 +military broadside = 568 +military vulture_upstart = 570 +military maverick_upstart = 573 +military eidolon_upstart = 575 +military ajax = 576 +military maverick_golden = 580 +military shaman_upstart = 581 +military nuriel = 598 +military phoenix = 599 +military archbishop = 600 +military camazotz = 620 @spellcaster(serathiel) # Protoss factional units @@ -76,6 +88,9 @@ military dracadin_order = 430 military manifold_starbound = 437 military simulacrum_astral = 522 military warlock = 523 +military simulacrum_khalendric = 621 +military idol_khalendric = 622 +military cabalist_starbound = 623 # Zerg factional units military nathrelisk = 402 @@ -84,10 +99,17 @@ military inzorthrokor = 415 military quazrokor = 422 military lakizilisk_zorthos = 425 military hydralisk_orkoti = 436 -building yblyleth = 438 +military yblyleth = 438 military azanthrokor = 511 military sovrokor = 519 military garvrokor = 521 +military zethalor = 559 +military scrylyleth = 560 +military zoltorokor = 604 +military rozirokor = 616 +military alzurokor = 626 +military hydrokor = 627 +military zethalisk = 630 # Terran military units military maverick = 0 diff --git a/mpq/scripts/aiscript.bin b/mpq/scripts/aiscript.bin index a04ae77..4e15af5 100644 Binary files a/mpq/scripts/aiscript.bin and b/mpq/scripts/aiscript.bin differ diff --git a/mpq/scripts/iscript_askosi.bin b/mpq/scripts/iscript_askosi.bin index becad58..307d730 100644 Binary files a/mpq/scripts/iscript_askosi.bin and b/mpq/scripts/iscript_askosi.bin differ diff --git a/mpq/scripts/iscript_askosi.txt b/mpq/scripts/iscript_askosi.txt index 884957c..b803cff 100644 --- a/mpq/scripts/iscript_askosi.txt +++ b/mpq/scripts/iscript_askosi.txt @@ -371,6 +371,8 @@ ArchDeath: playsnd 7 # Misc\ExploLrg.wav sprol 272 0 0 # Building Explosion (Large) (thingy\tBangX.grp) wait 3 + lowsprul 1007 0 0 # Askosi Structure Rubble (Small) (cm\a\a-rubble-small.grp) + wait 1 end ArchSpecialState1: @@ -833,28 +835,28 @@ CardinalGndAttkToIdle: goto CardinalWalkingToIdle CardinalWalking: - move 4 + move 5 wait 1 playfram 0x11 - move 4 + move 5 wait 1 playfram 0x22 - move 4 + move 5 wait 1 playfram 0x33 - move 4 + move 5 wait 1 playfram 0x44 - move 4 + move 5 wait 1 playfram 0x55 - move 4 + move 5 wait 1 playfram 0x66 - move 4 + move 5 wait 1 playfram 0x77 - move 4 + move 5 wait 1 playfram 0x88 goto CardinalWalking @@ -1286,7 +1288,12 @@ DyadGndAttkToIdle: DyadWalking: setvertpos 0 # imgol 225 0 5 # Inkblot Engines (thingy\tdrGlow.grp) - goto SkryrokorLocal00 + goto DyadWalkingLoop + +DyadWalkingLoop: + move 4 + wait 1 + goto DyadWalkingLoop DyadAlmostBuilt: setvertpos 0 @@ -1610,7 +1617,6 @@ TiradeGndAttkInit: nobrkcodestart playfram 0x00 attackwith 1 - playsndbtwn 1252 1253 # Gorgon weaponfire 01, 02 wait 1 nobrkcodeend gotorepeatattk @@ -2416,6 +2422,8 @@ AbutmentDeath: playsndbtwn 4145 4147 # Askosi explosion medium 01, 02, 03 sprol 272 0 0 # Building Explosion (Large) (thingy\tBangX.grp) wait 3 + lowsprul 1007 0 0 # Askosi Structure Rubble (Small) (cm\a\a-rubble-small.grp) + wait 1 end AbutmentSpecialState1: @@ -3654,9 +3662,6 @@ GenericRemnantsThreeDeath: playfram 2 wait 255 wait 24 - playfram 3 - wait 255 - wait 24 end # ----------------------------------------------------------------------------- # @@ -4267,7 +4272,12 @@ ConstituentGndAttkInit: ConstituentWalking: setvertpos 0 # imgol 225 0 5 # Constituent Engines (thingy\tdrGlow.grp) - goto SkryrokorLocal00 + goto ConstituentWalkingLoop + +ConstituentWalkingLoop: + move 4 + wait 1 + goto ConstituentWalkingLoop ConstituentSpecialState1: playfram 0x00 @@ -6401,4 +6411,84 @@ Engines_GlowHeaderInit: wait 1 engset 1 wait 1 - goto Engines_GlowHeaderInit \ No newline at end of file + goto Engines_GlowHeaderInit + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2459 Impact Dissipation Overlay (cm\a\impact-dissipation.grp) +.headerstart +IsId 74 +Type 1 +Init ImpactDissipationOverlayInit +Death ImpactDissipationOverlayDeath +.headerend +# ----------------------------------------------------------------------------- # + +ImpactDissipationOverlayInit: + playfram 0x00 + wait 1 + playfram 1 + wait 1 + playfram 3 + wait 1 + playfram 4 + wait 1 + playfram 5 + wait 1 + playfram 6 + wait 1 + playfram 7 + wait 1 + playfram 8 + wait 1 + playfram 9 + wait 1 + playfram 10 + wait 1 + playfram 11 + wait 1 + playfram 12 + wait 1 + playfram 13 + wait 1 + playfram 14 + wait 1 + playfram 15 + wait 1 + playfram 16 + wait 1 +ImpactDissipationOverlayLoop: + playfram 17 + wait 1 + playfram 18 + wait 1 + playfram 19 + wait 1 + playfram 20 + wait 1 + playfram 21 + wait 1 + playfram 22 + wait 1 + playfram 21 + wait 1 + playfram 20 + wait 1 + playfram 19 + wait 1 + playfram 18 + wait 1 + playfram 17 + wait 1 + goto ImpactDissipationOverlayLoop + +ImpactDissipationOverlayDeath: + playfram 23 + wait 1 + playfram 24 + wait 1 + playfram 25 + wait 1 + playfram 26 + wait 1 + end \ No newline at end of file diff --git a/mpq/scripts/iscript_bloodsummon.bin b/mpq/scripts/iscript_bloodsummon.bin new file mode 100644 index 0000000..04271af Binary files /dev/null and b/mpq/scripts/iscript_bloodsummon.bin differ diff --git a/mpq/scripts/iscript_bloodsummon.txt b/mpq/scripts/iscript_bloodsummon.txt new file mode 100644 index 0000000..80b76b1 --- /dev/null +++ b/mpq/scripts/iscript_bloodsummon.txt @@ -0,0 +1,1253 @@ +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# All shadows +.headerstart +IsId 275 +Type 1 +Init ShadowHeaderInit +Death Generic_Wait1End +.headerend +# ----------------------------------------------------------------------------- # + +ShadowHeaderInit: + wait 1 + followmaingraphic + goto ShadowHeaderInit + +Generic_Wait1End: + wait 1 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# Generic engines, e.g. +# 2194 Helion Engines (cm\a\helion-engine.grp) +.headerstart +IsId 730 +Type 15 +Init Engines_MultiGlowHeader_OmniInit +Death Generic_Wait1End +GndAttkInit Generic_Wait1End +AirAttkInit Generic_Wait1End +Unused1 [NONE] +GndAttkRpt Generic_Wait1End +AirAttkRpt Generic_Wait1End +CastSpell Generic_Wait1End +GndAttkToIdle Generic_Wait1End +AirAttkToIdle Generic_Wait1End +Unused2 [NONE] +Walking Engines_MultiGlowHeader_OmniInit +WalkingToIdle Generic_Wait1End +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt Generic_Wait1End +.headerend +# ----------------------------------------------------------------------------- # + +Engines_MultiGlowHeader_OmniInit: + engframe 0 + wait 1 + engframe 32 + wait 1 + goto Engines_MultiGlowHeader_OmniInit + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# Generic remnants 5 +# 1500 Blackjack Remains (cm\terran\blackjack-corpse.grp) +.headerstart +IsId 650 +Type 1 +Init GenericRemnantsFiveInit +Death GenericRemnantsFiveDeath +.headerend +# ----------------------------------------------------------------------------- # + +GenericRemnantsFiveInit: + playfram 0x00 + wait 239 +GenericRemnantsFiveDeath: + wait 1 + playfram 1 + wait 255 + wait 24 + playfram 2 + wait 255 + wait 24 + playfram 3 + wait 255 + wait 24 + playfram 4 + wait 255 + wait 24 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 976 Optical Flare Hit (Small) (thingy\TmeFlshS.grp) +# 977 Optical Flare Hit (Medium) (thingy\TmeFlshM.grp) +# 978 Optical Flare Hit (Large) (thingy\TmeFlshL.grp) +.headerstart +IsId 32 +Type 1 +Init OpticalFlareHitInit +Death Generic_Wait1End +.headerend +# ----------------------------------------------------------------------------- # + +OpticalFlareHitInit: + playfram 0x00 + wait 1 + playfram 1 + wait 1 + playfram 2 + wait 1 + playfram 3 + wait 1 + playfram 4 + wait 1 + playfram 5 + wait 1 + playfram 6 + wait 1 + playfram 7 + wait 1 + playfram 8 + wait 1 + goto Generic_Wait1End + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# Generic remnants 3, e.g. +# 2257 Thaumalogue Remains (cm\a\thaumalogue-remains.grp) +.headerstart +IsId 41 +Type 1 +Init GenericRemnantsThreeInit +Death GenericRemnantsThreeDeath +.headerend +# ----------------------------------------------------------------------------- # + +GenericRemnantsThreeInit: + playfram 0x00 + wait 239 +GenericRemnantsThreeDeath: + wait 1 + playfram 1 + wait 255 + wait 24 + playfram 2 + wait 255 + wait 24 + playfram 3 + wait 255 + wait 24 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +.headerstart +IsId 291 +Type 15 +Init Engines_GlowHeaderInit +Death Generic_Wait1End +GndAttkInit Generic_Wait1End +AirAttkInit Generic_Wait1End +Unused1 [NONE] +GndAttkRpt Generic_Wait1End +AirAttkRpt Generic_Wait1End +CastSpell Generic_Wait1End +GndAttkToIdle Generic_Wait1End +AirAttkToIdle Generic_Wait1End +Unused2 [NONE] +Walking Engines_GlowHeaderInit +WalkingToIdle Generic_Wait1End +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt Generic_Wait1End +.headerend +# ----------------------------------------------------------------------------- # + +Engines_GlowHeaderInit: + engset 0 + wait 1 + engset 1 + wait 1 + goto Engines_GlowHeaderInit + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 110 Zerg Building Rubble (Small) (thingy\ZRubbleS.grp) +# 111 Zerg Building Rubble (Large) (thingy\ZRubbleL.grp) +# 216 Protoss Building Rubble (Small) (thingy\PRubbleS.grp) +# 217 Protoss Building Rubble (Large) (thingy\PRubbleL.grp) +# 335 Terran Building Rubble (Small) (thingy\RubbleS.grp) +# 336 Terran Building Rubble (Large) (thingy\RubbleL.grp) +# 1707 Terran Unit Rubble (Medium) (cm\terran\rubble-unit-medium.grp) +# 1708 Terran Unit Rubble (Small) (cm\terran\rubble-unit-small.grp) +# 1709 Protoss Unit Rubble (Medium) (cm\protoss\rubble-unit-medium.grp) +# 1710 Protoss Unit Rubble (Small) (cm\protoss\rubble-unit-small.grp) +# 1711 Zerg Unit Rubble (Medium) (cm\zerg\rubble-unit-medium.grp) +# 1712 Zerg Unit Rubble (Small) (cm\zerg\rubble-unit-small.grp) +# 1713 Zerg Unit Rubble (Tiny) (cm\zerg\rubble-unit-tiny.grp) +.headerstart +IsId 145 +Type 1 +Init BuildingRubbleHeaderInit +Death BuildingRubbleHeaderDeath +.headerend +# ----------------------------------------------------------------------------- # + +BuildingRubbleHeaderInit: + playfram 0x00 + wait 239 +BuildingRubbleHeaderDeath: + wait 1 + playfram 1 + wait 255 + wait 24 + playfram 2 + wait 255 + wait 24 + playfram 3 + wait 255 + wait 24 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 105 Bloodsummon Ritual (Small) (b\ritual.grp) +.headerstart +IsId 61 +Type 15 +Init BloodsummonRitual_Small_Init +Death CerebrateDeath +GndAttkInit [NONE] +AirAttkInit [NONE] +Unused1 [NONE] +GndAttkRpt [NONE] +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle [NONE] +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking [NONE] +WalkingToIdle [NONE] +SpecialState1 BloodsummonRitual_Small_SpecialState1 +SpecialState2 BloodsummonRitual_Small_SpecialState1 +AlmostBuilt BloodsummonRitual_Small_AlmostBuilt +.headerend +# ----------------------------------------------------------------------------- # + +BloodsummonRitual_Small_Init: + imgul 106 0 0 # Bloodsummon Ritual Shadow (b\ritual-shadow.grp) + playfram 1 + wait 2 + playfram 2 + wait 2 + playfram 3 + wait 2 +BloodsummonRitual_Small_SpecialState1: + playfram 4 + wait 2 + playfram 5 + wait 2 + playfram 6 + wait 2 + playfram 7 + wait 2 + playfram 8 + wait 2 + playfram 9 + wait 2 + playfram 8 + wait 2 + playfram 7 + wait 2 + playfram 6 + wait 2 + playfram 5 + wait 2 + goto BloodsummonRitual_Small_SpecialState1 + +BloodsummonRitual_Small_AlmostBuilt: + playfram 10 + wait 2 + playfram 11 + wait 2 + playfram 12 + wait 2 + sigorder 4 + goto SkryrokorLocal00 + +CerebrateDeath: + playsnd 774 # Zerg\Bldg\ZBldgDth.WAV + imgol 60 0 0 # Zerg Building Explosion (thingy\zBldDthS.grp) + wait 3 + lowsprul 186 0 0 # Zerg Building Rubble (Small) (thingy\ZRubbleS.grp) + wait 1 + end + +OvermindRemnantsDeath: + playsnd 774 # Zerg\Bldg\ZBldgDth.WAV + imgol 60 0 0 # Zerg Building Explosion (thingy\zBldDthS.grp) + wait 3 + lowsprul 187 0 0 # Zerg Building Rubble (Large) (thingy\ZRubbleL.grp) + wait 1 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 104 Bloodsummon Ritual (Medium) (b\ritual.grp) +.headerstart +IsId 62 +Type 15 +Init BloodsummonRitual_Medium_Init +Death BloodsummonRitual_Medium_Death +GndAttkInit [NONE] +AirAttkInit [NONE] +Unused1 [NONE] +GndAttkRpt [NONE] +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle [NONE] +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking [NONE] +WalkingToIdle [NONE] +SpecialState1 BloodsummonRitual_Medium_SpecialState1 +SpecialState2 BloodsummonRitual_Medium_SpecialState1 +AlmostBuilt BloodsummonRitual_Medium_AlmostBuilt +.headerend +# ----------------------------------------------------------------------------- # + +BloodsummonRitual_Medium_Init: + imgul 106 0 0 # Bloodsummon Ritual Shadow (b\ritual-shadow.grp) + playfram 1 + wait 2 + playfram 2 + wait 2 + playfram 3 + wait 2 +BloodsummonRitual_Medium_Local00: + playfram 4 + wait 2 + playfram 5 + wait 2 + playfram 6 + wait 2 + playfram 7 + wait 2 + playfram 8 + wait 2 + playfram 9 + wait 2 + playfram 8 + wait 2 + playfram 7 + wait 2 + playfram 6 + wait 2 + playfram 5 + wait 2 + goto BloodsummonRitual_Medium_Local00 + +BloodsummonRitual_Medium_Death: + playsnd 774 # Zerg\Bldg\ZBldgDth.WAV + imgol 60 0 0 # Zerg Building Explosion (thingy\zBldDthS.grp) + wait 3 + lowsprul 186 0 0 # Zerg Building Rubble (Small) (thingy\ZRubbleS.grp) + wait 1 + end + +BloodsummonRitual_Medium_SpecialState1: + playfram 13 + wait 2 + playfram 14 + wait 2 + playfram 15 + wait 2 + playfram 16 + wait 2 + playfram 0x11 + wait 2 + playfram 18 + wait 2 + playfram 0x11 + wait 2 + playfram 16 + wait 2 + playfram 15 + wait 2 + playfram 14 + wait 2 + goto BloodsummonRitual_Medium_SpecialState1 + +BloodsummonRitual_Medium_AlmostBuilt: + sigorder 32 + playfram 19 + wait 2 + playfram 20 + wait 2 + playfram 21 + wait 2 + sigorder 4 + goto SkryrokorLocal00 + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 103 Bloodsummon Ritual Transmutation (b\ritual.grp) +.headerstart +IsId 63 +Type 15 +Init RitualTransmutationInit +Death OvermindRemnantsDeath +GndAttkInit [NONE] +AirAttkInit [NONE] +Unused1 [NONE] +GndAttkRpt [NONE] +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle [NONE] +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking [NONE] +WalkingToIdle [NONE] +SpecialState1 RitualTransmutationSpecialState1 +SpecialState2 RitualTransmutationSpecialState2 +AlmostBuilt RitualTransmutationAlmostBuilt +.headerend +# ----------------------------------------------------------------------------- # + +RitualTransmutationInit: + imgul 106 0 0 # Bloodsummon Ritual Shadow (b\ritual-shadow.grp) + playfram 1 + wait 2 + playfram 2 + wait 2 + playfram 3 + wait 2 +RitualTransmutationLocal00: + playfram 4 + wait 2 + playfram 5 + wait 2 + playfram 6 + wait 2 + playfram 7 + wait 2 + playfram 8 + wait 2 + playfram 7 + wait 2 + playfram 6 + wait 2 + playfram 5 + wait 2 + goto RitualTransmutationLocal00 + +RitualTransmutationSpecialState1: + playfram 13 + wait 2 + playfram 14 + wait 2 + playfram 15 + wait 2 + playfram 16 + wait 2 + playfram 0x11 + wait 2 + playfram 18 + wait 2 + playfram 0x11 + wait 2 + playfram 16 + wait 2 + playfram 15 + wait 2 + playfram 14 + wait 2 + goto RitualTransmutationSpecialState1 + +RitualTransmutationSpecialState2: + playfram 22 + wait 2 + playfram 23 + wait 2 + playfram 24 + wait 2 + playfram 25 + wait 2 + playfram 26 + wait 2 + playfram 27 + wait 2 + playfram 26 + wait 2 + playfram 25 + wait 2 + playfram 24 + wait 2 + playfram 23 + wait 2 + goto RitualTransmutationSpecialState2 + +RitualTransmutationAlmostBuilt: + playfram 28 + wait 2 + playfram 29 + wait 2 + playfram 30 + wait 2 + sigorder 4 + goto SkryrokorLocal00 + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 102 Bloodsummon Ritual (Large) (b\ritual.grp) +.headerstart +IsId 64 +Type 15 +Init BloodsummonRitual_Large_Init +Death BloodsummonRitual_Large_Death +GndAttkInit [NONE] +AirAttkInit [NONE] +Unused1 [NONE] +GndAttkRpt [NONE] +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle [NONE] +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking [NONE] +WalkingToIdle [NONE] +SpecialState1 RitualTransmutationSpecialState2 +SpecialState2 RitualTransmutationSpecialState2 +AlmostBuilt RitualTransmutationAlmostBuilt +.headerend +# ----------------------------------------------------------------------------- # + +BloodsummonRitual_Large_Init: + playfram 1 + wait 2 + playfram 2 + wait 2 + playfram 3 + wait 2 + goto RitualTransmutationSpecialState2 + +BloodsummonRitual_Large_Death: + playsnd 774 # Zerg\Bldg\ZBldgDth.WAV + sprol 185 0 0 # Zerg Building Explosion (thingy\zBldDthS.grp) + wait 3 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 107 Bloodsummon Ritual Completion (Small) (zerg\zSpawn01.grp) +# 108 Bloodsummon Ritual Completion (Medium) (zerg\zSpawn02.grp) +# 109 Bloodsummon Ritual Completion (Large) (zerg\zSpawn03.grp) +.headerstart +IsId 65 +Type 1 +Init ZergBuildingSpawnInit +Death Generic_Wait1End +.headerend +# ----------------------------------------------------------------------------- # + +ZergBuildingSpawnInit: + playfram 0x00 + wait 2 + playfram 1 + wait 2 + playfram 2 + wait 2 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 1619 Grimoire (cm\bloodsummon\grimoire.grp) +.headerstart +IsId 0 +Type 20 +Init GrimoireInit +Death GrimoireDeath +GndAttkInit [NONE] +AirAttkInit [NONE] +Unused1 [NONE] +GndAttkRpt [NONE] +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle [NONE] +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking SkryrokorLocal00 +WalkingToIdle SkryrokorLocal00 +SpecialState1 GrimoireSpecialState1 +SpecialState2 [NONE] +AlmostBuilt GrimoireAlmostBuilt +Built GrimoireBuilt +Landing GrimoireLanding +LiftOff GrimoireLiftOff +IsWorking GrimoireIsWorking +WorkingToIdle GrimoireBuilt +WarpIn [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +GrimoireInit: + imgulnextid 0 0 # Grimoire Shadow (cm\bloodsummon\grimoire-shadow.grp) +GrimoireBuilt: + playfram 0x00 + goto SkryrokorLocal00 + +GrimoireDeath: + playsnd 774 # Zerg\Bldg\ZBldgDth.WAV + imgol 60 0 0 # Zerg Building Explosion (thingy\zBldDthS.grp) + wait 3 + lowsprul 1166 0 0 # Bloodsummon building rubble (large) + wait 1 + end + +GrimoireSpecialState1: + playfram 0 + goto SkryrokorLocal00 + +GrimoireAlmostBuilt: + playfram 5 + goto SkryrokorLocal00 + +GrimoireLanding: + nobrkcodestart + wait 20 + playsnd 472 # Misc\Land.WAV +# playfram 3 + wait 5 +# playfram 2 + wait 5 +# playfram 1 + wait 5 +# playfram 4 + wait 5 + playfram 0x00 + sigorder 16 + nobrkcodeend + goto SkryrokorLocal00 + +GrimoireLiftOff: + nobrkcodestart + playsnd 471 # Misc\LiftOff.WAV +# playfram 4 + wait 5 +# playfram 1 + wait 5 +# playfram 2 + wait 5 +# playfram 3 + sigorder 16 + nobrkcodeend + goto SkryrokorLocal00 + +GrimoireIsWorking: + playfram 1 + wait 1 + playfram 2 + wait 1 + playfram 3 + wait 1 + playfram 4 + wait 1 + playfram 5 + wait 1 + playfram 6 + wait 1 + playfram 7 + wait 1 + playfram 8 + wait 1 + playfram 9 + wait 1 + playfram 10 + wait 1 + playfram 11 + wait 1 + playfram 12 + wait 1 + playfram 13 + wait 1 + playfram 14 + wait 1 + playfram 15 + wait 1 + playfram 16 + wait 1 + playfram 17 + wait 1 + playfram 18 + wait 1 + playfram 19 + wait 1 + playfram 20 + wait 1 + playfram 0 + wait 1 + goto GrimoireIsWorking + +InfestedTerranWalkingToIdle: + playfram 0x00 +SkryrokorLocal00: + wait 125 + goto SkryrokorLocal00 + +LiftedTerranStructureDeath: + lowsprul 274 0 42 # Terran Building Rubble (Large) (thingy\RubbleL.grp) + wait 1 + end + +LiftedTerranStructureDeath_Small: + lowsprul 273 0 42 # Terran Building Rubble (Small) (thingy\RubbleS.grp) + wait 1 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2262 Thrombocyte (cm\b\thrombocyte.grp) +.headerstart +IsId 1 +Type 26 +Init ThrombocyteInit +Death ThrombocyteDeath +GndAttkInit ThrombocyteGndAttkInit +AirAttkInit ThrombocyteGndAttkInit +Unused1 ThrombocyteUnused1 +GndAttkRpt ThrombocyteGndAttkInit +AirAttkRpt ThrombocyteGndAttkInit +CastSpell [NONE] +GndAttkToIdle ThrombocyteGndAttkToIdle +AirAttkToIdle ThrombocyteGndAttkToIdle +Unused2 [NONE] +Walking ThrombocyteWalking +WalkingToIdle ThrombocyteWalkingToIdle +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt [NONE] +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] +Unused3 [NONE] +StarEditInit [NONE] +Disable [NONE] +Burrow [NONE] +UnBurrow [NONE] +Enable [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +ThrombocyteInit: + imgulnextid 0 2 # Thrombocyte Shadow (cm\b\thrombocyte-shadow.grp) +ThrombocyteWalkingToIdle: + playfram 0x00 + goto SkryrokorLocal00 + +ThrombocyteDeath: + imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) + playsndbtwn 1707 1708 # Quazilisk death 01, 02 + playfram 0x240 + wait 1 + playfram 0x260 + wait 1 + playfram 0x280 + wait 1 + playfram 0x2A0 + wait 2 + lowsprul 1168 0 0 # Bloodsummon Unit Rubble Small + wait 1 + end + +ThrombocyteUnused1: + wait 1 + nobrkcodestart + setfldirect 0 + playsnd 1171 + playfram 0x210 +# wait 2 +# playfram 0xaa +# wait 2 +# playfram 0xbb +# wait 2 +# playfram 0xcc +# wait 2 +# playfram 0xdd +# wait 2 +# playfram 0xee +# wait 2 +# playfram 0xff +# wait 2 + wait 14 + setfldirect 10 + nobrkcodeend + goto ThrombocyteGndAttkToIdle + +ThrombocyteGndAttkInit: + playfram 0x120 + wait 1 + nobrkcodestart + playfram 0x140 + wait 1 + playfram 0x160 + wait 1 + playsndbtwn 2014 2015 # Liiralisk attack 01, 02 + attack + playfram 0x180 + wait 1 + playfram 0x1A0 + wait 1 + playfram 0x1C0 + wait 1 + playfram 0x1E0 + wait 1 + playfram 0x200 + wait 1 + nobrkcodeend + gotorepeatattk + ignorerest +ThrombocyteGndAttkToIdle: + playfram 0x00 + wait 1 + goto ThrombocyteWalkingToIdle + +ThrombocyteWalking: + move 6 + wait 1 + playfram 0x220 + move 6 + wait 1 + playfram 0x240 + move 6 + wait 1 + playfram 0x260 + move 6 + wait 1 + playfram 0x280 + move 6 + wait 1 + playfram 0x2A0 + move 6 + wait 1 + playfram 0x2C0 + move 6 + wait 1 + playfram 0x2E0 + goto ThrombocyteWalking + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2041 Acqui (cm\b\acqui.grp) +.headerstart +IsId 2 +Type 21 +Init AcquiInit +Death AcquiDeath +GndAttkInit AcquiGndAttkInit +AirAttkInit [NONE] +Unused1 AcquiUnused1 +GndAttkRpt AcquiGndAttkInit +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle AcquiGndAttkToIdle +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking AcquiWalking +WalkingToIdle AcquiWalkingToIdle +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt AcquiAlmostBuilt +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +AcquiInit: + imgulnextid 0 3 # Acqui Shadow (cm\b\acqui-shadow.grp) + goto AcquiWalkingToIdle + +AcquiDeath: + imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) + playsndbtwn 1707 1708 # Quazilisk death 01, 02 + playfram 0x5E0 + wait 1 + playfram 0x600 + wait 1 + playfram 0x620 + wait 1 + playfram 0x640 + wait 1 + playfram 0x660 + wait 1 + lowsprul 1168 0 0 # Bloodsummon Unit Rubble Small + wait 1 + playfram 0x680 + wait 1 + playfram 0x6A0 + wait 1 + playfram 0x6C0 + wait 1 + playfram 0x6E0 + wait 1 + end + +AcquiUnused1: + wait 1 + nobrkcodestart + setfldirect 0 + playsnd 1171 + playfram 0x210 +# wait 2 +# playfram 0xaa +# wait 2 +# playfram 0xbb +# wait 2 +# playfram 0xcc +# wait 2 +# playfram 0xdd +# wait 2 +# playfram 0xee +# wait 2 +# playfram 0xff +# wait 2 + wait 14 + setfldirect 10 + nobrkcodeend + goto AcquiWalkingToIdle + +AcquiGndAttkInit: + playfram 0x260 + wait 1 + playfram 0x2A0 + wait 1 + nobrkcodestart + playfram 0x2E0 + wait 1 + playfram 0x300 + attackmelee 2 4266 4268 # Rozirokor weaponhit 01, 02, 03 + wait 1 + playfram 0x320 + wait 1 + nobrkcodeend + playfram 0x360 + wait 1 + playfram 0x340 + wait 1 + playfram 0x300 + wait 1 + playfram 0x2C0 + wait 1 + playfram 0x1E0 + wait 1 + gotorepeatattk + ignorerest +AcquiGndAttkToIdle: + playfram 0x1E0 + wait 1 + goto AcquiWalkingToIdle + +AcquiWalking: + move 4 + wait 1 + playfram 0x3E0 + move 4 + wait 1 + playfram 0x400 + move 4 + wait 1 + playfram 0x420 + move 4 + wait 1 + playfram 0x440 + move 4 + wait 1 + playfram 0x460 + move 4 + wait 1 + playfram 0x480 + move 4 + wait 1 + playfram 0x4A0 + move 4 + wait 1 + playfram 0x4C0 + move 4 + wait 1 + playfram 0x4E0 + move 4 + wait 1 + playfram 0x500 + move 4 + wait 1 + playfram 0x520 + move 4 + wait 1 + playfram 0x540 + move 4 + wait 1 + playfram 0x560 + move 4 + wait 1 + playfram 0x580 + move 4 + wait 1 + playfram 0x5A0 + move 4 + wait 1 + playfram 0x5C0 + goto AcquiWalking + +AcquiWalkingToIdle: + playfram 0x00 + goto SkryrokorLocal00 + +AcquiAlmostBuilt: + setvertpos 0 + wait 1 +AcquiLocal00: + playfram 0x260 + playsndbtwn 1533 1535 # Droleth mining 01, 02, 03 + wait 2 + playfram 0x2A0 + wait 2 + playfram 0x2E0 + wait 2 + playfram 0x300 + wait 2 + playfram 0x320 + wait 2 + playfram 0x360 + wait 2 + playfram 0x340 + wait 2 + playfram 0x300 + wait 2 + playfram 0x2C0 + wait 2 + goto AcquiLocal00 + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2448 Nihilist (cm\b\nihilist.grp) +.headerstart +IsId 3 +Type 21 +Init NihilistInit +Death NihilistDeath +GndAttkInit NihilistGndAttkInit +AirAttkInit NihilistGndAttkInit +Unused1 NihilistUnused1 +GndAttkRpt NihilistGndAttkInit +AirAttkRpt NihilistGndAttkInit +CastSpell [NONE] +GndAttkToIdle NihilistGndAttkToIdle +AirAttkToIdle NihilistGndAttkToIdle +Unused2 [NONE] +Walking NihilistWalking +WalkingToIdle NihilistWalkingToIdle +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt [NONE] +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +NihilistInit: + imgulnextid 0 3 # Nihilist Shadow (cm\b\nihilist-shadow.grp) + goto NihilistWalkingToIdle + +NihilistWalkingToIdle: + playfram 0x00 + wait 1 + waitrand 24 79 + goto NihilistFidget + +NihilistFidget: + playfram 0x20 + wait 1 + playfram 0x40 + wait 1 + playfram 0x60 + wait 1 + playfram 0x80 + wait 1 + playfram 0xA0 + wait 1 + playfram 0xC0 + wait 1 + playfram 0xE0 + wait 1 + playfram 0x100 + wait 1 + playfram 0x120 + wait 1 + playfram 0x140 + wait 1 + playfram 0x160 + wait 1 + playfram 0x180 + wait 1 + playfram 0x1A0 + wait 1 + playfram 0x1C0 + wait 1 + playfram 0x1E0 + wait 1 + playfram 0x200 + goto NihilistWalkingToIdle + +NihilistDeath: + imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) + playsndbtwn 1707 1708 # Quazilisk death 01, 02 + playfram 0x5A0 + wait 1 + playfram 0x5C0 + wait 1 + playfram 0x5E0 + wait 1 + playfram 0x600 + wait 1 + playfram 0x620 + wait 1 + lowsprul 1168 0 0 # Bloodsummon Unit Rubble Small + playfram 0x640 + wait 1 + playfram 0x660 + wait 1 + playfram 0x680 + wait 1 + playfram 0x6A0 + wait 1 + playfram 0x6C0 + wait 1 + playfram 0x6E0 + wait 1 + playfram 0x700 + wait 1 + playfram 0x720 + wait 1 + end + +NihilistUnused1: + wait 1 + nobrkcodestart + setfldirect 0 + playsnd 1171 + playfram 0x210 +# wait 2 +# playfram 0xaa +# wait 2 +# playfram 0xbb +# wait 2 +# playfram 0xcc +# wait 2 +# playfram 0xdd +# wait 2 +# playfram 0xee +# wait 2 +# playfram 0xff +# wait 2 + wait 14 + setfldirect 10 + nobrkcodeend + goto NihilistWalkingToIdle + +NihilistGndAttkInit: + playfram 0x3A0 + wait 1 + playfram 0x3C0 + wait 1 + nobrkcodestart + playfram 0x3E0 + wait 1 + playfram 0x400 + playsndbtwn 2536 2538 # Protathalor weaponfire 01, 02, 03 + attack + wait 1 + playfram 0x420 + wait 1 + nobrkcodeend + playfram 0x440 + wait 1 + playfram 0x460 + wait 1 + playfram 0x480 + wait 1 + playfram 0x4A0 + wait 1 + playfram 0x4C0 + wait 1 + playfram 0x4E0 + wait 1 + playfram 0x500 + wait 1 + playfram 0x520 + wait 1 + playfram 0x540 + wait 1 + playfram 0x560 + wait 1 + playfram 0x580 + wait 1 + gotorepeatattk + ignorerest +NihilistGndAttkToIdle: + playfram 0x3A0 + wait 1 + goto NihilistWalkingToIdle + +NihilistWalking: + move 4 + wait 1 + playfram 0x220 + move 4 + wait 1 + playfram 0x240 + move 4 + wait 1 + playfram 0x260 + move 4 + wait 1 + playfram 0x280 + move 4 + wait 1 + playfram 0x2A0 + move 4 + wait 1 + playfram 0x2C0 + move 4 + wait 1 + playfram 0x2E0 + move 4 + wait 1 + playfram 0x300 + move 4 + wait 1 + playfram 0x320 + move 4 + wait 1 + playfram 0x340 + move 4 + wait 1 + playfram 0x360 + move 4 + wait 1 + playfram 0x380 + goto NihilistWalking \ No newline at end of file diff --git a/mpq/scripts/iscript_general.bin b/mpq/scripts/iscript_general.bin index f53b6ee..b4f02e7 100644 Binary files a/mpq/scripts/iscript_general.bin and b/mpq/scripts/iscript_general.bin differ diff --git a/mpq/scripts/iscript_general.txt b/mpq/scripts/iscript_general.txt index 173123e..6840f77 100644 --- a/mpq/scripts/iscript_general.txt +++ b/mpq/scripts/iscript_general.txt @@ -3630,7 +3630,7 @@ EnergyRegenOverlayDeath: # 1676 Santa Hat - Extra Large - 17 .headerstart IsId 722 -Type 24 +Type 26 Init SantaHatInit Death SantaHatDeath GndAttkInit SantaHatLocal00 @@ -5062,8 +5062,10 @@ AthlaGndAttkInit: AthlaWalking: setvertpos 0 playfram 0x00 + move 7 + wait 1 # imgol 142 0 0 # Athla Engines (thingy\pscGlow.grp) - goto SkryrokorLocal00 + goto AthlaWalking AthlaWalkingToIdle: playfram 0x00 diff --git a/mpq/scripts/iscript_kogri.txt b/mpq/scripts/iscript_kogri.txt new file mode 100644 index 0000000..2f5fc39 --- /dev/null +++ b/mpq/scripts/iscript_kogri.txt @@ -0,0 +1,176 @@ +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# All shadows +.headerstart +IsId 275 +Type 1 +Init ShadowHeaderInit +Death Generic_Wait1End +.headerend +# ----------------------------------------------------------------------------- # + +ShadowHeaderInit: + wait 1 + followmaingraphic + goto ShadowHeaderInit + +Generic_Wait1End: + wait 1 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# Generic engines, e.g. +# 2194 Helion Engines (cm\a\helion-engine.grp) +.headerstart +IsId 730 +Type 15 +Init Engines_MultiGlowHeader_OmniInit +Death Generic_Wait1End +GndAttkInit Generic_Wait1End +AirAttkInit Generic_Wait1End +Unused1 [NONE] +GndAttkRpt Generic_Wait1End +AirAttkRpt Generic_Wait1End +CastSpell Generic_Wait1End +GndAttkToIdle Generic_Wait1End +AirAttkToIdle Generic_Wait1End +Unused2 [NONE] +Walking Engines_MultiGlowHeader_OmniInit +WalkingToIdle Generic_Wait1End +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt Generic_Wait1End +.headerend +# ----------------------------------------------------------------------------- # + +Engines_MultiGlowHeader_OmniInit: + engframe 0 + wait 1 + engframe 32 + wait 1 + goto Engines_MultiGlowHeader_OmniInit + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# Generic remnants 5 +# 1500 Blackjack Remains (cm\terran\blackjack-corpse.grp) +.headerstart +IsId 650 +Type 1 +Init GenericRemnantsFiveInit +Death GenericRemnantsFiveDeath +.headerend +# ----------------------------------------------------------------------------- # + +GenericRemnantsFiveInit: + playfram 0x00 + wait 239 +GenericRemnantsFiveDeath: + wait 1 + playfram 1 + wait 255 + wait 24 + playfram 2 + wait 255 + wait 24 + playfram 3 + wait 255 + wait 24 + playfram 4 + wait 255 + wait 24 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 976 Optical Flare Hit (Small) (thingy\TmeFlshS.grp) +# 977 Optical Flare Hit (Medium) (thingy\TmeFlshM.grp) +# 978 Optical Flare Hit (Large) (thingy\TmeFlshL.grp) +.headerstart +IsId 32 +Type 1 +Init OpticalFlareHitInit +Death Generic_Wait1End +.headerend +# ----------------------------------------------------------------------------- # + +OpticalFlareHitInit: + playfram 0x00 + wait 1 + playfram 1 + wait 1 + playfram 2 + wait 1 + playfram 3 + wait 1 + playfram 4 + wait 1 + playfram 5 + wait 1 + playfram 6 + wait 1 + playfram 7 + wait 1 + playfram 8 + wait 1 + goto Generic_Wait1End + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# Generic remnants 3, e.g. +# 2257 Thaumalogue Remains (cm\a\thaumalogue-remains.grp) +.headerstart +IsId 41 +Type 1 +Init GenericRemnantsThreeInit +Death GenericRemnantsThreeDeath +.headerend +# ----------------------------------------------------------------------------- # + +GenericRemnantsThreeInit: + playfram 0x00 + wait 239 +GenericRemnantsThreeDeath: + wait 1 + playfram 1 + wait 255 + wait 24 + playfram 2 + wait 255 + wait 24 + playfram 3 + wait 255 + wait 24 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +.headerstart +IsId 291 +Type 15 +Init Engines_GlowHeaderInit +Death Generic_Wait1End +GndAttkInit Generic_Wait1End +AirAttkInit Generic_Wait1End +Unused1 [NONE] +GndAttkRpt Generic_Wait1End +AirAttkRpt Generic_Wait1End +CastSpell Generic_Wait1End +GndAttkToIdle Generic_Wait1End +AirAttkToIdle Generic_Wait1End +Unused2 [NONE] +Walking Engines_GlowHeaderInit +WalkingToIdle Generic_Wait1End +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt Generic_Wait1End +.headerend +# ----------------------------------------------------------------------------- # + +Engines_GlowHeaderInit: + engset 0 + wait 1 + engset 1 + wait 1 + goto Engines_GlowHeaderInit \ No newline at end of file diff --git a/mpq/scripts/iscript_protoss.bin b/mpq/scripts/iscript_protoss.bin index 0bfba8d..57ea2d6 100644 Binary files a/mpq/scripts/iscript_protoss.bin and b/mpq/scripts/iscript_protoss.bin differ diff --git a/mpq/scripts/iscript_protoss.txt b/mpq/scripts/iscript_protoss.txt index 4e55ff9..88c0513 100644 --- a/mpq/scripts/iscript_protoss.txt +++ b/mpq/scripts/iscript_protoss.txt @@ -602,7 +602,7 @@ ArchonSwirlLocal00: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 112 Solarion (protoss\carrier.grp) +# 112 Solarion (protoss\solarion.grp) .headerstart IsId 151 Type 21 @@ -632,7 +632,7 @@ WarpIn SolarionWarpIn # ----------------------------------------------------------------------------- # SolarionInit: - imgulnextid 0 42 + imgulnextid 0 42 # Solarion shadow (protoss\solarion.grp) playfram 0x00 goto SkryrokorLocal00 @@ -670,11 +670,11 @@ SolarionUnused1: goto SkryrokorLocal00 SolarionWalking: - imgol 114 0 0 # Solarion Engines (thingy\pcaGlow.grp) + imgol 114 0 0 # Solarion Engines (protoss\solarion-engine.grp) goto SkryrokorLocal00 SolarionWarpIn: - imgol 115 0 0 # Solarion Warp Flash (protoss\carrier.grp) + imgol 115 0 0 # Solarion Warp Flash (protoss\solarion.grp) goto SkryrokorLocal00 # ----------------------------------------------------------------------------- # @@ -936,7 +936,7 @@ DracadinWarpIn: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 116 Steward (protoss\Intercep.grp) +# 116 Steward (protoss\steward.grp) .headerstart IsId 155 Type 12 @@ -958,7 +958,7 @@ SpecialState1 [NONE] # ----------------------------------------------------------------------------- # StewardInit: - imgul 117 0 42 # Steward Shadow (protoss\Intercep.grp) + imgulnextid 0 42 # Steward Shadow (protoss\steward.grp) playfram 0x00 goto SolarionLocal00 @@ -969,9 +969,10 @@ StewardDeath: end StewardGndAttkInit: - wait 1 + playfram 0x00 + wait 2 attackwith 1 - playfram 0x11 + playfram 0x20 wait 1 playfram 0x00 gotorepeatattk @@ -1843,6 +1844,8 @@ AquiferDeath: playsnd 7 # Misc\ExploLrg.wav sprol 222 0 0 # Explosion (Large) (thingy\tBangX.grp) wait 3 + lowsprul 223 0 0 # Protoss Building Rubble (Small) (thingy\PRubbleS.grp) + wait 1 end AquiferBuilt: @@ -2676,6 +2679,8 @@ PylonDeath: playsnd 7 # Misc\ExploLrg.wav imgol 215 0 0 # Explosion (Large) (thingy\tBangX.grp) wait 3 + lowsprul 846 0 42 # Protoss Unit Rubble Medium + wait 1 end PylonWarpIn: @@ -5551,13 +5556,24 @@ ExemplarDeath: end ExemplarGndAttkInit: - nobrkcodestart - playsndbtwn 1222 1226 # Exemplar weaponfire 01, 02, 03, 04, 05 - playfram 0x11 - attackwith 1 - wait 2 + setvertpos 0 playfram 0x00 + wait 1 + nobrkcodestart + playfram 0x20 + playsndbtwn 1222 1226 # Exemplar weaponfire 01, 02, 03, 04, 05 + attackwith 1 + wait 1 + playfram 0x40 + wait 1 + playfram 0x60 + wait 1 + playfram 0x40 nobrkcodeend + wait 1 + playfram 0x20 + wait 1 + playfram 0x00 gotorepeatattk goto SkryrokorLocal00 @@ -6538,15 +6554,15 @@ AugurDeathDeath: .headerstart IsId 797 Type 21 -Init ZealotInit +Init ZealotStarboundInit Death ZealotDeath -GndAttkInit ZealotGndAttkInit +GndAttkInit ZealotStarboundGndAttkInit AirAttkInit [NONE] Unused1 ZealotUnused1 -GndAttkRpt ZealotGndAttkRpt +GndAttkRpt ZealotStarboundGndAttkRpt AirAttkRpt [NONE] CastSpell [NONE] -GndAttkToIdle ZealotGndAttkToIdle +GndAttkToIdle ZealotStarboundGndAttkToIdle AirAttkToIdle [NONE] Unused2 [NONE] Walking ZealotWalking @@ -6562,11 +6578,39 @@ WorkingToIdle [NONE] WarpIn ZealotStarboundWarpIn .headerend # ----------------------------------------------------------------------------- # - + +ZealotStarboundInit: + imgulnextid 0 0 # Zealot (Starbound) Shadow (cm\f-p\zealot-starbound-shadow.grp) + goto ZealotWalkingToIdle + ZealotStarboundGndAttkInit: playfram 0x00 wait 1 - goto ZealotWalkingToIdle +ZealotStarboundGndAttkRpt: + playsndrand 2 662 663 # Protoss\ZEALOT\pzeAtt00.WAV | Protoss\ZEALOT\pzeAtt01.WAV + playfram 0x20 + wait 1 + nobrkcodestart + playfram 0x40 + wait 1 + playfram 0x60 + wait 1 + playfram 0x80 + attackmelee 1 3228 # Legionnaire weapon hit 01 + wait 1 + playfram 0x60 + wait 1 + playfram 0x40 + attackmelee 1 0 + wait 1 + playfram 0x20 + wait 1 + playfram 0x00 + nobrkcodeend + gotorepeatattk + ignorerest +ZealotStarboundGndAttkToIdle: + goto ZealotWalkingToIdle ZealotStarboundWarpIn: imgol 2166 0 0 # Zealot (Starbound) Warp Flash (cm\faction-p\zealot-starbound.grp) @@ -6879,7 +6923,7 @@ StarSovereignLocal03: StarSovereignWalking: setvertpos 0 -# imgol 1205 0 0 # Star Sovereign Engines (cm\protoss\starsovereign-engine.grp) + imgol 1205 0 0 # Star Sovereign Engines (cm\protoss\starsovereign-engine.grp) goto SkryrokorLocal00 StarSovereignWarpIn: @@ -7616,15 +7660,22 @@ AtreusDeath: end AtreusGndAttkInit: - playfram 0x00 -AtreusGndAttkRpt: + playfram 0x240 wait 1 + playfram 0x260 + wait 1 +AtreusGndAttkRpt: nobrkcodestart - playfram 0x220 + wait 1 + playfram 0x2A0 playsndbtwn 1788 1790 # Atreus weapon fire 01, 02, 03 attackwith 1 wait 1 - playfram 0x00 + playfram 0x280 + wait 1 + playfram 0x260 + wait 1 + playfram 0x240 wait 1 nobrkcodeend gotorepeatattk @@ -7632,54 +7683,35 @@ AtreusGndAttkRpt: goto AtreusGndAttkToIdle AtreusWalking: - move 4 - wait 1 - playfram 0x20 - move 4 - wait 1 - playfram 0x40 - move 4 - wait 1 - playfram 0x60 - move 4 - wait 1 - playfram 0x80 - move 4 - wait 1 - playfram 0xA0 - move 4 - wait 1 - playfram 0xC0 - move 4 - wait 1 - playfram 0xE0 - move 4 - wait 1 - playfram 0x100 - move 4 + move 6 wait 1 playfram 0x120 - move 4 + move 6 wait 1 playfram 0x140 - move 4 + move 6 wait 1 playfram 0x160 - move 4 + move 6 wait 1 playfram 0x180 - move 4 + move 6 wait 1 playfram 0x1A0 - move 4 + move 6 wait 1 playfram 0x1C0 - move 4 + move 6 wait 1 playfram 0x1E0 - move 4 + move 6 wait 1 playfram 0x200 + move 6 + wait 1 + playfram 0x220 + move 6 + wait 1 goto AtreusWalking AtreusWarpIn: @@ -7699,7 +7731,7 @@ AirAttkInit AmaranthGndAttkInit Unused1 SkryrokorLocal00 GndAttkRpt AmaranthGndAttkRpt AirAttkRpt AmaranthGndAttkRpt -CastSpell AmaranthCastSpell +CastSpell [NONE] GndAttkToIdle AmaranthGndAttkToIdle AirAttkToIdle AmaranthGndAttkToIdle Unused2 [NONE] @@ -7718,7 +7750,7 @@ WarpIn AmaranthWarpIn # ----------------------------------------------------------------------------- # AmaranthInit: - imgul 1175 0 -3 # Amaranth Shadow (cm\protoss\amaranth-shad.grp) + imgul 1175 0 0 # Amaranth Shadow (cm\protoss\amaranth-shadow.grp) playfram 0x00 wait 2 goto SkryrokorLocal00 @@ -7737,91 +7769,68 @@ AmaranthDeath: end AmaranthGndAttkInit: - playfram 0x11 - wait 1 - playfram 0x22 - wait 1 - playfram 0x33 + playfram 0x20 wait 1 goto AmaranthGndAttkRpt AmaranthGndAttkRpt: - nobrkcodestart - playfram 0x44 - wait 1 - playfram 0x55 - playsndbtwn 1231 1234 # Amaranth weaponfire 01, 02, 03, 04 - attackmelee 4 3063 3064 3065 3066 # Amaranth weaponhit 01, 02, 03, 04 - wait 1 - playfram 0x66 - wait 1 - playfram 0x77 - attackmelee 4 3063 3064 3065 3066 # Amaranth weaponhit 01, 02, 03, 04 - wait 1 - playfram 0x88 - nobrkcodeend - wait 1 - playfram 0x11 - wait 1 - gotorepeatattk - goto AmaranthGndAttkToIdle - -AmaranthCastSpell: - playfram 0x11 - wait 1 - playfram 0x22 - wait 1 - playfram 0x33 - wait 1 - nobrkcodestart - playfram 0x44 - wait 1 - playfram 0x55 - playsnd 111 - castspell - sigorder 2 - attackwith 1 - wait 1 - playfram 0x66 - wait 1 - playfram 0x77 - wait 1 - playfram 0x88 - nobrkcodeend - wait 1 - playfram 0x11 - wait 1 - gotorepeatattk - goto SkryrokorLocal00 + wait 1 + nobrkcodestart + playfram 0x40 + wait 1 + playfram 0x60 + wait 1 + playfram 0x80 + playsndbtwn 1231 1234 # Amaranth weaponfire 01, 02, 03, 04 + attackmelee 4 3063 3064 3065 3066 # Amaranth weaponhit 01, 02, 03, 04 + wait 1 + playfram 0xA0 + wait 1 + playfram 0xC0 + attackmelee 4 3063 3064 3065 3066 # Amaranth weaponhit 01, 02, 03, 04 + wait 1 + playfram 0xE0 + nobrkcodeend + wait 1 + playfram 0x100 + wait 1 + playfram 0x120 + wait 1 + playfram 0x140 + wait 1 + playfram 0x160 + wait 1 + playfram 0x20 + wait 1 + gotorepeatattk + ignorerest + goto AmaranthGndAttkToIdle AmaranthWalking: - move 4 - wait 1 - playfram 0x99 - move 4 - wait 1 - playfram 0xaa - move 4 - wait 1 - playfram 0xbb - move 4 - wait 1 - playfram 0xcc - move 4 - wait 1 - playfram 0xdd - move 4 - wait 1 - playfram 0xee - move 4 - wait 1 - playfram 0xff - move 4 - wait 1 - playfram 0x110 - move 5 - wait 1 - playfram 0x121 - goto AmaranthWalking + move 4 + wait 1 + playfram 0x180 + move 4 + wait 1 + playfram 0x1A0 + move 4 + wait 1 + playfram 0x1C0 + move 4 + wait 1 + playfram 0x1E0 + move 4 + wait 1 + playfram 0x200 + move 4 + wait 1 + playfram 0x220 + move 4 + wait 1 + playfram 0x240 + move 4 + wait 1 + playfram 0x260 + goto AmaranthWalking AmaranthWalkingToIdle: playfram 0x00 @@ -11558,34 +11567,49 @@ ArtisanGndAttkInit: ArtisanWalking: wait 1 + move 4 playfram 0x20 wait 1 + move 4 playfram 0x40 wait 1 + move 4 playfram 0x60 wait 1 + move 4 playfram 0x80 wait 1 + move 4 playfram 0xA0 wait 1 + move 4 playfram 0xC0 wait 1 + move 4 playfram 0xE0 wait 1 + move 4 playfram 0x100 wait 1 + move 4 playfram 0x120 wait 1 + move 4 playfram 0x140 wait 1 + move 4 playfram 0x160 wait 1 + move 4 playfram 0x180 wait 1 + move 4 playfram 0x1A0 wait 1 + move 4 playfram 0x1C0 wait 1 + move 4 playfram 0x00 goto ArtisanWalking @@ -12812,10 +12836,14 @@ WarpIn ServitorWarpIn # ----------------------------------------------------------------------------- # ServitorInit: - imgul 1661 0 7 # Servitor shadow (cm\protoss\servitor.grp) + imgulnextid 0 0 # Servitor shadow (cm\protoss\servitor.grp) goto InfestedTerranWalkingToIdle ServitorWalkingToIdle: + playfram 0x00 + goto ServitorHover + +ServitorHover: setvertpos 0 wait 8 setvertpos 0 @@ -12824,7 +12852,7 @@ ServitorWalkingToIdle: wait 8 setvertpos 0 wait 8 - goto ServitorWalkingToIdle + goto ServitorHover ServitorDeath: playsnd 533 # Protoss\Aurora\PScDth00.WAV @@ -12846,7 +12874,7 @@ ServitorUnused1: goto ServitorWalkingToIdle ServitorGndAttkInit: - playfram 0x11 + playfram 0x20 playsndbtwn 2167 2171 # Servitor weaponfire 01, 02, 03, 04, 05 attackwith 1 wait 2 @@ -12857,7 +12885,18 @@ ServitorGndAttkInit: ServitorWalking: setvertpos 0 - goto InfestedTerranWalkingToIdle + goto ServitorWalkingLoop + +ServitorWalkingLoop: + playfram 0x40 + wait 1 + playfram 0x60 + wait 1 + playfram 0x80 + wait 1 + playfram 0x60 + wait 1 + goto ServitorWalkingLoop ServitorWarpIn: imgol 2135 0 0 # Servitor Warp Flash (cm\protoss\servitor.grp) @@ -14821,6 +14860,7 @@ CicatusInit: CicatusGndAttkInit: playfram 0x100 CicatusGndAttkRpt: + playsndbtwn 3355 3357 # Cicatus weaponfire 01, 02, 03 playfram 0x120 nobrkcodestart wait 1 @@ -15818,4 +15858,119 @@ PathlightWalking: PathlightWarpIn: imgol 143 0 0 # Pathlight Warp Flash (cm\protoss\panoptus.grp) - goto PathlightWalkingToIdle \ No newline at end of file + goto PathlightWalkingToIdle + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 1174 Cabalist (Starbound) (cm\f-p\cabalist-starbound.grp) +.headerstart +IsId 736 +Type 21 +Init CabalistStarboundInit +Death CabalistStarboundDeath +GndAttkInit CabalistStarboundGndAttkInit +AirAttkInit CabalistStarboundGndAttkInit +Unused1 SkryrokorLocal00 +GndAttkRpt CabalistStarboundGndAttkRpt +AirAttkRpt CabalistStarboundGndAttkRpt +CastSpell [NONE] +GndAttkToIdle CabalistStarboundGndAttkToIdle +AirAttkToIdle CabalistStarboundGndAttkToIdle +Unused2 [NONE] +Walking CabalistStarboundWalking +WalkingToIdle CabalistStarboundWalkingToIdle +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt [NONE] +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn CabalistStarboundWarpIn +.headerend +# ----------------------------------------------------------------------------- # + +CabalistStarboundInit: + imgulnextid 0 0 # Cabalist (Starbound) Shadow (cm\f-p\cabalist-starbound-shadow.grp) + playfram 0x00 + wait 2 + goto SkryrokorLocal00 + +CabalistStarboundGndAttkToIdle: + playfram 0x00 + wait 2 + goto SkryrokorLocal00 + +CabalistStarboundDeath: + playsnd 741 # Protoss\DARKTEMPLAR\PDTDth00.WAV + imgol 153 0 0 # Zealot Death (protoss\zealot.grp) + wait 1 + lowsprul 847 0 0 # Protoss Unit Rubble Small + wait 1 + end + +CabalistStarboundGndAttkInit: + playfram 0x20 + wait 1 + goto CabalistStarboundGndAttkRpt +CabalistStarboundGndAttkRpt: + nobrkcodestart + playfram 0x60 + wait 1 + playfram 0x80 + wait 1 + playfram 0xA0 + attackmelee 1 111 # Bullet\UZeFir00.wav + wait 1 + playfram 0xC0 + wait 1 + playfram 0xA0 + wait 1 + playfram 0x80 + nobrkcodeend + wait 1 + playfram 0x60 + wait 1 + playfram 0x20 + wait 1 + gotorepeatattk + goto CabalistStarboundGndAttkToIdle + +CabalistStarboundWalking: + move 5 + wait 1 + playfram 0x120 + move 5 + wait 1 + playfram 0x140 + move 5 + wait 1 + playfram 0x160 + move 5 + wait 1 + playfram 0x180 + move 5 + wait 1 + playfram 0x1A0 + move 5 + wait 1 + playfram 0x1C0 + move 5 + wait 1 + playfram 0x1E0 + move 5 + wait 1 + playfram 0x200 + move 5 + wait 1 + playfram 0x220 + goto CabalistStarboundWalking + +CabalistStarboundWalkingToIdle: + playfram 0x00 + goto SkryrokorLocal00 + +CabalistStarboundWarpIn: + imgol 2123 0 0 # CabalistStarbound Warp Flash (cm\protoss\cabalist-starbound.grp) + goto CabalistStarboundWalkingToIdle \ No newline at end of file diff --git a/mpq/scripts/iscript_terran.bin b/mpq/scripts/iscript_terran.bin index ce6d2b1..253acae 100644 Binary files a/mpq/scripts/iscript_terran.bin and b/mpq/scripts/iscript_terran.bin differ diff --git a/mpq/scripts/iscript_terran.txt b/mpq/scripts/iscript_terran.txt index 0c51d63..079aaa8 100644 --- a/mpq/scripts/iscript_terran.txt +++ b/mpq/scripts/iscript_terran.txt @@ -101,7 +101,7 @@ Init CivilianInit Death CivilianDeath GndAttkInit [NONE] AirAttkInit [NONE] -Unused1 [NONE] +Unused1 SkryrokorLocal00 GndAttkRpt [NONE] AirAttkRpt [NONE] CastSpell [NONE] @@ -207,7 +207,7 @@ TrojanDeath: TrojanWalking: setvertpos 0 - imgol 225 0 5 # Trojan Engines (thingy\tdrGlow.grp) + imgol 225 0 0 # Trojan Engines (thingy\tdrGlow.grp) goto SkryrokorLocal00 # ----------------------------------------------------------------------------- # @@ -392,7 +392,7 @@ HarakanWalking: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 228 Eidolon (terran\ghost.grp) +# 228 Eidolon (terran\eidolon.grp) .headerstart IsId 70 Type 13 @@ -414,9 +414,9 @@ SpecialState1 EidolonSpecialState1 # ----------------------------------------------------------------------------- # EidolonInit: - imgul 229 0 0 # Eidolon Shadow (terran\tghShad.grp) + imgulnextid 0 0 # Eidolon Shadow (terran\eidolon-shadow.grp) EidolonWalkingToIdle: - playfram 0x33 + playfram 0x60 EidolonLocal00: wait 63 randcondjmp 25 EidolonLocal01 @@ -426,9 +426,9 @@ EidolonLocal00: EidolonLocal01: playfram 0x00 wait 1 - playfram 0x11 + playfram 0x20 wait 1 - playfram 0x22 + playfram 0x40 randcondjmp 192 EidolonLocal03 turnccwise 2 wait 3 @@ -461,7 +461,7 @@ EidolonLocal01: goto EidolonLocal04 EidolonLocal04: - playfram 0x11 + playfram 0x20 wait 1 playfram 0x00 wait 1 @@ -469,20 +469,20 @@ EidolonLocal04: EidolonLocal03: wait 13 - playfram 0x11 + playfram 0x20 wait 1 playfram 0x00 wait 1 goto EidolonWalkingToIdle EidolonLocal02: - playfram 0x44 + playfram 0x80 wait 1 - playfram 0x55 + playfram 0xA0 wait 1 turnrand 3 wait 1 - playfram 0x44 + playfram 0x80 wait 1 goto EidolonWalkingToIdle @@ -495,21 +495,21 @@ EidolonUnused1: nobrkcodestart setfldirect 0 playsnd 1166 # Eidolon revive 01 - playfram 228 + playfram 423 wait 2 - playfram 227 + playfram 422 wait 2 - playfram 226 + playfram 421 wait 2 - playfram 225 + playfram 420 wait 2 - playfram 224 + playfram 419 wait 2 - playfram 223 + playfram 418 wait 2 - playfram 222 + playfram 417 wait 2 - playfram 221 + playfram 416 wait 2 setfldirect 12 nobrkcodeend @@ -518,18 +518,18 @@ EidolonUnused1: EidolonGndAttkInit: playfram 0x00 wait 1 - playfram 0x11 + playfram 0x20 wait 1 sigorder 32 - playfram 0x22 + playfram 0x40 wait 12 EidolonGndAttkRpt: wait 1 nobrkcodestart attack - playfram 0xcc + playfram 0x180 wait 1 - playfram 0x22 + playfram 0x40 nobrkcodeend gotorepeatattk ignorerest @@ -545,9 +545,9 @@ EidolonCastSpell: wait 1 playsnd 240 # Terran\GHOST\TGhLkd00.wav castspell - playfram 0xcc + playfram 0x180 wait 2 - playfram 0x22 + playfram 0x40 nobrkcodeend gotorepeatattk sigorder 2 @@ -556,45 +556,45 @@ EidolonCastSpell: EidolonWalking: move 4 wait 1 - playfram 0x44 + playfram 0x80 move 4 wait 1 - playfram 0x55 + playfram 0xA0 move 4 wait 1 - playfram 0x66 + playfram 0xC0 move 4 wait 1 - playfram 0x77 + playfram 0xE0 move 4 wait 1 - playfram 0x88 + playfram 0x100 move 4 wait 1 - playfram 0x99 + playfram 0x120 move 4 wait 1 - playfram 0xaa + playfram 0x140 move 4 wait 1 - playfram 0xbb + playfram 0x160 move 4 wait 1 - playfram 0x33 + playfram 0x60 goto EidolonWalking EidolonSpecialState1: playfram 0x00 wait 1 - playfram 0x11 + playfram 0x20 wait 1 - playfram 0x22 + playfram 0x40 wait 1 goto SkryrokorLocal00 # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 231 Eidolon Death (terran\ghost.grp) +# 231 Eidolon Death (terran\eidolon.grp) .headerstart IsId 72 Type 1 @@ -605,23 +605,23 @@ Death Generic_Wait1End EidolonDeathInit: setfldirect 0 - playfram 0xdd - wait 2 - playfram 222 - wait 2 - playfram 223 - wait 2 - playfram 224 - wait 2 - playfram 225 - wait 2 - playfram 226 - wait 2 - playfram 227 - wait 2 - playfram 228 - wait 2 - lowsprul 230 0 0 # Eidolon Remnants (terran\tghDeath.grp) + playfram 416 + wait 2 + playfram 417 + wait 2 + playfram 418 + wait 2 + playfram 419 + wait 2 + playfram 420 + wait 2 + playfram 421 + wait 2 + playfram 422 + wait 2 + playfram 423 + wait 2 + lowsprul 230 0 0 # Eidolon Remnants (terran\eidolon-remains.grp) wait 1 end @@ -4101,6 +4101,9 @@ ReservoirDeath: playsnd 7 # Misc\ExploLrg.wav sprol 272 0 0 # Building Explosion (Large) (thingy\tBangX.grp) wait 3 + liftoffcondjmp LiftedTerranStructureDeath_Small + lowsprul 273 0 0 # Terran Building Rubble (Small) (thingy\RubbleS.grp) + wait 1 end ReservoirSpecialState1: @@ -6709,7 +6712,7 @@ GenericRemnantsFourDeath: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 939 Valkyrie (terran\bomber.grp) +# 939 Valkyrie (terran\valkyrie.grp) .headerstart IsId 362 Type 12 @@ -6731,7 +6734,7 @@ SpecialState1 [NONE] # ----------------------------------------------------------------------------- # ValkyrieInit: - imgul 940 0 42 # Valkyrie Shadow (terran\bomber.grp) + imgulnextid 0 42 # Valkyrie Shadow (terran\valkyrie.grp) playfram 0x00 goto TrojanLocal00 @@ -6761,7 +6764,7 @@ ValkyrieAirAttkInit: ValkyrieWalking: setvertpos 0 - imgol 941 0 0 # Valkyrie Engines (thingy\tbmGlow.grp) + imgol 941 0 0 # Valkyrie Engines (terran\valkyrie-engine.grp) sigorder 64 goto SkryrokorLocal00 @@ -8572,7 +8575,7 @@ AnchorGroundedInit: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 1900 Goska (terran\ghost.grp) +# 1900 Goska (terran\eidolon.grp) .headerstart IsId 791 Type 13 @@ -8594,38 +8597,38 @@ SpecialState1 EidolonSpecialState1 # ----------------------------------------------------------------------------- # GoskaInit: - imgul 1901 0 0 # Goska Shadow (terran\tghShad.grp) + imgulnextid 0 0 # Goska Shadow (terran\eidolon-shadow.grp) goto EidolonWalkingToIdle GoskaGndAttkInit: playfram 0x00 wait 1 - playfram 0x11 + playfram 0x20 wait 1 - playfram 0x22 + playfram 0x40 GoskaGndAttkRpt: wait 1 nobrkcodestart playsndbtwn 3212 3214 # Goska Weaponfire 01, 02, 03 attack - playfram 0xcc + playfram 0x180 wait 1 - playfram 0x22 + playfram 0x40 wait 1 attack - playfram 0xcc + playfram 0x180 wait 1 - playfram 0x22 + playfram 0x40 wait 1 attack - playfram 0xcc + playfram 0x180 wait 1 - playfram 0x22 + playfram 0x40 wait 1 attack - playfram 0xcc + playfram 0x180 wait 1 - playfram 0x22 + playfram 0x40 wait 1 nobrkcodeend gotorepeatattk @@ -9968,13 +9971,27 @@ TalosGndAttkRpt: TalosWalking: setvertpos 0 playfram 0x20 - wait 2 + move 4 + wait 1 + move 4 + wait 1 playfram 0x40 - wait 2 + move 4 + wait 1 + move 4 + wait 1 playfram 0x60 - wait 2 + move 4 + wait 1 + move 4 + wait 1 imgol 1079 0 0 # Talos Engines (cm\terran\talos-engine.grp) - goto SkryrokorLocal00 + goto TalosWalkingLoop + +TalosWalkingLoop: + move 4 + wait 1 + goto TalosWalkingLoop TalosWalkingToIdle: playfram 0x60 @@ -12596,7 +12613,7 @@ SirenDeath: playsnd 353 # Terran\VULTURE\TVuDth00.WAV imgol 332 0 0 # Explosion2 (Small) (thingy\tBangS.grp) wait 2 - lowsprul 230 0 0 # Eidolon Remnants (terran\tghDeath.grp) + lowsprul 845 0 0 # Terran Unit Rubble Small wait 1 wait 3 end @@ -13332,12 +13349,12 @@ StrigaLocal03: goto StrigaWalkingToIdle StrigaDeath: - playsnd 238 # Terran\Ghost\TGhDth00.wav + playsndbtwn 4258 4260 # Striga death 01, 02, 03 setfldirect 0 playfram 0x00 imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) wait 2 - lowsprul 230 0 0 # Eidolon Remnants (terran\tghDeath.grp) + lowsprul 845 0 0 # Terran Unit Rubble Small wait 1 end @@ -15857,9 +15874,9 @@ CyprianDeath: CyprianGndAttkInit: playfram 0x120 wait 1 - sigorder 32 playfram 0x140 wait 1 + sigorder 32 playfram 0x160 wait 6 CyprianGndAttkRpt: @@ -16204,7 +16221,7 @@ SevenstepDeath: playsndbtwn 276 277 # Maverick death 01, 02 imgol 332 0 0 # Explosion2 (Small) (thingy\tBangS.grp) wait 2 - lowsprul 230 0 0 # Eidolon Remnants (terran\tghDeath.grp) + lowsprul 845 0 0 # Terran Unit Rubble Small wait 1 end @@ -17293,6 +17310,9 @@ WellboreDeath: playsnd 7 # Misc\ExploLrg.wav sprol 272 0 0 # Building Explosion (Large) (thingy\tBangX.grp) wait 3 + liftoffcondjmp LiftedTerranStructureDeath_Small + lowsprul 273 0 0 # Terran Building Rubble (Small) (thingy\RubbleS.grp) + wait 1 end WellboreSpecialState1: @@ -19710,7 +19730,7 @@ MadrigalHecatonImperiosoTurretGndAttkInit: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 2011 Eidolon (Nydus Trinity) (cm\faction-t\eidolon-nydus.grp) +# 2011 Eidolon (Nydus Trinity) (cm\f-t\eidolon-nydus.grp) .headerstart IsId 835 Type 13 @@ -19732,9 +19752,9 @@ SpecialState1 EidolonNydusSpecialState1 # ----------------------------------------------------------------------------- # EidolonNydusInit: - imgul 2012 0 0 # Eidolon (Nydus) Shadow (terran\tghShad.grp) + imgulnextid 0 0 # Eidolon (Nydus) Shadow (cm\f-t\eidolon-nydus-shadow.grp) EidolonNydusWalkingToIdle: - playfram 0x33 + playfram 0x60 EidolonNydusLocal00: wait 63 randcondjmp 25 EidolonNydusLocal01 @@ -19744,9 +19764,9 @@ EidolonNydusLocal00: EidolonNydusLocal01: playfram 0x00 wait 1 - playfram 0x11 + playfram 0x20 wait 1 - playfram 0x22 + playfram 0x40 randcondjmp 192 EidolonNydusLocal03 turnccwise 2 wait 3 @@ -19779,7 +19799,7 @@ EidolonNydusLocal01: goto EidolonNydusLocal04 EidolonNydusLocal04: - playfram 0x11 + playfram 0x20 wait 1 playfram 0x00 wait 1 @@ -19787,20 +19807,20 @@ EidolonNydusLocal04: EidolonNydusLocal03: wait 13 - playfram 0x11 + playfram 0x20 wait 1 playfram 0x00 wait 1 goto EidolonNydusWalkingToIdle EidolonNydusLocal02: - playfram 0x44 + playfram 0x80 wait 1 - playfram 0x55 + playfram 0xA0 wait 1 turnrand 3 wait 1 - playfram 0x44 + playfram 0x80 wait 1 goto EidolonNydusWalkingToIdle @@ -19812,22 +19832,22 @@ EidolonNydusUnused1: wait 1 nobrkcodestart setfldirect 0 - playsnd 1166 # Eidolon revive 01 - playfram 228 + playsnd 1166 # EidolonNydus revive 01 + playfram 423 wait 2 - playfram 227 + playfram 422 wait 2 - playfram 226 + playfram 421 wait 2 - playfram 225 + playfram 420 wait 2 - playfram 224 + playfram 419 wait 2 - playfram 223 + playfram 418 wait 2 - playfram 222 + playfram 417 wait 2 - playfram 221 + playfram 416 wait 2 setfldirect 12 nobrkcodeend @@ -19836,16 +19856,16 @@ EidolonNydusUnused1: EidolonNydusGndAttkInit: playfram 0x00 wait 1 - playfram 0x11 + playfram 0x20 wait 1 - playfram 0x22 + playfram 0x40 EidolonNydusGndAttkRpt: wait 1 nobrkcodestart attack - playfram 0xcc + playfram 0x180 wait 1 - playfram 0x22 + playfram 0x40 nobrkcodeend gotorepeatattk ignorerest @@ -19861,9 +19881,9 @@ EidolonNydusCastSpell: wait 1 playsnd 240 # Terran\GHOST\TGhLkd00.wav castspell - playfram 0xcc + playfram 0x180 wait 2 - playfram 0x22 + playfram 0x40 nobrkcodeend gotorepeatattk sigorder 2 @@ -19872,39 +19892,39 @@ EidolonNydusCastSpell: EidolonNydusWalking: move 4 wait 1 - playfram 0x44 + playfram 0x80 move 4 wait 1 - playfram 0x55 + playfram 0xA0 move 4 wait 1 - playfram 0x66 + playfram 0xC0 move 4 wait 1 - playfram 0x77 + playfram 0xE0 move 4 wait 1 - playfram 0x88 + playfram 0x100 move 4 wait 1 - playfram 0x99 + playfram 0x120 move 4 wait 1 - playfram 0xaa + playfram 0x140 move 4 wait 1 - playfram 0xbb + playfram 0x160 move 4 wait 1 - playfram 0x33 + playfram 0x60 goto EidolonNydusWalking EidolonNydusSpecialState1: playfram 0x00 wait 1 - playfram 0x11 + playfram 0x20 wait 1 - playfram 0x22 + playfram 0x40 wait 1 goto SkryrokorLocal00 @@ -20375,7 +20395,7 @@ VultureHecatonSpecialState1: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 2226 Quadriga (cm\faction-t\quadriga.grp) +# 2226 Quadriga (cm\f-t\quadriga.grp) .headerstart IsId 840 Type 12 @@ -20397,7 +20417,7 @@ SpecialState1 [NONE] # ----------------------------------------------------------------------------- # QuadrigaInit: - imgulnextid 0 42 # Quadriga Shadow (cm\faction-t\quadriga.grp) + imgulnextid 0 42 # Quadriga Shadow (cm\f-t\quadriga.grp) playfram 0x00 goto TrojanLocal00 @@ -20427,7 +20447,7 @@ QuadrigaAirAttkInit: QuadrigaWalking: setvertpos 0 - imgol 2228 0 0 # Quadriga Engines (cm\faction-t\quadriga-engine.grp) + imgol 2228 0 0 # Quadriga Engines (cm\f-t\quadriga-engine.grp) sigorder 64 goto SkryrokorLocal00 @@ -20807,4 +20827,405 @@ CivilianDeathInit: wait 2 lowsprul 1158 0 0 # Civilian Remnants (terran\civilian-remains.grp) wait 1 - end \ No newline at end of file + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 226 Camazotz (cm\f-t\camazotz.grp) +.headerstart +IsId 847 +Type 12 +Init CamazotzInit +Death CamazotzDeath +GndAttkInit CamazotzGndAttkInit +AirAttkInit [NONE] +Unused1 CamazotzUnused1 +GndAttkRpt CamazotzGndAttkRpt +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle CamazotzGndAttkToIdle +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking CamazotzWalking +WalkingToIdle CamazotzWalkingToIdle +SpecialState1 [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +CamazotzInit: + imgulnextid 0 0 # Camazotz Shadow (cm\f-t\camazotz-shadow.grp) +CamazotzWalkingToIdle: + playfram 0x40 +CamazotzLocal00: + wait 63 + randcondjmp 25 CamazotzLocal01 + randcondjmp 128 CamazotzLocal02 + goto CamazotzLocal00 + +CamazotzLocal01: + playfram 0x00 + wait 1 + randcondjmp 192 CamazotzLocal03 + turnccwise 2 + wait 3 + turnccwise 2 + wait 3 + turnccwise 2 + wait 3 + turnccwise 2 + wait 3 + turnccwise 2 + wait 3 + wait 6 + turncwise 2 + wait 3 + turncwise 2 + wait 3 + turncwise 2 + wait 3 + turncwise 2 + wait 3 + turncwise 2 + wait 3 + wait 6 + turnccwise 2 + wait 3 + turnccwise 2 + wait 3 + turnccwise 2 + wait 3 + goto CamazotzWalkingToIdle + +CamazotzLocal03: + wait 13 + goto CamazotzWalkingToIdle + +CamazotzLocal02: + playfram 0x60 + wait 1 + playfram 0x80 + wait 1 + turnrand 3 + wait 1 + playfram 0x60 + wait 1 + goto CamazotzWalkingToIdle + +CamazotzDeath: + playsndbtwn 296 298 # Terran\Firebat\TFBDth00.WAV | Terran\Firebat\TFBDth02.WAV + imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) + imgol 332 0 0 # Explosion2 (Small) (thingy\tBangS.grp) + setfldirect 0 +# playfram 170 + wait 2 +# playfram 171 + wait 2 +# playfram 172 + wait 2 +# playfram 173 + wait 2 +# playfram 174 +# wait 2 +# playfram 175 +# wait 2 +# playfram 176 +# wait 2 +# playfram 177 +# wait 2 + lowsprul 615 0 0 # Camazotz Remnants (cm\terran\camazotz-remnants.grp) + wait 1 + end + +CamazotzUnused1: + wait 1 + nobrkcodestart + setfldirect 0 + playsndbtwn 1163 1165 # Camazotz revive 01, 02, 03 + sprol 742 0 0 # Explosion Small Reversed +# playfram 176 + wait 2 +# playfram 175 + wait 2 +# playfram 174 + wait 2 +# playfram 173 + wait 2 +# playfram 172 + wait 2 +# playfram 171 + wait 2 +# playfram 170 + wait 2 + setfldirect 12 + nobrkcodeend + goto CamazotzWalkingToIdle + +CamazotzGndAttkInit: + playfram 0x00 +CamazotzGndAttkRpt: + wait 1 + nobrkcodestart + playsndbtwn 4261 4263 # Camazotz weaponfire 01, 02, 03 + imgoluselo 2056 0 0 # Green projection attack + playfram 0x20 + sigorder 32 + wait 1 + attkshiftproj 52 + sigorder 32 + wait 1 + attkshiftproj 80 + sigorder 32 + wait 5 + playfram 0x00 + wait 2 + ignorerest +CamazotzGndAttkToIdle: + goto CamazotzWalkingToIdle + +CamazotzWalking: + move 4 + wait 1 + playfram 0x60 + move 4 + wait 1 + playfram 0x80 + move 4 + wait 1 + playfram 0xA0 + move 4 + wait 1 + playfram 0xC0 + move 4 + wait 1 + playfram 0xE0 + move 4 + wait 1 + playfram 0x100 + move 4 + wait 1 + playfram 0x120 + move 4 + wait 1 + playfram 0x40 + goto CamazotzWalking + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 1149 Arquebus (cm\f-t\arquebus.grp) +.headerstart +IsId 848 +Type 12 +Init ArquebusInit +Death ArquebusDeath +GndAttkInit ArquebusGndAttkInit +AirAttkInit ArquebusGndAttkInit +Unused1 ArquebusUnused1 +GndAttkRpt ArquebusGndAttkInit +AirAttkRpt ArquebusGndAttkInit +CastSpell [NONE] +GndAttkToIdle InfestedTerranWalkingToIdle +AirAttkToIdle InfestedTerranWalkingToIdle +Unused2 [NONE] +Walking ArquebusWalking +WalkingToIdle InfestedTerranWalkingToIdle +SpecialState1 [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +ArquebusInit: + imgulnextid 0 0 # Arquebus shadow (cm\f-t\arquebus-shadow.grp) + goto InfestedTerranWalkingToIdle + +ArquebusDeath: + playsndbtwn 3067 3073 # Arquebus death 01, 02, 03, 04, 05, 06, 07 + imgol 333 0 0 # Explosion2 (Medium) (thingy\tBangL.grp) + wait 3 + lowsprul 273 0 0 # Terran Building Rubble Small +# lowsprul 816 0 0 # Arquebus Remains + wait 1 + end + +ArquebusUnused1: + wait 1 + nobrkcodestart + playsnd 1700 + sprol 744 0 0 # Large Orange Explosion Reversed + wait 12 + setfldirect 13 + nobrkcodeend + goto InfestedTerranWalkingToIdle + +ArquebusGndAttkInit: + wait 1 + nobrkcodestart + playfram 0x220 + playsndbtwn 2347 2350 # Arquebus weapon fire 01, 02, 03, 04 + attackwith 1 + wait 1 + playfram 0x00 + nobrkcodeend + gotorepeatattk + ignorerest + goto InfestedTerranWalkingToIdle + +ArquebusWalking: + playfram 0xA0 + move 3 + wait 1 + playfram 0xC0 + move 3 + wait 1 + playfram 0xE0 + move 3 + wait 1 + playfram 0x100 + move 3 + wait 1 + playfram 0x120 + move 3 + wait 1 + playfram 0x140 + move 3 + wait 1 + playfram 0x160 + move 3 + wait 1 + playfram 0x180 + move 3 + wait 1 + playfram 0x1A0 + move 3 + wait 1 + playfram 0x1C0 + move 3 + wait 1 + playfram 0x1E0 + move 3 + wait 1 + playfram 0x20 + move 3 + wait 1 + playfram 0x40 + move 3 + wait 1 + playfram 0x60 + move 3 + wait 1 + playfram 0x80 + move 3 + wait 1 + goto ArquebusWalking + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 939 Valkyrie (Hecaton) (cm\f-t\valkyrie-hecaton.grp) +.headerstart +IsId 849 +Type 12 +Init ValkyrieHecatonInit +Death ValkyrieHecatonDeath +GndAttkInit ValkyrieHecatonAirAttkInit +AirAttkInit ValkyrieHecatonAirAttkInit +Unused1 SkryrokorLocal00 +GndAttkRpt ValkyrieHecatonAirAttkInit +AirAttkRpt ValkyrieHecatonAirAttkInit +CastSpell [NONE] +GndAttkToIdle TrojanLocal00 +AirAttkToIdle TrojanLocal00 +Unused2 [NONE] +Walking ValkyrieHecatonWalking +WalkingToIdle ValkyrieHecatonWalkingToIdle +SpecialState1 [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +ValkyrieHecatonInit: + imgul 2457 0 42 # Valkyrie (Hecaton) Shadow (cm\f-t\valkyrie-hecaton.grp) + playfram 0x00 + goto TrojanLocal00 + +ValkyrieHecatonDeath: + playsnd 1040 # Terran\FRIGATE\TVkDth00.WAV + imgol 332 0 0 # Explosion2 (Small) (thingy\tBangS.grp) + wait 3 + lowsprul 844 0 42 # Terran Unit Rubble Medium + wait 1 + end + +ValkyrieHecatonAirAttkInit: + wait 2 + nobrkcodestart + attackwith 2 + wait 6 + attackwith 2 + wait 6 + attackwith 2 + wait 6 + attackwith 2 + wait 6 + attackwith 2 + nobrkcodeend + gotorepeatattk + goto TrojanLocal00 + +ValkyrieHecatonWalking: + setvertpos 0 + imgol 2458 0 0 # Valkyrie (Hecaton) Engines (cm\f-t\valkyrie-hecaton-engine.grp) + sigorder 64 + goto SkryrokorLocal00 + +ValkyrieHecatonWalkingToIdle: + orderdone 64 + goto TrojanLocal00 + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 1154 Cyclops (Futurist) (cm\f-t\cyclops-futurist.grp) +.headerstart +IsId 850 +Type 12 +Init CyclopsFuturistInit +Death CyclopsDeath +GndAttkInit CyclopsFuturistGndAttkInit +AirAttkInit CyclopsFuturistGndAttkInit +Unused1 CyclopsUnused1 +GndAttkRpt CyclopsFuturistGndAttkRpt +AirAttkRpt CyclopsFuturistGndAttkRpt +CastSpell [NONE] +GndAttkToIdle CyclopsFuturistGndAttkToIdle +AirAttkToIdle CyclopsFuturistGndAttkToIdle +Unused2 [NONE] +Walking CyclopsWalking +WalkingToIdle CyclopsWalkingToIdle +SpecialState1 [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +CyclopsFuturistInit: + imgulnextid 0 0 # Cyclops (Futurist) shadow (cm\f-t\cyclops-futurist-shadow.grp) + goto CyclopsWalkingToIdle + +CyclopsFuturistGndAttkInit: + playfram 0x00 +CyclopsFuturistGndAttkRpt: + wait 1 + nobrkcodestart + playfram 0x220 + playsndbtwn 4295 4298 # CyclopsFuturist weapon fire 01, 02, 03, 04 + attack + wait 1 + playfram 0x240 + wait 1 + playfram 0x260 + wait 1 + playfram 0x280 + wait 1 + playfram 0x00 + wait 1 + nobrkcodeend + gotorepeatattk + ignorerest +CyclopsFuturistGndAttkToIdle: + playfram 0x00 + wait 1 + goto CyclopsWalkingToIdle \ No newline at end of file diff --git a/mpq/scripts/iscript_zerg.bin b/mpq/scripts/iscript_zerg.bin index 50eb510..09c5d20 100644 Binary files a/mpq/scripts/iscript_zerg.bin and b/mpq/scripts/iscript_zerg.bin differ diff --git a/mpq/scripts/iscript_zerg.txt b/mpq/scripts/iscript_zerg.txt index 38019e4..f6772df 100644 --- a/mpq/scripts/iscript_zerg.txt +++ b/mpq/scripts/iscript_zerg.txt @@ -1175,7 +1175,7 @@ Enable [NONE] # ----------------------------------------------------------------------------- # HydraliskInit: - imgul 30 0 0 # Hydralisk Shadow (zerg\zhyShad.grp) + imgulnextid 0 0 # Hydralisk Shadow (zerg\zhyShad.grp) HydraliskWalkingToIdle: playfram 0x55 HydraliskLocal00: @@ -1261,8 +1261,6 @@ HydraliskDeath: wait 2 playfram 295 wait 2 - playfram 296 - wait 2 lowsprul 147 0 0 # Hydralisk Remnants (zerg\zhyDeath.grp) wait 1 end @@ -1307,6 +1305,8 @@ HydraliskGndAttkRpt: wait 1 playfram 0x33 wait 1 + playfram 0x22 + wait 1 nobrkcodeend gotorepeatattk ignorerest @@ -2346,7 +2346,7 @@ UltrokorUnBurrow: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 054 Zethrokor (zerg\zergling.grp) +# 054 Zethrokor (zerg\zethrokor.grp) .headerstart IsId 31 Type 26 @@ -2382,9 +2382,9 @@ Enable [NONE] # ----------------------------------------------------------------------------- # ZethrokorInit: - imgul 55 0 -1 # Zethrokor Shadow (zerg\zzeShad.grp) + imgul 55 0 0 # Zethrokor Shadow (zerg\zethrokor-shadow.grp) ZethrokorGndAttkToIdle: - playfram 0x55 + playfram 0x00 goto ZethrokorLocal00 ZethrokorLocal00: @@ -2454,13 +2454,14 @@ ZethrokorLocal03: goto ZethrokorGndAttkToIdle ZethrokorDeath: + imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) playsnd 896 # Zerg\Zergling\ZZeDth00.WAV setfldirect 0 playfram 289 wait 2 playfram 290 wait 2 - playfram 291 + playfram 291 wait 2 playfram 292 wait 2 @@ -2469,8 +2470,8 @@ ZethrokorDeath: playfram 294 wait 2 playfram 295 - wait 2 - lowsprul 160 0 0 # Zethrokor Remnants (zerg\zzeDeath.grp) + wait 1 + lowsprul 160 0 0 # Zethrokor Remnants (zerg\zethrokor-remains.grp) wait 1 end @@ -4281,6 +4282,8 @@ ExcisantDeath: playsnd 774 # Zerg\Bldg\ZBldgDth.WAV sprol 185 0 0 # Zerg Building Explosion (thingy\zBldDthS.grp) wait 3 + lowsprul 186 0 0 # Zerg Building Rubble (Small) (thingy\ZRubbleS.grp) + wait 1 end ExcisantAlmostBuilt: @@ -11514,17 +11517,22 @@ GosvilethGndAttkInit: goto GosvilethWalkingToIdle GosvilethWalking: - setvertpos 0 + setvertpos 0 GosvilethLocal01: wait 1 + move 4 playfram 0x20 wait 1 + move 4 playfram 0x40 wait 1 + move 4 playfram 0x60 wait 1 + move 4 playfram 0x80 wait 1 + move 4 playfram 0x00 goto GosvilethLocal01 @@ -15287,6 +15295,8 @@ EskigantDeath: playsnd 774 # Zerg\Bldg\ZBldgDth.WAV sprol 185 0 0 # Zerg Building Explosion (thingy\zBldDthS.grp) wait 3 + lowsprul 186 0 0 # Zerg Building Rubble (Small) (thingy\ZRubbleS.grp) + wait 1 end EskigantAlmostBuilt: @@ -15365,12 +15375,12 @@ QuazrokorInit: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 2024 Inzorthrokor (cm\faction-t\inzorthrokor.grp) +# 2024 Inzorthrokor (cm\f-z\inzorthrokor.grp) .headerstart IsId 820 Type 26 -Init ZoryusthalethInit -Death ZoryusthalethDeath +Init InzorthrokorInit +Death InzorthrokorDeath GndAttkInit InzorthrokorGndAttkInit AirAttkInit InzorthrokorGndAttkInit Unused1 ZoryusthalethUnused1 @@ -15400,6 +15410,33 @@ Enable [NONE] .headerend # ----------------------------------------------------------------------------- # +InzorthrokorInit: + imgulnextid 0 0 # Inzorthrokor Shadow (cm\f-z\inzorthrokor-shadow.grp) + goto ZoryusthalethGndAttkToIdle + +InzorthrokorDeath: + playsnd 1917 # Zoryusthaleth death 01 + setfldirect 0 + playfram 408 + wait 2 + playfram 409 + wait 2 + playfram 410 + wait 2 + playfram 411 + wait 2 + playfram 412 + wait 2 + playfram 413 + wait 2 + playfram 414 + wait 2 + playfram 415 + wait 2 + lowsprul 996 0 0 # Inzorthrokor Remains + wait 1 + end + InzorthrokorGndAttkInit: playfram 0x00 wait 1 @@ -17047,7 +17084,7 @@ KethrajKeepIsWorking: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 1800 Iziralisk (cm\faction-z\iziralisk.grp) +# 1800 Iziralisk (cm\f-z\iziralisk.grp) .headerstart IsId 834 Type 26 @@ -17063,8 +17100,8 @@ GndAttkToIdle IziraliskGndAttkToIdle AirAttkToIdle IziraliskGndAttkToIdle Unused2 [NONE] Walking IziraliskWalking -WalkingToIdle IziraliskGndAttkToIdle -SpecialState1 [NONE] +WalkingToIdle IziraliskWalkingToIdle +SpecialState1 SkryrokorLocal00 SpecialState2 IziraliskSpecialState2 AlmostBuilt [NONE] Built [NONE] @@ -17083,9 +17120,10 @@ Enable [NONE] # ----------------------------------------------------------------------------- # IziraliskInit: - imgul 1473 0 0 # Iziralisk Shadow (cm\zerg\izirokor-shad.grp) + imgulnextid 0 0 # Iziralisk Shadow (cm\f-z\iziralisk-shad.grp) + goto IziraliskWalkingToIdle IziraliskGndAttkToIdle: - playfram 0x00 + playfram 0xAA goto IziraliskLocal00 IziraliskLocal00: @@ -17094,53 +17132,45 @@ IziraliskLocal00: goto IziraliskLocal00 IziraliskLocal01: - playfram 0x11 + playfram 0x99 wait 1 - playfram 0x22 + playfram 0xAA wait 1 - playfram 0x33 - wait 1 - playfram 0x44 - wait 1 - playfram 0x55 - wait 1 - playfram 0x66 + playfram 0xBB wait 1 + playfram 0xCC + wait 4 randcondjmp 34 IziraliskLocal02 - playfram 0x55 + playfram 0xBB wait 1 - playfram 0x44 - wait 1 - playfram 0x33 - wait 1 - playfram 0x22 - wait 1 - playfram 0x11 - wait 1 - goto IziraliskGndAttkToIdle - -IziraliskLocal02: - randcondjmp 62 IziraliskLocal03 - randcondjmp 51 IziraliskLocal04 - playfram 0x77 - wait 1 - playfram 0x88 + playfram 0xAA wait 1 playfram 0x99 wait 1 - playfram 0xaa + goto IziraliskWalkingToIdle + +IziraliskLocal02: + playfram 0xBB wait 1 - playfram 0xbb + playfram 0xAA + wait 3 + randcondjmp 62 IziraliskLocal03 + randcondjmp 51 IziraliskLocal04 + playfram 0xBB wait 1 - playfram 0xcc + playfram 0xCC wait 1 - goto IziraliskGndAttkToIdle + playfram 0xBB + wait 1 + goto IziraliskWalkingToIdle IziraliskLocal03: - playfram 0x55 + playfram 0x99 + wait 4 + playfram 0x11 wait 1 turnccwise 1 - playfram 0x44 + playfram 0x22 wait 1 turnccwise 1 playfram 0x33 @@ -17152,13 +17182,15 @@ IziraliskLocal03: playfram 0x11 wait 1 turnccwise 1 - goto IziraliskGndAttkToIdle + goto IziraliskWalkingToIdle IziraliskLocal04: - playfram 0x55 + playfram 0x99 + wait 4 + playfram 0x11 wait 1 turncwise 1 - playfram 0x44 + playfram 0x22 wait 1 turncwise 1 playfram 0x33 @@ -17170,13 +17202,28 @@ IziraliskLocal04: playfram 0x11 wait 1 turncwise 1 - goto IziraliskGndAttkToIdle + goto IziraliskWalkingToIdle IziraliskDeath: playsnd 1506 # Iziralisk death 01 - imgol 28 0 0 # Geszithalor Death (zerg\zguDeath.grp) - wait 5 - lowsprul 763 0 0 # Iziralisk Remnants (cm\zerg\izirokor-corpse.grp) + setfldirect 0 + playfram 459 + wait 2 + playfram 460 + wait 2 + playfram 461 + wait 2 + playfram 462 + wait 2 + playfram 463 + wait 2 + playfram 464 + wait 2 + playfram 465 + wait 2 + playfram 466 + wait 2 + lowsprul 960 0 0 # Iziralisk Remnants (cm\f-z\iziralisk-remains.grp) wait 2 end @@ -17207,31 +17254,29 @@ IziraliskUnused1: wait 2 setfldirect 14 nobrkcodeend - goto IziraliskGndAttkToIdle + goto IziraliskWalkingToIdle IziraliskGndAttkInit: - playfram 0x1ba + playfram 0x99 wait 1 - playfram 0x1dc + playfram 0xAA IziraliskGndAttkRpt: + wait 1 nobrkcodestart playsndbtwn 1880 1881 # Iziralisk weapon fire 01, 02 wait 1 + playfram 0xCC wait 1 - playfram 0x1fe - wait 1 - playfram 0x20f - attack + playfram 0xDD + attackwith 1 wait 2 - playfram 0x220 - wait 2 - playfram 0x231 + playfram 0xEE wait 1 - playfram 0x242 - wait 2 - playfram 0x253 + playfram 0xFF wait 1 - playfram 0x264 + playfram 0xEE + wait 1 + playfram 0xCC wait 1 nobrkcodeend gotorepeatattk @@ -17240,45 +17285,34 @@ IziraliskGndAttkRpt: IziraliskWalking: move 5 wait 1 - playfram 0x110 + playfram 0x11 move 5 wait 1 - playfram 0x121 + playfram 0x22 move 5 wait 1 - playfram 0x132 + playfram 0x33 move 5 wait 1 - playfram 0x143 + playfram 0x44 move 5 wait 1 - playfram 0x154 + playfram 0x55 move 5 wait 1 - playfram 0x165 + playfram 0x66 move 5 wait 1 - playfram 0x176 + playfram 0x77 move 5 wait 1 - playfram 0x187 - move 5 - wait 1 - playfram 0x198 - move 5 - wait 1 - playfram 0x1a9 - move 5 - wait 1 - playfram 0xdd - move 5 - wait 1 - playfram 0xee - move 5 - wait 1 - playfram 0xff + playfram 0x88 goto IziraliskWalking +IziraliskWalkingToIdle: + playfram 0x0 + goto IziraliskLocal00 + IziraliskSpecialState2: playfram 0x187 goto SkryrokorLocal00 @@ -17286,25 +17320,25 @@ IziraliskSpecialState2: IziraliskBurrow: imgol 423 0 0 # Burrowing Dust (thingy\bDust.grp) imgol 423 12 -9 # Burrowing Dust (thingy\bDust.grp) - playfram 0x286 + playfram 0x143 wait 1 - playfram 0x297 + playfram 0x154 wait 1 - playfram 0x2a8 + playfram 0x165 wait 1 - playfram 0x2b9 + playfram 0x176 wait 1 - playfram 0x2ca + playfram 0x187 imgol 423 15 12 # Burrowing Dust (thingy\bDust.grp) imgol 423 12 -15 # Burrowing Dust (thingy\bDust.grp) imgol 423 -12 -3 # Burrowing Dust (thingy\bDust.grp) wait 1 - playfram 0x2db + playfram 0x198 wait 1 - playfram 0x2ec + playfram 0x1A9 wait 1 sigorder 4 - playfram 0x2fd + playfram 0x1BA goto SkryrokorLocal00 IziraliskUnburrow: @@ -17312,23 +17346,23 @@ IziraliskUnburrow: waitrand 1 2 imgul 423 0 0 # Burrowing Dust (thingy\bDust.grp) imgol 423 12 -9 # Burrowing Dust (thingy\bDust.grp) - playfram 0x2ec + playfram 0x1A9 wait 1 - playfram 0x2db + playfram 0x198 wait 1 - playfram 0x2ca + playfram 0x187 wait 1 - playfram 0x2b9 + playfram 0x176 imgol 423 12 -15 # Burrowing Dust (thingy\bDust.grp) imgol 423 -12 -12 # Burrowing Dust (thingy\bDust.grp) wait 1 - playfram 0x2a8 + playfram 0x165 wait 1 - playfram 0x297 + playfram 0x154 wait 1 sigorder 4 setfldirect 14 - goto IziraliskGndAttkToIdle + goto IziraliskWalkingToIdle # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: @@ -18244,4 +18278,1506 @@ ScrylylethUnBurrow: playfram 0xdd wait 1 sigorder 4 - goto ScrylylethWalkingToIdle \ No newline at end of file + goto ScrylylethWalkingToIdle + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2401 Rozirokor (cm\zerg\rozirokor.grp) +.headerstart +IsId 840 +Type 26 +Init RozirokorInit +Death RozirokorDeath +GndAttkInit RozirokorGndAttkInit +AirAttkInit RozirokorGndAttkInit +Unused1 RozirokorUnused1 +GndAttkRpt RozirokorGndAttkRpt +AirAttkRpt RozirokorGndAttkRpt +CastSpell [NONE] +GndAttkToIdle RozirokorGndAttkToIdle +AirAttkToIdle RozirokorGndAttkToIdle +Unused2 [NONE] +Walking RozirokorWalking +WalkingToIdle RozirokorWalkingToIdle +SpecialState1 SkryrokorLocal00 +SpecialState2 RozirokorSpecialState2 +AlmostBuilt [NONE] +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] +Unused3 [NONE] +StarEditInit [NONE] +Disable [NONE] +Burrow RozirokorBurrow +UnBurrow RozirokorUnburrow +Enable [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +RozirokorInit: + imgul 1473 0 0 # Rozirokor Shadow (cm\zerg\rozirokor-shad.grp) + goto RozirokorWalkingToIdle +RozirokorGndAttkToIdle: + playfram 0xAA + goto RozirokorLocal00 + +RozirokorLocal00: + wait 62 + randcondjmp 128 RozirokorLocal01 + goto RozirokorLocal00 + +RozirokorLocal01: + playfram 0x99 + wait 1 + playfram 0xAA + wait 1 + playfram 0xBB + wait 1 + playfram 0xCC + wait 4 + randcondjmp 34 RozirokorLocal02 + playfram 0xBB + wait 1 + playfram 0xAA + wait 1 + playfram 0x99 + wait 1 + goto RozirokorWalkingToIdle + +RozirokorLocal02: + playfram 0xBB + wait 1 + playfram 0xAA + wait 3 + randcondjmp 62 RozirokorLocal03 + randcondjmp 51 RozirokorLocal04 + playfram 0xBB + wait 1 + playfram 0xCC + wait 1 + playfram 0xBB + wait 1 + goto RozirokorWalkingToIdle + +RozirokorLocal03: + playfram 0x99 + wait 4 + playfram 0x11 + wait 1 + turnccwise 1 + playfram 0x22 + wait 1 + turnccwise 1 + playfram 0x33 + wait 1 + turnccwise 1 + playfram 0x22 + wait 1 + turnccwise 1 + playfram 0x11 + wait 1 + turnccwise 1 + goto RozirokorWalkingToIdle + +RozirokorLocal04: + playfram 0x99 + wait 4 + playfram 0x11 + wait 1 + turncwise 1 + playfram 0x22 + wait 1 + turncwise 1 + playfram 0x33 + wait 1 + turncwise 1 + playfram 0x22 + wait 1 + turncwise 1 + playfram 0x11 + wait 1 + turncwise 1 + goto RozirokorWalkingToIdle + +RozirokorDeath: + playsnd 1506 # Rozirokor death 01 + setfldirect 0 + playfram 459 + wait 2 + playfram 460 + wait 2 + playfram 461 + wait 2 + playfram 462 + wait 2 + playfram 463 + wait 2 + playfram 464 + wait 2 + playfram 465 + wait 2 + playfram 466 + wait 2 + lowsprul 763 0 0 # Rozirokor Remnants (cm\zerg\rozirokor-corpse.grp) + wait 2 + end + +RozirokorUnused1: + wait 1 + nobrkcodestart + setfldirect 0 + playsnd 1181 + playfram 639 + wait 2 + playfram 638 + wait 2 + playfram 637 + wait 2 + playfram 636 + wait 2 + playfram 635 + wait 2 + playfram 634 + wait 2 + playfram 633 + wait 2 + playfram 632 + wait 2 + playfram 631 + wait 2 + playfram 630 + wait 2 + setfldirect 14 + nobrkcodeend + goto RozirokorWalkingToIdle + +RozirokorGndAttkInit: + playfram 0x99 + wait 1 + playfram 0xAA +RozirokorGndAttkRpt: + wait 1 + nobrkcodestart + playsndbtwn 4264 4265 # Rozirokor weaponfire 01, 02 + wait 1 + playfram 0xBB + wait 1 + playfram 0xCC + attackmelee 2 4266 4268 # Rozirokor weaponhit 01, 02, 03 + wait 2 + playfram 0xDD + wait 2 + playfram 0xEE + wait 1 + playfram 0xFF + wait 2 + playfram 0x110 + wait 1 + playfram 0x121 + wait 1 + nobrkcodeend + playfram 0x132 + wait 1 + gotorepeatattk + goto RozirokorGndAttkToIdle + +RozirokorWalking: + move 5 + wait 1 + playfram 0x11 + move 5 + wait 1 + playfram 0x22 + move 5 + wait 1 + playfram 0x33 + move 5 + wait 1 + playfram 0x44 + move 5 + wait 1 + playfram 0x55 + move 5 + wait 1 + playfram 0x66 + move 5 + wait 1 + playfram 0x77 + move 5 + wait 1 + playfram 0x88 + goto RozirokorWalking + +RozirokorWalkingToIdle: + playfram 0x0 + goto RozirokorLocal00 + +RozirokorSpecialState2: + playfram 0x187 + goto SkryrokorLocal00 + +RozirokorBurrow: + imgol 423 0 0 # Burrowing Dust (thingy\bDust.grp) + imgol 423 12 -9 # Burrowing Dust (thingy\bDust.grp) + playfram 0x143 + wait 1 + playfram 0x154 + wait 1 + playfram 0x165 + wait 1 + playfram 0x176 + wait 1 + playfram 0x187 + imgol 423 15 12 # Burrowing Dust (thingy\bDust.grp) + imgol 423 12 -15 # Burrowing Dust (thingy\bDust.grp) + imgol 423 -12 -3 # Burrowing Dust (thingy\bDust.grp) + wait 1 + playfram 0x198 + wait 1 + playfram 0x1A9 + wait 1 + sigorder 4 + playfram 0x1BA + goto SkryrokorLocal00 + +RozirokorUnburrow: + wait 1 + waitrand 1 2 + imgul 423 0 0 # Burrowing Dust (thingy\bDust.grp) + imgol 423 12 -9 # Burrowing Dust (thingy\bDust.grp) + playfram 0x1A9 + wait 1 + playfram 0x198 + wait 1 + playfram 0x187 + wait 1 + playfram 0x176 + imgol 423 12 -15 # Burrowing Dust (thingy\bDust.grp) + imgol 423 -12 -12 # Burrowing Dust (thingy\bDust.grp) + wait 1 + playfram 0x165 + wait 1 + playfram 0x154 + wait 1 + sigorder 4 + setfldirect 14 + goto RozirokorWalkingToIdle + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2410 Zytryleth (cm\zerg\zytryleth.grp) +.headerstart +IsId 841 +Type 20 +Init ZytrylethInit +Death ZytrylethDeath +GndAttkInit SkryrokorLocal00 +AirAttkInit SkryrokorLocal00 +Unused1 [NONE] +GndAttkRpt SkryrokorLocal00 +AirAttkRpt SkryrokorLocal00 +CastSpell [NONE] +GndAttkToIdle SkryrokorLocal00 +AirAttkToIdle SkryrokorLocal00 +Unused2 [NONE] +Walking [NONE] +WalkingToIdle [NONE] +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt ZytrylethAlmostBuilt +Built ZytrylethBuilt +Landing [NONE] +LiftOff [NONE] +IsWorking SkryrokorLocal00 +WorkingToIdle SkryrokorLocal00 +WarpIn [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +ZytrylethInit: + imgulnextid 0 0 # Zytryleth shadow (cm\zerg\zytryleth-shadow.grp) + playfram 0x00 + goto SkryrokorLocal00 + +ZytrylethDeath: + playsnd 774 # Zerg\Bldg\ZBldgDth.WAV + imgol 60 0 0 # Zerg Building Explosion (thingy\zBldDthS.grp) + wait 3 + lowsprul 187 0 0 # Zerg Building Rubble (Large) (thingy\ZRubbleL.grp) + wait 1 + end + +ZytrylethAlmostBuilt: + imgol 108 0 0 # Zerg Building Spawn (Medium) (zerg\zSpawn02.grp) +ZytrylethBuilt: + playfram 0x00 + wait 2 + goto SkryrokorLocal00 + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 1780 Vornath Pond (cm\zerg\vornath-pond.grp) +.headerstart +IsId 842 +Type 20 +Init VornathPondInit +Death VornathPondDeath +GndAttkInit [NONE] +AirAttkInit [NONE] +Unused1 [NONE] +GndAttkRpt [NONE] +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle [NONE] +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking [NONE] +WalkingToIdle [NONE] +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt VornathPondAlmostBuilt +Built VornathPondBuilt +Landing [NONE] +LiftOff [NONE] +IsWorking VornathPondIsWorking +WorkingToIdle VornathPondWorkingToIdle +WarpIn [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +VornathPondInit: + playfram 0x00 + imgul 2423 0 0 # Vornath Pond Shadow (cm\zerg\vornath-pond-shadow.grp) + goto VornathPondWorkingToIdle + +VornathPondWorkingToIdle: + playfram 0x00 + wait 2 + playfram 1 + wait 2 + playfram 2 + wait 2 + playfram 3 + wait 2 + goto VornathPondWorkingToIdle + +VornathPondDeath: + playsnd 774 # Zerg\Bldg\ZBldgDth.WAV + imgol 60 0 0 # Zerg Building Explosion (thingy\zBldDthS.grp) + wait 3 + lowsprul 186 0 0 # Zerg Building Rubble (Small) (thingy\ZRubbleS.grp) + wait 1 + end + +VornathPondAlmostBuilt: + imgol 108 0 0 # Zerg Building Spawn (Medium) (zerg\zSpawn02.grp) + playfram 0x00 + goto VornathPondBuilt + +VornathPondBuilt: + playfram 0x00 + wait 2 + goto VornathPondWorkingToIdle + +VornathPondIsWorking: + playfram 4 + wait 2 + playfram 5 + wait 3 + playfram 6 + wait 2 + playfram 7 + wait 2 + playfram 6 + wait 3 + playfram 5 + wait 2 + playfram 6 + waitrand 2 3 + playfram 7 + wait 2 + playfram 6 + wait 2 + playfram 5 + wait 2 + playfram 4 + wait 2 + playfram 3 + waitrand 2 4 + goto VornathPondIsWorking + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 1811 Chokral Chaszal +.headerstart +IsId 843 +Type 20 +Init ChokralChaszalInit +Death ChokralChaszalDeath +GndAttkInit [NONE] +AirAttkInit [NONE] +Unused1 [NONE] +GndAttkRpt [NONE] +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle [NONE] +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking [NONE] +WalkingToIdle [NONE] +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt ChokralChaszalAlmostBuilt +Built ChokralChaszalBuilt +Landing [NONE] +LiftOff [NONE] +IsWorking ChokralChaszalIsWorking +WorkingToIdle ChokralChaszalWorkingToIdle +WarpIn [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +ChokralChaszalInit: + imgulnextid 0 0 # Chokral Chaszal Shadow + playfram 0x00 + goto ChokralChaszalWorkingToIdle + +ChokralChaszalWorkingToIdle: + playfram 1 + wait 2 + playfram 2 + wait 2 + playfram 3 + wait 2 + playfram 4 + wait 2 + playfram 5 + playfram 0x00 + wait 2 + goto ChokralChaszalWorkingToIdle + +ChokralChaszalDeath: + playsnd 774 # Zerg\Bldg\ZBldgDth.WAV + imgol 60 0 0 # Zerg Building Explosion (thingy\zBldDthS.grp) + wait 3 + lowsprul 186 0 0 # Zerg Building Rubble (Small) (thingy\ZRubbleS.grp) + wait 1 + end + +ChokralChaszalAlmostBuilt: + imgol 107 0 0 # Zerg Building Spawn (Small) (zerg\zSpawn01.grp) +ChokralChaszalBuilt: + playfram 0x00 + wait 2 + goto ChokralChaszalWorkingToIdle + +ChokralChaszalIsWorking: + playfram 0x00 + wait 1 + playfram 1 + wait 1 + playfram 2 + wait 1 + playfram 3 + wait 1 + playfram 4 + wait 1 + playfram 5 + goto ChokralChaszalIsWorking + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2442 Hydrokor (cm\f-z\hydrokor.grp) +.headerstart +IsId 844 +Type 26 +Init HydrokorInit +Death HydrokorDeath +GndAttkInit HydrokorGndAttkInit +AirAttkInit HydrokorGndAttkInit +Unused1 HydrokorUnused1 +GndAttkRpt HydrokorGndAttkRpt +AirAttkRpt HydrokorGndAttkRpt +CastSpell [NONE] +GndAttkToIdle HydrokorGndAttkToIdle +AirAttkToIdle HydrokorGndAttkToIdle +Unused2 [NONE] +Walking HydrokorWalking +WalkingToIdle HydrokorWalkingToIdle +SpecialState1 SkryrokorLocal00 +SpecialState2 HydrokorSpecialState2 +AlmostBuilt [NONE] +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] +Unused3 [NONE] +StarEditInit [NONE] +Disable [NONE] +Burrow HydrokorBurrow +UnBurrow HydrokorUnBurrow +Enable [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +HydrokorInit: + imgulnextid 0 0 # Hydrokor Shadow (cm\f-z\hydrokor-shadow.grp) +HydrokorWalkingToIdle: + playfram 0x55 +HydrokorLocal00: + wait 62 + randcondjmp 25 HydrokorLocal01 + randcondjmp 128 HydrokorLocal02 + goto HydrokorLocal00 + +HydrokorLocal01: + playfram 0x00 + wait 1 + playfram 0x11 + wait 1 + playfram 0x22 + wait 1 + playfram 0x33 + wait 25 + playfram 0x22 + wait 1 + playfram 0x11 + wait 1 + playfram 0x00 + wait 1 + goto HydrokorWalkingToIdle + +HydrokorLocal02: + randcondjmp 128 HydrokorLocal03 + playfram 0x66 + wait 1 + turnccwise 1 + playfram 0x77 + wait 1 + turnccwise 1 + playfram 0x88 + wait 1 + turnccwise 1 + playfram 0x99 + wait 1 + turnccwise 1 + playfram 0xaa + wait 1 + turnccwise 1 + playfram 0xbb + wait 1 + turnccwise 1 + goto HydrokorWalkingToIdle + +HydrokorLocal03: + playfram 0x66 + wait 1 + turncwise 1 + playfram 0x77 + wait 1 + turncwise 1 + playfram 0x88 + wait 1 + turncwise 1 + playfram 0x99 + wait 1 + turncwise 1 + playfram 0xaa + wait 1 + turncwise 1 + playfram 0xbb + wait 1 + turncwise 1 + goto HydrokorWalkingToIdle + +HydrokorDeath: + playsnd 867 # Zerg\Hydra\ZHyDth00.WAV + setfldirect 0 + playfram 0x121 + wait 2 + playfram 290 + wait 2 + playfram 291 + wait 2 + playfram 292 + wait 2 + playfram 293 + wait 2 + playfram 294 + wait 2 + playfram 295 + wait 2 + lowsprul 1181 0 0 # Hydrokor Remnants (cm\f-z\hydrokor-remains.grp) + wait 1 + end + +HydrokorUnused1: + wait 1 + nobrkcodestart + setfldirect 0 + playsnd 1172 # Hydrokor Revive 01 + playfram 296 + wait 2 + playfram 295 + wait 2 + playfram 294 + wait 2 + playfram 293 + wait 2 + playfram 292 + wait 2 + playfram 291 + wait 2 + playfram 290 + wait 2 + playfram 0x121 + wait 2 + setfldirect 12 + nobrkcodeend + goto HydrokorWalkingToIdle + +HydrokorGndAttkInit: + playfram 0x00 + wait 1 + nobrkcodestart + playfram 0x22 + wait 1 +HydrokorGndAttkRpt: + wait 1 + playfram 0x44 + playsnd 64 # Bullet\SpoogHit.wav + sproluselo 332 0 # Needle Spines (thingy\spooge.grp) + attack + wait 1 + playfram 0x33 + wait 1 + playfram 0x22 + wait 1 + nobrkcodeend + gotorepeatattk + ignorerest +HydrokorGndAttkToIdle: + playfram 0x22 + wait 1 + playfram 0x11 + wait 1 + playfram 0x00 + wait 1 + goto HydrokorWalkingToIdle + +HydrokorWalking: + move 4 + wait 1 + playfram 0x66 + move 4 + wait 1 + playfram 0x77 + move 4 + wait 1 + playfram 0x88 + move 4 + wait 1 + playfram 0x99 + move 4 + wait 1 + playfram 0xaa + move 4 + wait 1 + playfram 0xbb + move 4 + wait 1 + playfram 0x55 + goto HydrokorWalking + +HydrokorSpecialState2: + playfram 0x110 + goto SkryrokorLocal00 + +HydrokorBurrow: + imgol 423 0 0 # Burrowing Dust (thingy\bDust.grp) + playfram 0xcc + wait 1 + playfram 0xdd + wait 1 + playfram 0xee + wait 1 + playfram 0xff + wait 1 + playfram 0x110 + wait 1 + sigorder 4 + goto SkryrokorLocal00 + +HydrokorUnBurrow: + wait 1 + waitrand 1 2 + imgul 423 0 0 # Burrowing Dust (thingy\bDust.grp) + playfram 0xff + wait 1 + playfram 0xee + wait 1 + playfram 0xdd + wait 1 + playfram 0xcc + wait 1 + sigorder 4 + goto HydrokorWalkingToIdle + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2202 Sovrokor (cm\f-z\sovrokor.grp) +.headerstart +IsId 845 +Type 26 +Init SovrokorInit +Death SovrokorDeath +GndAttkInit SovrokorGndAttkInit +AirAttkInit [NONE] +Unused1 SovrokorUnused1 +GndAttkRpt SovrokorGndAttkInit +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle SovrokorGndAttkToIdle +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking SovrokorWalking +WalkingToIdle SovrokorGndAttkToIdle +SpecialState1 SkryrokorLocal00 +SpecialState2 SovrokorSpecialState2 +AlmostBuilt [NONE] +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] +Unused3 [NONE] +StarEditInit [NONE] +Disable [NONE] +Burrow SovrokorBurrow +UnBurrow SovrokorUnBurrow +Enable [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +SovrokorInit: + imgul 2451 0 0 # Sovrokor Shadow (cm\f-z\sovrokor-shadow.grp) +SovrokorGndAttkToIdle: + playfram 0x00 + goto SovrokorLocal00 + +SovrokorLocal00: + wait 63 + randcondjmp 25 SovrokorLocal01 + randcondjmp 128 SovrokorLocal02 + goto SovrokorLocal00 + +SovrokorLocal01: + playfram 0x00 + wait 1 + playfram 0x11 + wait 1 + playfram 0x22 + wait 1 + playfram 0x33 + wait 12 + playfram 0x22 + wait 1 + playfram 0x11 + wait 1 + playfram 0x00 + wait 1 + goto SovrokorGndAttkToIdle + +SovrokorLocal02: + randcondjmp 128 SovrokorLocal03 + playfram 0x66 + wait 1 + turnccwise 1 + playfram 0x77 + wait 1 + turnccwise 1 + playfram 0x88 + wait 1 + turnccwise 1 + playfram 0x99 + wait 1 + turnccwise 1 + playfram 0xaa + wait 1 + turnccwise 1 + playfram 0xbb + wait 1 + turnccwise 1 + goto SovrokorGndAttkToIdle + +SovrokorLocal03: + playfram 0x66 + wait 1 + turncwise 1 + playfram 0x77 + wait 1 + turncwise 1 + playfram 0x88 + wait 1 + turncwise 1 + playfram 0x99 + wait 1 + turncwise 1 + playfram 0xaa + wait 1 + turncwise 1 + playfram 0xbb + wait 1 + turncwise 1 + goto SovrokorGndAttkToIdle + +SovrokorDeath: + imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) + playsnd 896 # Zerg\Zergling\ZZeDth00.WAV + setfldirect 0 + playfram 289 + wait 2 + playfram 290 + wait 2 + playfram 291 + wait 2 + playfram 292 + wait 2 + playfram 293 + wait 2 + playfram 294 + wait 2 + playfram 295 + wait 1 + lowsprul 1183 0 0 # Sovrokor Remains (zerg\sovrokor-remains.grp) + wait 1 + end + +SovrokorUnused1: + wait 1 + nobrkcodestart + setfldirect 0 + playsnd 1171 + playfram 295 + wait 2 + playfram 294 + wait 2 + playfram 293 + wait 2 + playfram 292 + wait 2 + playfram 291 + wait 2 + playfram 290 + wait 2 + playfram 289 + wait 2 + setfldirect 10 + nobrkcodeend + goto SovrokorGndAttkToIdle + +SovrokorGndAttkInit: + playfram 0x00 + wait 1 + nobrkcodestart + playfram 0x22 + attackmelee 1 894 # Zerg\Ultra\zulHit00.WAV + wait 1 + playfram 0x33 + wait 1 + nobrkcodeend + playfram 0x44 + wait 1 + gotorepeatattk + goto SovrokorGndAttkToIdle + +SovrokorWalking: + move 6 + wait 1 + playfram 0x66 + move 6 + wait 1 + playfram 0x77 + move 6 + wait 1 + playfram 0x88 + move 6 + wait 1 + playfram 0x99 + move 6 + wait 1 + playfram 0xaa + move 6 + wait 1 + playfram 0xbb + move 6 + wait 1 + playfram 0x55 + goto SovrokorWalking + +SovrokorSpecialState2: + playfram 0x110 + goto SkryrokorLocal00 + +SovrokorBurrow: + imgol 423 0 0 # Burrowing Dust (thingy\bDust.grp) + playfram 0xcc + wait 1 + playfram 0xdd + wait 1 + playfram 0xee + wait 1 + playfram 0xff + wait 1 + playfram 0x110 + wait 1 + sigorder 4 + goto SkryrokorLocal00 + +SovrokorUnBurrow: + wait 1 + waitrand 1 2 + imgul 423 0 0 # Burrowing Dust (thingy\bDust.grp) + playfram 0xff + wait 1 + playfram 0xee + wait 1 + playfram 0xdd + wait 1 + playfram 0xcc + wait 1 + sigorder 4 + goto SovrokorGndAttkToIdle + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2015 Hydralisk (Orkoti) (cm\f-z\hydralisk-orkoti.grp) +.headerstart +IsId 846 +Type 26 +Init HydraliskOrkotiInit +Death HydraliskOrkotiDeath +GndAttkInit HydraliskOrkotiGndAttkInit +AirAttkInit HydraliskOrkotiGndAttkInit +Unused1 HydraliskOrkotiUnused1 +GndAttkRpt HydraliskOrkotiGndAttkRpt +AirAttkRpt HydraliskOrkotiGndAttkRpt +CastSpell [NONE] +GndAttkToIdle HydraliskOrkotiGndAttkToIdle +AirAttkToIdle HydraliskOrkotiGndAttkToIdle +Unused2 [NONE] +Walking HydraliskOrkotiWalking +WalkingToIdle HydraliskOrkotiWalkingToIdle +SpecialState1 SkryrokorLocal00 +SpecialState2 HydraliskOrkotiSpecialState2 +AlmostBuilt [NONE] +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] +Unused3 [NONE] +StarEditInit [NONE] +Disable [NONE] +Burrow HydraliskOrkotiBurrow +UnBurrow HydraliskOrkotiUnBurrow +Enable [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +HydraliskOrkotiInit: + imgulnextid 0 0 # Hydralisk (Orkoti) Shadow (cm\f-z\hydralisk-orkoti-shadow.grp) +HydraliskOrkotiWalkingToIdle: + playfram 0x55 +HydraliskOrkotiLocal00: + wait 62 + randcondjmp 25 HydraliskOrkotiLocal01 + randcondjmp 128 HydraliskOrkotiLocal02 + goto HydraliskOrkotiLocal00 + +HydraliskOrkotiLocal01: + playfram 0x00 + wait 1 + playfram 0x11 + wait 1 + playfram 0x22 + wait 1 + playfram 0x33 + wait 25 + playfram 0x22 + wait 1 + playfram 0x11 + wait 1 + playfram 0x00 + wait 1 + goto HydraliskOrkotiWalkingToIdle + +HydraliskOrkotiLocal02: + randcondjmp 128 HydraliskOrkotiLocal03 + playfram 0x66 + wait 1 + turnccwise 1 + playfram 0x77 + wait 1 + turnccwise 1 + playfram 0x88 + wait 1 + turnccwise 1 + playfram 0x99 + wait 1 + turnccwise 1 + playfram 0xaa + wait 1 + turnccwise 1 + playfram 0xbb + wait 1 + turnccwise 1 + goto HydraliskOrkotiWalkingToIdle + +HydraliskOrkotiLocal03: + playfram 0x66 + wait 1 + turncwise 1 + playfram 0x77 + wait 1 + turncwise 1 + playfram 0x88 + wait 1 + turncwise 1 + playfram 0x99 + wait 1 + turncwise 1 + playfram 0xaa + wait 1 + turncwise 1 + playfram 0xbb + wait 1 + turncwise 1 + goto HydraliskOrkotiWalkingToIdle + +HydraliskOrkotiDeath: + playsnd 867 # Zerg\Hydra\ZHyDth00.WAV + setfldirect 0 + playfram 0x121 + wait 2 + playfram 290 + wait 2 + playfram 291 + wait 2 + playfram 292 + wait 2 + playfram 293 + wait 2 + playfram 294 + wait 2 + playfram 295 + wait 2 + lowsprul 994 0 0 # Hydralisk Orkoti Remnants (cm\f-z\hydralisk-orkoti-remains.grp) + wait 1 + end + +HydraliskOrkotiUnused1: + wait 1 + nobrkcodestart + setfldirect 0 + playsnd 1172 # Hydralisk Revive 01 + playfram 296 + wait 2 + playfram 295 + wait 2 + playfram 294 + wait 2 + playfram 293 + wait 2 + playfram 292 + wait 2 + playfram 291 + wait 2 + playfram 290 + wait 2 + playfram 0x121 + wait 2 + setfldirect 12 + nobrkcodeend + goto HydraliskOrkotiWalkingToIdle + +HydraliskOrkotiGndAttkInit: + playfram 0x00 + wait 1 + nobrkcodestart + playfram 0x22 + wait 1 +HydraliskOrkotiGndAttkRpt: + wait 1 + playfram 0x44 + playsndbtwn 3523 3525 # Hydralisk (Orkoti) weaponfire 01, 02, 03 + sproluselo 332 0 # Needle Spines (thingy\spooge.grp) + attack + wait 1 + playfram 0x33 + wait 1 + playfram 0x22 + wait 1 + nobrkcodeend + gotorepeatattk + ignorerest +HydraliskOrkotiGndAttkToIdle: + playfram 0x22 + wait 1 + playfram 0x11 + wait 1 + playfram 0x00 + wait 1 + goto HydraliskOrkotiWalkingToIdle + +HydraliskOrkotiWalking: + move 4 + wait 1 + playfram 0x66 + move 4 + wait 1 + playfram 0x77 + move 4 + wait 1 + playfram 0x88 + move 4 + wait 1 + playfram 0x99 + move 4 + wait 1 + playfram 0xaa + move 4 + wait 1 + playfram 0xbb + move 4 + wait 1 + playfram 0x55 + goto HydraliskOrkotiWalking + +HydraliskOrkotiSpecialState2: + playfram 0x110 + goto SkryrokorLocal00 + +HydraliskOrkotiBurrow: + imgol 423 0 0 # Burrowing Dust (thingy\bDust.grp) + playfram 0xcc + wait 1 + playfram 0xdd + wait 1 + playfram 0xee + wait 1 + playfram 0xff + wait 1 + playfram 0x110 + wait 1 + sigorder 4 + goto SkryrokorLocal00 + +HydraliskOrkotiUnBurrow: + wait 1 + waitrand 1 2 + imgul 423 0 0 # Burrowing Dust (thingy\bDust.grp) + playfram 0xff + wait 1 + playfram 0xee + wait 1 + playfram 0xdd + wait 1 + playfram 0xcc + wait 1 + sigorder 4 + goto HydraliskOrkotiWalkingToIdle + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 050 Alzurokor (cm\f-z\alzurokor.grp) +.headerstart +IsId 847 +Type 26 +Init AlzurokorInit +Death AlzurokorDeath +GndAttkInit AlzurokorGndAttkInit +AirAttkInit [NONE] +Unused1 AlzurokorUnused1 +GndAttkRpt AlzurokorGndAttkRpt +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle AlzurokorGndAttkToIdle +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking AlzurokorWalking +WalkingToIdle AlzurokorGndAttkToIdle +SpecialState1 [NONE] +SpecialState2 AlzurokorSpecialState2 +AlmostBuilt [NONE] +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] +Unused3 [NONE] +StarEditInit [NONE] +Disable [NONE] +Burrow AlzurokorBurrow +UnBurrow AlzurokorUnBurrow +Enable [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +AlzurokorInit: + imgulnextid 0 0 # Alzurokor Shadow (cm\f-z\alzurokor-shadow.grp) +AlzurokorGndAttkToIdle: + playfram 0x99 + goto AlzurokorLocal00 + +AlzurokorLocal00: + wait 62 + randcondjmp 25 AlzurokorLocal01 + randcondjmp 128 AlzurokorLocal02 + goto AlzurokorLocal00 + +AlzurokorLocal01: + playfram 0x00 + wait 1 + playfram 0x11 + wait 1 + playfram 0x22 + wait 1 + playfram 0x33 + wait 10 + playfram 0x22 + wait 1 + playfram 0x11 + wait 1 + playfram 0x00 + wait 1 + goto AlzurokorGndAttkToIdle + +AlzurokorLocal02: + randcondjmp 128 AlzurokorLocal03 + playfram 0x66 + wait 1 + turnccwise 1 + playfram 0x77 + wait 1 + turnccwise 1 + playfram 0x88 + wait 1 + turnccwise 1 + playfram 0x99 + wait 1 + turnccwise 1 + playfram 0xaa + wait 1 + turnccwise 1 + playfram 0xbb + wait 1 + turnccwise 1 + goto AlzurokorGndAttkToIdle + +AlzurokorLocal03: + playfram 0x66 + wait 1 + turncwise 1 + playfram 0x77 + wait 1 + turncwise 1 + playfram 0x88 + wait 1 + turncwise 1 + playfram 0x99 + wait 1 + turncwise 1 + playfram 0xaa + wait 1 + turncwise 1 + playfram 0xbb + wait 1 + turncwise 1 + goto AlzurokorGndAttkToIdle + +AlzurokorDeath: + playsnd 878 # Zerg\Ultra\ZUlDth00.WAV + setfldirect 0 + playfram 408 + wait 2 + playfram 409 + wait 2 + playfram 410 + wait 2 + playfram 411 + wait 2 + playfram 412 + wait 2 + playfram 413 + wait 2 + playfram 414 + wait 2 + playfram 415 + wait 2 + playfram 416 + wait 2 + playfram 417 + wait 2 + lowsprul 158 0 0 # Alzurokor Remnants (cm\f-z\alzurokor-remains.grp) + wait 1 + end + +AlzurokorUnused1: + wait 1 + nobrkcodestart + setfldirect 0 + playsnd 1181 + playfram 417 + wait 2 + playfram 416 + wait 2 + playfram 415 + wait 2 + playfram 414 + wait 2 + playfram 413 + wait 2 + playfram 412 + wait 2 + playfram 411 + wait 2 + playfram 410 + wait 2 + playfram 409 + wait 2 + playfram 408 + wait 2 + setfldirect 14 + nobrkcodeend + goto AlzurokorGndAttkToIdle + +AlzurokorGndAttkInit: + playfram 0xee +AlzurokorGndAttkRpt: + wait 1 + nobrkcodestart + playsndrand 3 891 892 893 # Zerg\Ultra\zulAtt00.WAV | Zerg\Ultra\zulAtt01.WAV | Zerg\Ultra\zulAtt02.WAV + wait 1 + playfram 0xdd + wait 1 + playfram 0xcc + playsndbtwn 894 895 # Zerg\Ultra\zulHit00.WAV | Zerg\Ultra\zulHit01.WAV + attackwith 1 + wait 2 + playfram 0xbb + wait 2 + playfram 0xcc + wait 1 + playfram 0xdd + wait 2 + playfram 0xee + wait 1 + nobrkcodeend + gotorepeatattk + goto AlzurokorGndAttkToIdle + +AlzurokorWalking: + move 5 + wait 1 + playfram 0x00 + move 5 + wait 1 + playfram 0x11 + move 5 + wait 1 + playfram 0x22 + move 5 + wait 1 + playfram 0x33 + move 5 + wait 1 + playfram 0x44 + move 5 + wait 1 + playfram 0x55 + move 5 + wait 1 + playfram 0x66 + move 5 + wait 1 + playfram 0x77 + move 5 + wait 1 + playfram 0x88 + move 5 + wait 1 + playfram 0x99 + goto AlzurokorWalking + +AlzurokorSpecialState2: + playfram 0x187 + goto SkryrokorLocal00 + +AlzurokorBurrow: + imgol 423 0 0 # Burrowing Dust (thingy\bDust.grp) + imgol 423 12 -9 # Burrowing Dust (thingy\bDust.grp) + imgol 423 -18 15 # Burrowing Dust (thingy\bDust.grp) + playsnd 1093 # Zerg\LURKER\ZLuBurrw.wav + playfram 0xff + wait 1 + playfram 0x110 + wait 1 + playfram 0x121 + wait 1 + playfram 0x132 + wait 1 + imgol 423 0 0 # Burrowing Dust (thingy\bDust.grp) + imgol 423 12 -15 # Burrowing Dust (thingy\bDust.grp) + imgol 423 -15 -18 # Burrowing Dust (thingy\bDust.grp) + playfram 0x143 + wait 1 + playfram 0x154 + wait 1 + playfram 0x165 + wait 1 + playfram 0x176 + wait 1 + playfram 0x187 + imgol 423 -12 -12 # Burrowing Dust (thingy\bDust.grp) + imgol 423 9 15 # Burrowing Dust (thingy\bDust.grp) + imgol 423 -15 21 # Burrowing Dust (thingy\bDust.grp) + wait 1 + sigorder 4 + goto SkryrokorLocal00 + +AlzurokorUnBurrow: + wait 1 + waitrand 1 2 + imgol 423 0 0 # Burrowing Dust (thingy\bDust.grp) + imgol 423 12 -9 # Burrowing Dust (thingy\bDust.grp) + playfram 0x176 + wait 1 + playfram 0x165 + wait 1 + playfram 0x154 + wait 1 + imgol 423 0 0 # Burrowing Dust (thingy\bDust.grp) + imgol 423 -12 -12 # Burrowing Dust (thingy\bDust.grp) + playfram 0x143 + wait 1 + playfram 0x132 + wait 1 + playfram 0x121 + wait 1 + playfram 0x110 + wait 1 + playfram 0xff + imgol 423 12 -15 # Burrowing Dust (thingy\bDust.grp) + imgol 423 -15 9 # Burrowing Dust (thingy\bDust.grp) + wait 1 + sigorder 4 + goto AlzurokorGndAttkToIdle \ No newline at end of file diff --git a/mpq/sound/cm/a/_building/conduit-wht-01.wav b/mpq/sound/cm/a/_building/conduit-wht-01.wav new file mode 100644 index 0000000..bb8df78 Binary files /dev/null and b/mpq/sound/cm/a/_building/conduit-wht-01.wav differ diff --git a/mpq/sound/cm/a/_building/landlock-amb-01.wav b/mpq/sound/cm/a/_building/landlock-amb-01.wav new file mode 100644 index 0000000..184843a Binary files /dev/null and b/mpq/sound/cm/a/_building/landlock-amb-01.wav differ diff --git a/mpq/sound/cm/a/vicar/agg-01.wav b/mpq/sound/cm/a/vicar/agg-01.wav new file mode 100644 index 0000000..b0437cc Binary files /dev/null and b/mpq/sound/cm/a/vicar/agg-01.wav differ diff --git a/mpq/sound/cm/a/vicar/agg-02.wav b/mpq/sound/cm/a/vicar/agg-02.wav new file mode 100644 index 0000000..15759d1 Binary files /dev/null and b/mpq/sound/cm/a/vicar/agg-02.wav differ diff --git a/mpq/sound/cm/a/vicar/agg-03.wav b/mpq/sound/cm/a/vicar/agg-03.wav new file mode 100644 index 0000000..b006b10 Binary files /dev/null and b/mpq/sound/cm/a/vicar/agg-03.wav differ diff --git a/mpq/sound/cm/a/vicar/agg-04.wav b/mpq/sound/cm/a/vicar/agg-04.wav new file mode 100644 index 0000000..f4f8b8c Binary files /dev/null and b/mpq/sound/cm/a/vicar/agg-04.wav differ diff --git a/mpq/sound/cm/a/vicar/cst-01.wav b/mpq/sound/cm/a/vicar/cst-01.wav new file mode 100644 index 0000000..086277d Binary files /dev/null and b/mpq/sound/cm/a/vicar/cst-01.wav differ diff --git a/mpq/sound/cm/a/vicar/hlp-01.wav b/mpq/sound/cm/a/vicar/hlp-01.wav new file mode 100644 index 0000000..cddf8c3 Binary files /dev/null and b/mpq/sound/cm/a/vicar/hlp-01.wav differ diff --git a/mpq/sound/cm/a/vicar/hlp-02.wav b/mpq/sound/cm/a/vicar/hlp-02.wav new file mode 100644 index 0000000..b2946f5 Binary files /dev/null and b/mpq/sound/cm/a/vicar/hlp-02.wav differ diff --git a/mpq/sound/cm/a/vicar/hlp-03.wav b/mpq/sound/cm/a/vicar/hlp-03.wav new file mode 100644 index 0000000..f05fbb7 Binary files /dev/null and b/mpq/sound/cm/a/vicar/hlp-03.wav differ diff --git a/mpq/sound/cm/a/vicar/hlp-04.wav b/mpq/sound/cm/a/vicar/hlp-04.wav new file mode 100644 index 0000000..3c3c454 Binary files /dev/null and b/mpq/sound/cm/a/vicar/hlp-04.wav differ diff --git a/mpq/sound/cm/a/vicar/rdy-01.wav b/mpq/sound/cm/a/vicar/rdy-01.wav new file mode 100644 index 0000000..72edae3 Binary files /dev/null and b/mpq/sound/cm/a/vicar/rdy-01.wav differ diff --git a/mpq/sound/cm/a/vicar/rdy-02.wav b/mpq/sound/cm/a/vicar/rdy-02.wav new file mode 100644 index 0000000..0b769f7 Binary files /dev/null and b/mpq/sound/cm/a/vicar/rdy-02.wav differ diff --git a/mpq/sound/cm/a/vicar/rdy-03.wav b/mpq/sound/cm/a/vicar/rdy-03.wav new file mode 100644 index 0000000..3d76115 Binary files /dev/null and b/mpq/sound/cm/a/vicar/rdy-03.wav differ diff --git a/mpq/sound/cm/a/vicar/wht-01.wav b/mpq/sound/cm/a/vicar/wht-01.wav new file mode 100644 index 0000000..655bc36 Binary files /dev/null and b/mpq/sound/cm/a/vicar/wht-01.wav differ diff --git a/mpq/sound/cm/a/vicar/wht-02.wav b/mpq/sound/cm/a/vicar/wht-02.wav new file mode 100644 index 0000000..15c2bb0 Binary files /dev/null and b/mpq/sound/cm/a/vicar/wht-02.wav differ diff --git a/mpq/sound/cm/a/vicar/wht-03.wav b/mpq/sound/cm/a/vicar/wht-03.wav new file mode 100644 index 0000000..a9f5db1 Binary files /dev/null and b/mpq/sound/cm/a/vicar/wht-03.wav differ diff --git a/mpq/sound/cm/a/vicar/wht-04.wav b/mpq/sound/cm/a/vicar/wht-04.wav new file mode 100644 index 0000000..81bb5fe Binary files /dev/null and b/mpq/sound/cm/a/vicar/wht-04.wav differ diff --git a/mpq/sound/cm/a/vicar/yes-01.wav b/mpq/sound/cm/a/vicar/yes-01.wav new file mode 100644 index 0000000..e3f8072 Binary files /dev/null and b/mpq/sound/cm/a/vicar/yes-01.wav differ diff --git a/mpq/sound/cm/a/vicar/yes-02.wav b/mpq/sound/cm/a/vicar/yes-02.wav new file mode 100644 index 0000000..d5dac38 Binary files /dev/null and b/mpq/sound/cm/a/vicar/yes-02.wav differ diff --git a/mpq/sound/cm/a/vicar/yes-03.wav b/mpq/sound/cm/a/vicar/yes-03.wav new file mode 100644 index 0000000..d012487 Binary files /dev/null and b/mpq/sound/cm/a/vicar/yes-03.wav differ diff --git a/mpq/sound/cm/a/vicar/yes-04.wav b/mpq/sound/cm/a/vicar/yes-04.wav new file mode 100644 index 0000000..3a85ca0 Binary files /dev/null and b/mpq/sound/cm/a/vicar/yes-04.wav differ diff --git a/mpq/sound/cm/b/b-load-01.wav b/mpq/sound/cm/b/b-load-01.wav new file mode 100644 index 0000000..683b2c1 Binary files /dev/null and b/mpq/sound/cm/b/b-load-01.wav differ diff --git a/mpq/sound/cm/b/b-unload-01.wav b/mpq/sound/cm/b/b-unload-01.wav new file mode 100644 index 0000000..02cec66 Binary files /dev/null and b/mpq/sound/cm/b/b-unload-01.wav differ diff --git a/mpq/sound/cm/b/grimoire/pas-proc-01.wav b/mpq/sound/cm/b/grimoire/pas-proc-01.wav new file mode 100644 index 0000000..0e85c2f Binary files /dev/null and b/mpq/sound/cm/b/grimoire/pas-proc-01.wav differ diff --git a/mpq/sound/cm/b/grimoire/wht-01.wav b/mpq/sound/cm/b/grimoire/wht-01.wav new file mode 100644 index 0000000..73c79b2 Binary files /dev/null and b/mpq/sound/cm/b/grimoire/wht-01.wav differ diff --git a/mpq/sound/cm/f-t/camazotz/wf-01.wav b/mpq/sound/cm/f-t/camazotz/wf-01.wav new file mode 100644 index 0000000..09fb5da Binary files /dev/null and b/mpq/sound/cm/f-t/camazotz/wf-01.wav differ diff --git a/mpq/sound/cm/f-t/camazotz/wf-02.wav b/mpq/sound/cm/f-t/camazotz/wf-02.wav new file mode 100644 index 0000000..e97c45f Binary files /dev/null and b/mpq/sound/cm/f-t/camazotz/wf-02.wav differ diff --git a/mpq/sound/cm/f-t/camazotz/wf-03.wav b/mpq/sound/cm/f-t/camazotz/wf-03.wav new file mode 100644 index 0000000..232f09b Binary files /dev/null and b/mpq/sound/cm/f-t/camazotz/wf-03.wav differ diff --git a/mpq/sound/cm/f-z/rozirokor/wf-01.wav b/mpq/sound/cm/f-z/rozirokor/wf-01.wav new file mode 100644 index 0000000..2bcd6f2 Binary files /dev/null and b/mpq/sound/cm/f-z/rozirokor/wf-01.wav differ diff --git a/mpq/sound/cm/f-z/rozirokor/wf-02.wav b/mpq/sound/cm/f-z/rozirokor/wf-02.wav new file mode 100644 index 0000000..6893361 Binary files /dev/null and b/mpq/sound/cm/f-z/rozirokor/wf-02.wav differ diff --git a/mpq/sound/cm/f-z/rozirokor/wh-01.wav b/mpq/sound/cm/f-z/rozirokor/wh-01.wav new file mode 100644 index 0000000..2bf6f9b Binary files /dev/null and b/mpq/sound/cm/f-z/rozirokor/wh-01.wav differ diff --git a/mpq/sound/cm/f-z/rozirokor/wh-02.wav b/mpq/sound/cm/f-z/rozirokor/wh-02.wav new file mode 100644 index 0000000..ff282f5 Binary files /dev/null and b/mpq/sound/cm/f-z/rozirokor/wh-02.wav differ diff --git a/mpq/sound/cm/f-z/rozirokor/wh-03.wav b/mpq/sound/cm/f-z/rozirokor/wh-03.wav new file mode 100644 index 0000000..5d629a5 Binary files /dev/null and b/mpq/sound/cm/f-z/rozirokor/wh-03.wav differ diff --git a/mpq/sound/cm/t/striga/dth-01.wav b/mpq/sound/cm/t/striga/dth-01.wav new file mode 100644 index 0000000..ede604a Binary files /dev/null and b/mpq/sound/cm/t/striga/dth-01.wav differ diff --git a/mpq/sound/cm/t/striga/dth-02.wav b/mpq/sound/cm/t/striga/dth-02.wav new file mode 100644 index 0000000..df49c5f Binary files /dev/null and b/mpq/sound/cm/t/striga/dth-02.wav differ diff --git a/mpq/sound/cm/t/striga/dth-03.wav b/mpq/sound/cm/t/striga/dth-03.wav new file mode 100644 index 0000000..da4078c Binary files /dev/null and b/mpq/sound/cm/t/striga/dth-03.wav differ diff --git a/mpq/tileset/install.cv5 b/mpq/tileset/install.cv5 index f56ae99..62cb209 100644 Binary files a/mpq/tileset/install.cv5 and b/mpq/tileset/install.cv5 differ diff --git a/mpq/tileset/install.vf4 b/mpq/tileset/install.vf4 index ba202f0..22656b6 100644 Binary files a/mpq/tileset/install.vf4 and b/mpq/tileset/install.vf4 differ diff --git a/mpq/tileset/install.vr4 b/mpq/tileset/install.vr4 index 56b2bc4..5202f41 100644 Binary files a/mpq/tileset/install.vr4 and b/mpq/tileset/install.vr4 differ diff --git a/mpq/tileset/install.vx4ex b/mpq/tileset/install.vx4ex index c5c5dd9..8aac9f8 100644 Binary files a/mpq/tileset/install.vx4ex and b/mpq/tileset/install.vx4ex differ diff --git a/mpq/unit/cm/a/crushing-delivery-large.grp b/mpq/unit/cm/a/crushing-delivery-large.grp new file mode 100644 index 0000000..3618e0d Binary files /dev/null and b/mpq/unit/cm/a/crushing-delivery-large.grp differ diff --git a/mpq/unit/cm/a/crushing-delivery-medium.grp b/mpq/unit/cm/a/crushing-delivery-medium.grp new file mode 100644 index 0000000..f73620e Binary files /dev/null and b/mpq/unit/cm/a/crushing-delivery-medium.grp differ diff --git a/mpq/unit/cm/a/crushing-delivery-small.grp b/mpq/unit/cm/a/crushing-delivery-small.grp new file mode 100644 index 0000000..ca12592 Binary files /dev/null and b/mpq/unit/cm/a/crushing-delivery-small.grp differ diff --git a/mpq/unit/cm/a/impact-dissipation.grp b/mpq/unit/cm/a/impact-dissipation.grp new file mode 100644 index 0000000..26d5483 Binary files /dev/null and b/mpq/unit/cm/a/impact-dissipation.grp differ diff --git a/mpq/unit/cm/b/acqui-resource.loo b/mpq/unit/cm/b/acqui-resource.loo new file mode 100644 index 0000000..ef556d5 Binary files /dev/null and b/mpq/unit/cm/b/acqui-resource.loo differ diff --git a/mpq/unit/cm/b/acqui-shadow.grp b/mpq/unit/cm/b/acqui-shadow.grp new file mode 100644 index 0000000..e5a74db Binary files /dev/null and b/mpq/unit/cm/b/acqui-shadow.grp differ diff --git a/mpq/unit/cm/b/acqui.grp b/mpq/unit/cm/b/acqui.grp new file mode 100644 index 0000000..e5a74db Binary files /dev/null and b/mpq/unit/cm/b/acqui.grp differ diff --git a/mpq/unit/cm/b/grimoire-damage.lof b/mpq/unit/cm/b/grimoire-damage.lof new file mode 100644 index 0000000..1dd256c Binary files /dev/null and b/mpq/unit/cm/b/grimoire-damage.lof differ diff --git a/mpq/unit/cm/b/grimoire-shadow.grp b/mpq/unit/cm/b/grimoire-shadow.grp new file mode 100644 index 0000000..bcd7135 Binary files /dev/null and b/mpq/unit/cm/b/grimoire-shadow.grp differ diff --git a/mpq/unit/cm/b/grimoire.grp b/mpq/unit/cm/b/grimoire.grp new file mode 100644 index 0000000..0233877 Binary files /dev/null and b/mpq/unit/cm/b/grimoire.grp differ diff --git a/mpq/unit/cm/b/nihilist-shadow.grp b/mpq/unit/cm/b/nihilist-shadow.grp new file mode 100644 index 0000000..ebacf86 Binary files /dev/null and b/mpq/unit/cm/b/nihilist-shadow.grp differ diff --git a/mpq/unit/cm/b/nihilist.grp b/mpq/unit/cm/b/nihilist.grp new file mode 100644 index 0000000..ebacf86 Binary files /dev/null and b/mpq/unit/cm/b/nihilist.grp differ diff --git a/mpq/unit/cm/b/ritual-shadow.grp b/mpq/unit/cm/b/ritual-shadow.grp new file mode 100644 index 0000000..1b75cc3 Binary files /dev/null and b/mpq/unit/cm/b/ritual-shadow.grp differ diff --git a/mpq/unit/cm/b/ritual-spawn-large.grp b/mpq/unit/cm/b/ritual-spawn-large.grp new file mode 100644 index 0000000..ad8ec50 Binary files /dev/null and b/mpq/unit/cm/b/ritual-spawn-large.grp differ diff --git a/mpq/unit/cm/b/ritual-spawn-medium.grp b/mpq/unit/cm/b/ritual-spawn-medium.grp new file mode 100644 index 0000000..ae7dee9 Binary files /dev/null and b/mpq/unit/cm/b/ritual-spawn-medium.grp differ diff --git a/mpq/unit/cm/b/ritual-spawn-small.grp b/mpq/unit/cm/b/ritual-spawn-small.grp new file mode 100644 index 0000000..1b686d5 Binary files /dev/null and b/mpq/unit/cm/b/ritual-spawn-small.grp differ diff --git a/mpq/unit/cm/b/ritual.grp b/mpq/unit/cm/b/ritual.grp new file mode 100644 index 0000000..666f6ca Binary files /dev/null and b/mpq/unit/cm/b/ritual.grp differ diff --git a/mpq/unit/cm/b/rubble-b-large.grp b/mpq/unit/cm/b/rubble-b-large.grp new file mode 100644 index 0000000..0386ee6 Binary files /dev/null and b/mpq/unit/cm/b/rubble-b-large.grp differ diff --git a/mpq/unit/cm/b/rubble-b-small.grp b/mpq/unit/cm/b/rubble-b-small.grp new file mode 100644 index 0000000..338c84a Binary files /dev/null and b/mpq/unit/cm/b/rubble-b-small.grp differ diff --git a/mpq/unit/cm/b/rubble-u-medium.grp b/mpq/unit/cm/b/rubble-u-medium.grp new file mode 100644 index 0000000..310033b Binary files /dev/null and b/mpq/unit/cm/b/rubble-u-medium.grp differ diff --git a/mpq/unit/cm/b/rubble-u-small.grp b/mpq/unit/cm/b/rubble-u-small.grp new file mode 100644 index 0000000..80876d5 Binary files /dev/null and b/mpq/unit/cm/b/rubble-u-small.grp differ diff --git a/mpq/unit/cm/b/rubble-u-tiny.grp b/mpq/unit/cm/b/rubble-u-tiny.grp new file mode 100644 index 0000000..42c8b18 Binary files /dev/null and b/mpq/unit/cm/b/rubble-u-tiny.grp differ diff --git a/mpq/unit/cm/e/energydecay.grp b/mpq/unit/cm/e/energydecay.grp index 4b5d4ae..4e68a13 100644 Binary files a/mpq/unit/cm/e/energydecay.grp and b/mpq/unit/cm/e/energydecay.grp differ diff --git a/mpq/unit/cm/f-p/idol-khalendric-remains.grp b/mpq/unit/cm/f-p/idol-khalendric-remains.grp new file mode 100644 index 0000000..8dc2820 Binary files /dev/null and b/mpq/unit/cm/f-p/idol-khalendric-remains.grp differ diff --git a/mpq/unit/cm/f-p/idol-khalendric-shadow.grp b/mpq/unit/cm/f-p/idol-khalendric-shadow.grp new file mode 100644 index 0000000..f5aa47c Binary files /dev/null and b/mpq/unit/cm/f-p/idol-khalendric-shadow.grp differ diff --git a/mpq/unit/cm/f-p/idol-khalendric.grp b/mpq/unit/cm/f-p/idol-khalendric.grp new file mode 100644 index 0000000..8cdbd40 Binary files /dev/null and b/mpq/unit/cm/f-p/idol-khalendric.grp differ diff --git a/mpq/unit/cm/f-p/simulacrum-khalendric-shadow.grp b/mpq/unit/cm/f-p/simulacrum-khalendric-shadow.grp new file mode 100644 index 0000000..bc4c63c Binary files /dev/null and b/mpq/unit/cm/f-p/simulacrum-khalendric-shadow.grp differ diff --git a/mpq/unit/cm/f-p/simulacrum-khalendric.grp b/mpq/unit/cm/f-p/simulacrum-khalendric.grp new file mode 100644 index 0000000..e276cad Binary files /dev/null and b/mpq/unit/cm/f-p/simulacrum-khalendric.grp differ diff --git a/mpq/unit/cm/f-p/vestige-shadow.grp b/mpq/unit/cm/f-p/vestige-shadow.grp new file mode 100644 index 0000000..c8636f0 Binary files /dev/null and b/mpq/unit/cm/f-p/vestige-shadow.grp differ diff --git a/mpq/unit/cm/f-p/vestige.grp b/mpq/unit/cm/f-p/vestige.grp new file mode 100644 index 0000000..0ba647f Binary files /dev/null and b/mpq/unit/cm/f-p/vestige.grp differ diff --git a/mpq/unit/cm/f-t/arquebus-attack.lol b/mpq/unit/cm/f-t/arquebus-attack.lol new file mode 100644 index 0000000..5671867 Binary files /dev/null and b/mpq/unit/cm/f-t/arquebus-attack.lol differ diff --git a/mpq/unit/cm/f-t/arquebus-shadow.grp b/mpq/unit/cm/f-t/arquebus-shadow.grp new file mode 100644 index 0000000..c6bdfc1 Binary files /dev/null and b/mpq/unit/cm/f-t/arquebus-shadow.grp differ diff --git a/mpq/unit/cm/f-t/arquebus.grp b/mpq/unit/cm/f-t/arquebus.grp new file mode 100644 index 0000000..08ffe5e Binary files /dev/null and b/mpq/unit/cm/f-t/arquebus.grp differ diff --git a/mpq/unit/cm/f-t/camazotz-shadow.grp b/mpq/unit/cm/f-t/camazotz-shadow.grp new file mode 100644 index 0000000..765f8cf Binary files /dev/null and b/mpq/unit/cm/f-t/camazotz-shadow.grp differ diff --git a/mpq/unit/cm/f-t/camazotz.grp b/mpq/unit/cm/f-t/camazotz.grp new file mode 100644 index 0000000..f3ca03b Binary files /dev/null and b/mpq/unit/cm/f-t/camazotz.grp differ diff --git a/mpq/unit/cm/f-t/eidolon-nydus-attack.lol b/mpq/unit/cm/f-t/eidolon-nydus-attack.lol new file mode 100644 index 0000000..4539ce8 Binary files /dev/null and b/mpq/unit/cm/f-t/eidolon-nydus-attack.lol differ diff --git a/mpq/unit/cm/f-t/eidolon-nydus-remains.grp b/mpq/unit/cm/f-t/eidolon-nydus-remains.grp new file mode 100644 index 0000000..333e186 Binary files /dev/null and b/mpq/unit/cm/f-t/eidolon-nydus-remains.grp differ diff --git a/mpq/unit/cm/f-t/eidolon-nydus-shadow.grp b/mpq/unit/cm/f-t/eidolon-nydus-shadow.grp new file mode 100644 index 0000000..e500843 Binary files /dev/null and b/mpq/unit/cm/f-t/eidolon-nydus-shadow.grp differ diff --git a/mpq/unit/cm/f-t/eidolon-nydus.grp b/mpq/unit/cm/f-t/eidolon-nydus.grp index 32415fb..84e5949 100644 Binary files a/mpq/unit/cm/f-t/eidolon-nydus.grp and b/mpq/unit/cm/f-t/eidolon-nydus.grp differ diff --git a/mpq/unit/cm/f-t/eidolon-upstart-death.grp b/mpq/unit/cm/f-t/eidolon-upstart-death.grp deleted file mode 100644 index fe9c2f9..0000000 Binary files a/mpq/unit/cm/f-t/eidolon-upstart-death.grp and /dev/null differ diff --git a/mpq/unit/cm/f-t/eidolon-upstart-shadow.grp b/mpq/unit/cm/f-t/eidolon-upstart-shadow.grp deleted file mode 100644 index 1c0015b..0000000 Binary files a/mpq/unit/cm/f-t/eidolon-upstart-shadow.grp and /dev/null differ diff --git a/mpq/unit/cm/f-t/eidolon-upstart.grp b/mpq/unit/cm/f-t/eidolon-upstart.grp deleted file mode 100644 index 7b55b47..0000000 Binary files a/mpq/unit/cm/f-t/eidolon-upstart.grp and /dev/null differ diff --git a/mpq/unit/cm/f-t/morrigan-remains.grp b/mpq/unit/cm/f-t/morrigan-remains.grp new file mode 100644 index 0000000..12c2e44 Binary files /dev/null and b/mpq/unit/cm/f-t/morrigan-remains.grp differ diff --git a/mpq/unit/cm/f-t/morrigan-shadow.grp b/mpq/unit/cm/f-t/morrigan-shadow.grp new file mode 100644 index 0000000..e500843 Binary files /dev/null and b/mpq/unit/cm/f-t/morrigan-shadow.grp differ diff --git a/mpq/unit/cm/f-t/morrigan.grp b/mpq/unit/cm/f-t/morrigan.grp new file mode 100644 index 0000000..3bc9e69 Binary files /dev/null and b/mpq/unit/cm/f-t/morrigan.grp differ diff --git a/mpq/unit/cm/f-t/valkyrie-attack.lol b/mpq/unit/cm/f-t/valkyrie-attack.lol new file mode 100644 index 0000000..0a97ee4 Binary files /dev/null and b/mpq/unit/cm/f-t/valkyrie-attack.lol differ diff --git a/mpq/unit/cm/f-t/valkyrie-hecaton-attack.lol b/mpq/unit/cm/f-t/valkyrie-hecaton-attack.lol new file mode 100644 index 0000000..8627575 Binary files /dev/null and b/mpq/unit/cm/f-t/valkyrie-hecaton-attack.lol differ diff --git a/mpq/unit/cm/f-t/valkyrie-hecaton-engine.grp b/mpq/unit/cm/f-t/valkyrie-hecaton-engine.grp new file mode 100644 index 0000000..1117c45 Binary files /dev/null and b/mpq/unit/cm/f-t/valkyrie-hecaton-engine.grp differ diff --git a/mpq/unit/cm/f-t/valkyrie-hecaton.grp b/mpq/unit/cm/f-t/valkyrie-hecaton.grp index d0e7a55..e914b1f 100644 Binary files a/mpq/unit/cm/f-t/valkyrie-hecaton.grp and b/mpq/unit/cm/f-t/valkyrie-hecaton.grp differ diff --git a/mpq/unit/cm/f-z/alzurokor-shadow.grp b/mpq/unit/cm/f-z/alzurokor-shadow.grp new file mode 100644 index 0000000..12fdacb Binary files /dev/null and b/mpq/unit/cm/f-z/alzurokor-shadow.grp differ diff --git a/mpq/unit/cm/f-z/alzurokor.grp b/mpq/unit/cm/f-z/alzurokor.grp new file mode 100644 index 0000000..b69c0e6 Binary files /dev/null and b/mpq/unit/cm/f-z/alzurokor.grp differ diff --git a/mpq/unit/cm/f-z/hydralisk-orkoti-birth.grp b/mpq/unit/cm/f-z/hydralisk-orkoti-birth.grp new file mode 100644 index 0000000..fcc5649 Binary files /dev/null and b/mpq/unit/cm/f-z/hydralisk-orkoti-birth.grp differ diff --git a/mpq/unit/cm/f-z/hydralisk-orkoti-mutate.grp b/mpq/unit/cm/f-z/hydralisk-orkoti-mutate.grp new file mode 100644 index 0000000..0607725 Binary files /dev/null and b/mpq/unit/cm/f-z/hydralisk-orkoti-mutate.grp differ diff --git a/mpq/unit/cm/f-z/hydralisk-orkoti-remains.grp b/mpq/unit/cm/f-z/hydralisk-orkoti-remains.grp new file mode 100644 index 0000000..42d5398 Binary files /dev/null and b/mpq/unit/cm/f-z/hydralisk-orkoti-remains.grp differ diff --git a/mpq/unit/cm/f-z/hydralisk-orkoti-shadow.grp b/mpq/unit/cm/f-z/hydralisk-orkoti-shadow.grp new file mode 100644 index 0000000..e49d85f Binary files /dev/null and b/mpq/unit/cm/f-z/hydralisk-orkoti-shadow.grp differ diff --git a/mpq/unit/cm/f-z/hydralisk-orkoti.grp b/mpq/unit/cm/f-z/hydralisk-orkoti.grp index ed9db5d..637feb8 100644 Binary files a/mpq/unit/cm/f-z/hydralisk-orkoti.grp and b/mpq/unit/cm/f-z/hydralisk-orkoti.grp differ diff --git a/mpq/unit/cm/f-z/hydrokor-birth.grp b/mpq/unit/cm/f-z/hydrokor-birth.grp new file mode 100644 index 0000000..5ec5d2e Binary files /dev/null and b/mpq/unit/cm/f-z/hydrokor-birth.grp differ diff --git a/mpq/unit/cm/f-z/hydrokor-mutate.grp b/mpq/unit/cm/f-z/hydrokor-mutate.grp new file mode 100644 index 0000000..aa0f9de Binary files /dev/null and b/mpq/unit/cm/f-z/hydrokor-mutate.grp differ diff --git a/mpq/unit/cm/f-z/hydrokor-remains.grp b/mpq/unit/cm/f-z/hydrokor-remains.grp new file mode 100644 index 0000000..c739a41 Binary files /dev/null and b/mpq/unit/cm/f-z/hydrokor-remains.grp differ diff --git a/mpq/unit/cm/f-z/hydrokor-shadow.grp b/mpq/unit/cm/f-z/hydrokor-shadow.grp new file mode 100644 index 0000000..7a728bb Binary files /dev/null and b/mpq/unit/cm/f-z/hydrokor-shadow.grp differ diff --git a/mpq/unit/cm/f-z/hydrokor.grp b/mpq/unit/cm/f-z/hydrokor.grp new file mode 100644 index 0000000..677b303 Binary files /dev/null and b/mpq/unit/cm/f-z/hydrokor.grp differ diff --git a/mpq/unit/cm/f-z/inzorthrokor-birth.grp b/mpq/unit/cm/f-z/inzorthrokor-birth.grp index aef9da6..8b355ef 100644 Binary files a/mpq/unit/cm/f-z/inzorthrokor-birth.grp and b/mpq/unit/cm/f-z/inzorthrokor-birth.grp differ diff --git a/mpq/unit/cm/f-z/inzorthrokor-mutate.grp b/mpq/unit/cm/f-z/inzorthrokor-mutate.grp new file mode 100644 index 0000000..6533c41 Binary files /dev/null and b/mpq/unit/cm/f-z/inzorthrokor-mutate.grp differ diff --git a/mpq/unit/cm/f-z/inzorthrokor-remains.grp b/mpq/unit/cm/f-z/inzorthrokor-remains.grp index 84ca940..c42072c 100644 Binary files a/mpq/unit/cm/f-z/inzorthrokor-remains.grp and b/mpq/unit/cm/f-z/inzorthrokor-remains.grp differ diff --git a/mpq/unit/cm/f-z/inzorthrokor-shadow.grp b/mpq/unit/cm/f-z/inzorthrokor-shadow.grp index bcd2878..5427b3b 100644 Binary files a/mpq/unit/cm/f-z/inzorthrokor-shadow.grp and b/mpq/unit/cm/f-z/inzorthrokor-shadow.grp differ diff --git a/mpq/unit/cm/f-z/inzorthrokor.grp b/mpq/unit/cm/f-z/inzorthrokor.grp index b12ad95..acb7008 100644 Binary files a/mpq/unit/cm/f-z/inzorthrokor.grp and b/mpq/unit/cm/f-z/inzorthrokor.grp differ diff --git a/mpq/unit/cm/f-z/iziralisk-birth.grp b/mpq/unit/cm/f-z/iziralisk-birth.grp index ba6c82f..5c71199 100644 Binary files a/mpq/unit/cm/f-z/iziralisk-birth.grp and b/mpq/unit/cm/f-z/iziralisk-birth.grp differ diff --git a/mpq/unit/cm/f-z/iziralisk-mutate.grp b/mpq/unit/cm/f-z/iziralisk-mutate.grp index 94248f9..06cf1a9 100644 Binary files a/mpq/unit/cm/f-z/iziralisk-mutate.grp and b/mpq/unit/cm/f-z/iziralisk-mutate.grp differ diff --git a/mpq/unit/cm/f-z/iziralisk-remains.grp b/mpq/unit/cm/f-z/iziralisk-remains.grp index 6bd41c3..4068624 100644 Binary files a/mpq/unit/cm/f-z/iziralisk-remains.grp and b/mpq/unit/cm/f-z/iziralisk-remains.grp differ diff --git a/mpq/unit/cm/f-z/iziralisk-shadow.grp b/mpq/unit/cm/f-z/iziralisk-shadow.grp index 4cfb6af..7169b4b 100644 Binary files a/mpq/unit/cm/f-z/iziralisk-shadow.grp and b/mpq/unit/cm/f-z/iziralisk-shadow.grp differ diff --git a/mpq/unit/cm/f-z/iziralisk.grp b/mpq/unit/cm/f-z/iziralisk.grp index 5ce1664..3966bd0 100644 Binary files a/mpq/unit/cm/f-z/iziralisk.grp and b/mpq/unit/cm/f-z/iziralisk.grp differ diff --git a/mpq/unit/cm/f-z/rozirokor-birth.grp b/mpq/unit/cm/f-z/rozirokor-birth.grp new file mode 100644 index 0000000..28ab357 Binary files /dev/null and b/mpq/unit/cm/f-z/rozirokor-birth.grp differ diff --git a/mpq/unit/cm/f-z/rozirokor-mutate.grp b/mpq/unit/cm/f-z/rozirokor-mutate.grp new file mode 100644 index 0000000..d353b25 Binary files /dev/null and b/mpq/unit/cm/f-z/rozirokor-mutate.grp differ diff --git a/mpq/unit/cm/f-z/rozirokor-remains.grp b/mpq/unit/cm/f-z/rozirokor-remains.grp new file mode 100644 index 0000000..cf39ee1 Binary files /dev/null and b/mpq/unit/cm/f-z/rozirokor-remains.grp differ diff --git a/mpq/unit/cm/f-z/rozirokor-shadow.grp b/mpq/unit/cm/f-z/rozirokor-shadow.grp new file mode 100644 index 0000000..3452c0f Binary files /dev/null and b/mpq/unit/cm/f-z/rozirokor-shadow.grp differ diff --git a/mpq/unit/cm/f-z/rozirokor.grp b/mpq/unit/cm/f-z/rozirokor.grp new file mode 100644 index 0000000..56ef1b9 Binary files /dev/null and b/mpq/unit/cm/f-z/rozirokor.grp differ diff --git a/mpq/unit/cm/f-z/sovrokor-birth.grp b/mpq/unit/cm/f-z/sovrokor-birth.grp new file mode 100644 index 0000000..2ae2639 Binary files /dev/null and b/mpq/unit/cm/f-z/sovrokor-birth.grp differ diff --git a/mpq/unit/cm/f-z/sovrokor-mutate.grp b/mpq/unit/cm/f-z/sovrokor-mutate.grp new file mode 100644 index 0000000..eb2ba7f Binary files /dev/null and b/mpq/unit/cm/f-z/sovrokor-mutate.grp differ diff --git a/mpq/unit/cm/f-z/sovrokor-remains.grp b/mpq/unit/cm/f-z/sovrokor-remains.grp new file mode 100644 index 0000000..2290f71 Binary files /dev/null and b/mpq/unit/cm/f-z/sovrokor-remains.grp differ diff --git a/mpq/unit/cm/f-z/sovrokor-shadow.grp b/mpq/unit/cm/f-z/sovrokor-shadow.grp new file mode 100644 index 0000000..869744e Binary files /dev/null and b/mpq/unit/cm/f-z/sovrokor-shadow.grp differ diff --git a/mpq/unit/cm/f-z/sovrokor.grp b/mpq/unit/cm/f-z/sovrokor.grp index 3a8775e..a19a695 100644 Binary files a/mpq/unit/cm/f-z/sovrokor.grp and b/mpq/unit/cm/f-z/sovrokor.grp differ diff --git a/mpq/unit/cm/f-z/zytryleth-damage.lof b/mpq/unit/cm/f-z/zytryleth-damage.lof new file mode 100644 index 0000000..19e79b1 Binary files /dev/null and b/mpq/unit/cm/f-z/zytryleth-damage.lof differ diff --git a/mpq/unit/cm/f-z/zytryleth-shadow.grp b/mpq/unit/cm/f-z/zytryleth-shadow.grp new file mode 100644 index 0000000..7f454f1 Binary files /dev/null and b/mpq/unit/cm/f-z/zytryleth-shadow.grp differ diff --git a/mpq/unit/cm/f-z/zytryleth.grp b/mpq/unit/cm/f-z/zytryleth.grp new file mode 100644 index 0000000..228e14a Binary files /dev/null and b/mpq/unit/cm/f-z/zytryleth.grp differ diff --git a/mpq/unit/cm/n/vespene-ridge-puffs.los b/mpq/unit/cm/n/vespene-ridge-puffs.los index d4ba61a..4374741 100644 Binary files a/mpq/unit/cm/n/vespene-ridge-puffs.los and b/mpq/unit/cm/n/vespene-ridge-puffs.los differ diff --git a/mpq/unit/cm/p/amaranth-shadow.grp b/mpq/unit/cm/p/amaranth-shadow.grp index 3a5295a..8b95159 100644 Binary files a/mpq/unit/cm/p/amaranth-shadow.grp and b/mpq/unit/cm/p/amaranth-shadow.grp differ diff --git a/mpq/unit/cm/p/amaranth.grp b/mpq/unit/cm/p/amaranth.grp index 25f24ac..91d0b81 100644 Binary files a/mpq/unit/cm/p/amaranth.grp and b/mpq/unit/cm/p/amaranth.grp differ diff --git a/mpq/unit/cm/p/architect-attack.lol b/mpq/unit/cm/p/architect-attack.lol index a662691..50f2c55 100644 Binary files a/mpq/unit/cm/p/architect-attack.lol and b/mpq/unit/cm/p/architect-attack.lol differ diff --git a/mpq/unit/cm/p/architect-engine.grp b/mpq/unit/cm/p/architect-engine.grp index aa711f5..373650d 100644 Binary files a/mpq/unit/cm/p/architect-engine.grp and b/mpq/unit/cm/p/architect-engine.grp differ diff --git a/mpq/unit/cm/p/architect-shadow.grp b/mpq/unit/cm/p/architect-shadow.grp index 22d94de..94f8f56 100644 Binary files a/mpq/unit/cm/p/architect-shadow.grp and b/mpq/unit/cm/p/architect-shadow.grp differ diff --git a/mpq/unit/cm/p/architect.grp b/mpq/unit/cm/p/architect.grp index 56fa37b..5b78656 100644 Binary files a/mpq/unit/cm/p/architect.grp and b/mpq/unit/cm/p/architect.grp differ diff --git a/mpq/unit/cm/p/atreus-attack.lol b/mpq/unit/cm/p/atreus-attack.lol index ebfa4fd..7e33fe1 100644 Binary files a/mpq/unit/cm/p/atreus-attack.lol and b/mpq/unit/cm/p/atreus-attack.lol differ diff --git a/mpq/unit/cm/p/atreus-remains.grp b/mpq/unit/cm/p/atreus-remains.grp new file mode 100644 index 0000000..7ed6e8d Binary files /dev/null and b/mpq/unit/cm/p/atreus-remains.grp differ diff --git a/mpq/unit/cm/p/atreus-shadow.grp b/mpq/unit/cm/p/atreus-shadow.grp index a9c487e..4f880a7 100644 Binary files a/mpq/unit/cm/p/atreus-shadow.grp and b/mpq/unit/cm/p/atreus-shadow.grp differ diff --git a/mpq/unit/cm/p/atreus.grp b/mpq/unit/cm/p/atreus.grp index 688d4de..6d86e59 100644 Binary files a/mpq/unit/cm/p/atreus.grp and b/mpq/unit/cm/p/atreus.grp differ diff --git a/mpq/unit/cm/p/dracadin-explosion.grp b/mpq/unit/cm/p/dracadin-explosion.grp deleted file mode 100644 index 3cf48b5..0000000 Binary files a/mpq/unit/cm/p/dracadin-explosion.grp and /dev/null differ diff --git a/mpq/unit/cm/p/exemplar-attack.lol b/mpq/unit/cm/p/exemplar-attack.lol index 95e9524..d311735 100644 Binary files a/mpq/unit/cm/p/exemplar-attack.lol and b/mpq/unit/cm/p/exemplar-attack.lol differ diff --git a/mpq/unit/cm/p/exemplar-engine.grp b/mpq/unit/cm/p/exemplar-engine.grp index 0e8c5c2..bd2beed 100644 Binary files a/mpq/unit/cm/p/exemplar-engine.grp and b/mpq/unit/cm/p/exemplar-engine.grp differ diff --git a/mpq/unit/cm/p/exemplar.grp b/mpq/unit/cm/p/exemplar.grp index f1f0a1f..28ba04c 100644 Binary files a/mpq/unit/cm/p/exemplar.grp and b/mpq/unit/cm/p/exemplar.grp differ diff --git a/mpq/unit/cm/p/gladius-attack.lol b/mpq/unit/cm/p/gladius-attack.lol new file mode 100644 index 0000000..c6c27a1 Binary files /dev/null and b/mpq/unit/cm/p/gladius-attack.lol differ diff --git a/mpq/unit/cm/p/gladius-engine.grp b/mpq/unit/cm/p/gladius-engine.grp index 029cf56..b1a506d 100644 Binary files a/mpq/unit/cm/p/gladius-engine.grp and b/mpq/unit/cm/p/gladius-engine.grp differ diff --git a/mpq/unit/cm/p/gladius.grp b/mpq/unit/cm/p/gladius.grp index 6db291e..bf34922 100644 Binary files a/mpq/unit/cm/p/gladius.grp and b/mpq/unit/cm/p/gladius.grp differ diff --git a/mpq/unit/cm/p/panoptus-attack.lol b/mpq/unit/cm/p/panoptus-attack.lol index ef5f034..04f5ded 100644 Binary files a/mpq/unit/cm/p/panoptus-attack.lol and b/mpq/unit/cm/p/panoptus-attack.lol differ diff --git a/mpq/unit/cm/p/panoptus-engine.grp b/mpq/unit/cm/p/panoptus-engine.grp new file mode 100644 index 0000000..20dce94 Binary files /dev/null and b/mpq/unit/cm/p/panoptus-engine.grp differ diff --git a/mpq/unit/cm/p/panoptus.grp b/mpq/unit/cm/p/panoptus.grp index a1d0be4..0735347 100644 Binary files a/mpq/unit/cm/p/panoptus.grp and b/mpq/unit/cm/p/panoptus.grp differ diff --git a/mpq/unit/cm/p/servitor-shadow.grp b/mpq/unit/cm/p/servitor-shadow.grp new file mode 100644 index 0000000..d59dee6 Binary files /dev/null and b/mpq/unit/cm/p/servitor-shadow.grp differ diff --git a/mpq/unit/cm/p/servitor.grp b/mpq/unit/cm/p/servitor.grp index 0a32ae5..dc29441 100644 Binary files a/mpq/unit/cm/p/servitor.grp and b/mpq/unit/cm/p/servitor.grp differ diff --git a/mpq/unit/cm/p/starsovereign-engine.grp b/mpq/unit/cm/p/starsovereign-engine.grp index 102d37f..cbaa9ec 100644 Binary files a/mpq/unit/cm/p/starsovereign-engine.grp and b/mpq/unit/cm/p/starsovereign-engine.grp differ diff --git a/mpq/unit/cm/p/starsovereign.grp b/mpq/unit/cm/p/starsovereign.grp index 1846ed6..e8ac12f 100644 Binary files a/mpq/unit/cm/p/starsovereign.grp and b/mpq/unit/cm/p/starsovereign.grp differ diff --git a/mpq/unit/cm/t/ancile-engine.grp b/mpq/unit/cm/t/ancile-engine.grp new file mode 100644 index 0000000..9a5eac3 Binary files /dev/null and b/mpq/unit/cm/t/ancile-engine.grp differ diff --git a/mpq/unit/cm/t/ancile-engines.grp b/mpq/unit/cm/t/ancile-engines.grp deleted file mode 100644 index 0b65741..0000000 Binary files a/mpq/unit/cm/t/ancile-engines.grp and /dev/null differ diff --git a/mpq/unit/cm/t/centaur-engine.grp b/mpq/unit/cm/t/centaur-engine.grp index 810ebaf..c3925a6 100644 Binary files a/mpq/unit/cm/t/centaur-engine.grp and b/mpq/unit/cm/t/centaur-engine.grp differ diff --git a/mpq/unit/cm/t/centaur.grp b/mpq/unit/cm/t/centaur.grp index e116467..31d0855 100644 Binary files a/mpq/unit/cm/t/centaur.grp and b/mpq/unit/cm/t/centaur.grp differ diff --git a/mpq/unit/cm/t/eidolon-attack.lol b/mpq/unit/cm/t/eidolon-attack.lol new file mode 100644 index 0000000..4539ce8 Binary files /dev/null and b/mpq/unit/cm/t/eidolon-attack.lol differ diff --git a/mpq/unit/cm/t/hippogriff-engine.grp b/mpq/unit/cm/t/hippogriff-engine.grp new file mode 100644 index 0000000..388fb0e Binary files /dev/null and b/mpq/unit/cm/t/hippogriff-engine.grp differ diff --git a/mpq/unit/cm/t/phobos-attack.lol b/mpq/unit/cm/t/phobos-attack.lol index 7578919..63177a6 100644 Binary files a/mpq/unit/cm/t/phobos-attack.lol and b/mpq/unit/cm/t/phobos-attack.lol differ diff --git a/mpq/unit/cm/t/phobos-engine.grp b/mpq/unit/cm/t/phobos-engine.grp index 7fdffbe..6f6524a 100644 Binary files a/mpq/unit/cm/t/phobos-engine.grp and b/mpq/unit/cm/t/phobos-engine.grp differ diff --git a/mpq/unit/cm/t/phobos.grp b/mpq/unit/cm/t/phobos.grp index 842e2fc..837b611 100644 Binary files a/mpq/unit/cm/t/phobos.grp and b/mpq/unit/cm/t/phobos.grp differ diff --git a/mpq/unit/cm/t/pythean-engine.grp b/mpq/unit/cm/t/pythean-engine.grp index f55dcd7..29f7a5e 100644 Binary files a/mpq/unit/cm/t/pythean-engine.grp and b/mpq/unit/cm/t/pythean-engine.grp differ diff --git a/mpq/unit/cm/t/sundog-engine.grp b/mpq/unit/cm/t/sundog-engine.grp index 86bb4d9..5577936 100644 Binary files a/mpq/unit/cm/t/sundog-engine.grp and b/mpq/unit/cm/t/sundog-engine.grp differ diff --git a/mpq/unit/cm/t/sundog.grp b/mpq/unit/cm/t/sundog.grp index 1a8191c..bd9c2c8 100644 Binary files a/mpq/unit/cm/t/sundog.grp and b/mpq/unit/cm/t/sundog.grp differ diff --git a/mpq/unit/cm/t/talos-engine.grp b/mpq/unit/cm/t/talos-engine.grp index 525598f..bde5ddb 100644 Binary files a/mpq/unit/cm/t/talos-engine.grp and b/mpq/unit/cm/t/talos-engine.grp differ diff --git a/mpq/unit/cm/t/wyvern-engine.grp b/mpq/unit/cm/t/wyvern-engine.grp new file mode 100644 index 0000000..59e2ee5 Binary files /dev/null and b/mpq/unit/cm/t/wyvern-engine.grp differ diff --git a/mpq/unit/cm/t/wyvern-engines.grp b/mpq/unit/cm/t/wyvern-engines.grp deleted file mode 100644 index e09f6a1..0000000 Binary files a/mpq/unit/cm/t/wyvern-engines.grp and /dev/null differ diff --git a/mpq/unit/cm/t/wyvern-turret.grp b/mpq/unit/cm/t/wyvern-turret.grp index e1fd4fb..3e90aff 100644 Binary files a/mpq/unit/cm/t/wyvern-turret.grp and b/mpq/unit/cm/t/wyvern-turret.grp differ diff --git a/mpq/unit/cm/t/wyvern.grp b/mpq/unit/cm/t/wyvern.grp index 66f570b..f4a5c02 100644 Binary files a/mpq/unit/cm/t/wyvern.grp and b/mpq/unit/cm/t/wyvern.grp differ diff --git a/mpq/unit/cm/z/chokral-chaszal-shadow.grp b/mpq/unit/cm/z/chokral-chaszal-shadow.grp new file mode 100644 index 0000000..acb62eb Binary files /dev/null and b/mpq/unit/cm/z/chokral-chaszal-shadow.grp differ diff --git a/mpq/unit/cm/z/chokralgant-chaszal.grp b/mpq/unit/cm/z/chokral-chaszal.grp similarity index 100% rename from mpq/unit/cm/z/chokralgant-chaszal.grp rename to mpq/unit/cm/z/chokral-chaszal.grp diff --git a/mpq/unit/cm/z/rubble-unit-medium.grp b/mpq/unit/cm/z/rubble-u-medium.grp similarity index 100% rename from mpq/unit/cm/z/rubble-unit-medium.grp rename to mpq/unit/cm/z/rubble-u-medium.grp diff --git a/mpq/unit/cm/z/rubble-unit-small.grp b/mpq/unit/cm/z/rubble-u-small.grp similarity index 100% rename from mpq/unit/cm/z/rubble-unit-small.grp rename to mpq/unit/cm/z/rubble-u-small.grp diff --git a/mpq/unit/cm/z/rubble-unit-tiny.grp b/mpq/unit/cm/z/rubble-u-tiny.grp similarity index 100% rename from mpq/unit/cm/z/rubble-unit-tiny.grp rename to mpq/unit/cm/z/rubble-u-tiny.grp diff --git a/mpq/unit/cm/z/unit-rubble-medium.grp b/mpq/unit/cm/z/unit-rubble-medium.grp deleted file mode 100644 index d3d61fc..0000000 Binary files a/mpq/unit/cm/z/unit-rubble-medium.grp and /dev/null differ diff --git a/mpq/unit/cm/z/unit-rubble-small.grp b/mpq/unit/cm/z/unit-rubble-small.grp deleted file mode 100644 index 592f5b2..0000000 Binary files a/mpq/unit/cm/z/unit-rubble-small.grp and /dev/null differ diff --git a/mpq/unit/cm/z/unit-rubble-tiny.grp b/mpq/unit/cm/z/unit-rubble-tiny.grp deleted file mode 100644 index bcf0b86..0000000 Binary files a/mpq/unit/cm/z/unit-rubble-tiny.grp and /dev/null differ diff --git a/mpq/unit/cm/z/vornath-pond-shadow.grp b/mpq/unit/cm/z/vornath-pond-shadow.grp new file mode 100644 index 0000000..8707a4f Binary files /dev/null and b/mpq/unit/cm/z/vornath-pond-shadow.grp differ diff --git a/mpq/unit/cmdbtns/acmdbtns.grp b/mpq/unit/cmdbtns/acmdbtns.grp index eed35ce..b3578bf 100644 Binary files a/mpq/unit/cmdbtns/acmdbtns.grp and b/mpq/unit/cmdbtns/acmdbtns.grp differ diff --git a/mpq/unit/cmdbtns/cmdicons.grp b/mpq/unit/cmdbtns/cmdicons.grp index e1f9cf5..01141d6 100644 Binary files a/mpq/unit/cmdbtns/cmdicons.grp and b/mpq/unit/cmdbtns/cmdicons.grp differ diff --git a/mpq/unit/cmdbtns/uniticons.grp b/mpq/unit/cmdbtns/uniticons.grp index fd22e69..adff67a 100644 Binary files a/mpq/unit/cmdbtns/uniticons.grp and b/mpq/unit/cmdbtns/uniticons.grp differ diff --git a/mpq/unit/cm/p/dracadin-attack.lol b/mpq/unit/protoss/dracadin-attack.lol similarity index 100% rename from mpq/unit/cm/p/dracadin-attack.lol rename to mpq/unit/protoss/dracadin-attack.lol diff --git a/mpq/unit/protoss/dracadin-death.grp b/mpq/unit/protoss/dracadin-death.grp index 0ef8dde..1a5c3b1 100644 Binary files a/mpq/unit/protoss/dracadin-death.grp and b/mpq/unit/protoss/dracadin-death.grp differ diff --git a/mpq/unit/protoss/dracadin-explosion.grp b/mpq/unit/protoss/dracadin-explosion.grp new file mode 100644 index 0000000..83f381a Binary files /dev/null and b/mpq/unit/protoss/dracadin-explosion.grp differ diff --git a/mpq/unit/protoss/dracadin-shadow.grp b/mpq/unit/protoss/dracadin-shadow.grp index a60577c..4d7d1e7 100644 Binary files a/mpq/unit/protoss/dracadin-shadow.grp and b/mpq/unit/protoss/dracadin-shadow.grp differ diff --git a/mpq/unit/protoss/dracadin.grp b/mpq/unit/protoss/dracadin.grp index cc7cd43..0aede11 100644 Binary files a/mpq/unit/protoss/dracadin.grp and b/mpq/unit/protoss/dracadin.grp differ diff --git a/mpq/unit/protoss/solarion-engine.grp b/mpq/unit/protoss/solarion-engine.grp new file mode 100644 index 0000000..f3fa8f2 Binary files /dev/null and b/mpq/unit/protoss/solarion-engine.grp differ diff --git a/mpq/unit/protoss/solarion.grp b/mpq/unit/protoss/solarion.grp new file mode 100644 index 0000000..290794f Binary files /dev/null and b/mpq/unit/protoss/solarion.grp differ diff --git a/mpq/unit/protoss/steward.grp b/mpq/unit/protoss/steward.grp new file mode 100644 index 0000000..6336a93 Binary files /dev/null and b/mpq/unit/protoss/steward.grp differ diff --git a/mpq/unit/terran/eidolon-attack.lol b/mpq/unit/terran/eidolon-attack.lol new file mode 100644 index 0000000..4539ce8 Binary files /dev/null and b/mpq/unit/terran/eidolon-attack.lol differ diff --git a/mpq/unit/terran/eidolon-remains.grp b/mpq/unit/terran/eidolon-remains.grp new file mode 100644 index 0000000..2630de7 Binary files /dev/null and b/mpq/unit/terran/eidolon-remains.grp differ diff --git a/mpq/unit/terran/eidolon-shadow.grp b/mpq/unit/terran/eidolon-shadow.grp new file mode 100644 index 0000000..58920c3 Binary files /dev/null and b/mpq/unit/terran/eidolon-shadow.grp differ diff --git a/mpq/unit/terran/eidolon.grp b/mpq/unit/terran/eidolon.grp new file mode 100644 index 0000000..8e3784f Binary files /dev/null and b/mpq/unit/terran/eidolon.grp differ diff --git a/mpq/unit/terran/mason-engine.grp b/mpq/unit/terran/mason-engine.grp index 1fb9bfe..39219a1 100644 Binary files a/mpq/unit/terran/mason-engine.grp and b/mpq/unit/terran/mason-engine.grp differ diff --git a/mpq/unit/terran/trojan-engine.grp b/mpq/unit/terran/trojan-engine.grp new file mode 100644 index 0000000..8b9b547 Binary files /dev/null and b/mpq/unit/terran/trojan-engine.grp differ diff --git a/mpq/unit/terran/trojan.grp b/mpq/unit/terran/trojan.grp new file mode 100644 index 0000000..36d55e3 Binary files /dev/null and b/mpq/unit/terran/trojan.grp differ diff --git a/mpq/unit/terran/valkyrie-attack.lol b/mpq/unit/terran/valkyrie-attack.lol new file mode 100644 index 0000000..4d8e188 Binary files /dev/null and b/mpq/unit/terran/valkyrie-attack.lol differ diff --git a/mpq/unit/terran/valkyrie-engine.grp b/mpq/unit/terran/valkyrie-engine.grp new file mode 100644 index 0000000..0f6e76a Binary files /dev/null and b/mpq/unit/terran/valkyrie-engine.grp differ diff --git a/mpq/unit/terran/valkyrie.grp b/mpq/unit/terran/valkyrie.grp index 1a0b5dd..7085b3a 100644 Binary files a/mpq/unit/terran/valkyrie.grp and b/mpq/unit/terran/valkyrie.grp differ diff --git a/mpq/unit/terran/valkyrie.lol b/mpq/unit/terran/valkyrie.lol new file mode 100644 index 0000000..8627575 Binary files /dev/null and b/mpq/unit/terran/valkyrie.lol differ diff --git a/mpq/unit/terran/vulture-engine.grp b/mpq/unit/terran/vulture-engine.grp new file mode 100644 index 0000000..4994149 Binary files /dev/null and b/mpq/unit/terran/vulture-engine.grp differ diff --git a/mpq/unit/terran/wraith-engine.grp b/mpq/unit/terran/wraith-engine.grp index 0b1c1e9..f4b83f0 100644 Binary files a/mpq/unit/terran/wraith-engine.grp and b/mpq/unit/terran/wraith-engine.grp differ diff --git a/mpq/unit/thingy/pscglow.grp b/mpq/unit/thingy/pscglow.grp deleted file mode 100644 index b9e0bf2..0000000 Binary files a/mpq/unit/thingy/pscglow.grp and /dev/null differ diff --git a/mpq/unit/thingy/tdrglow.grp b/mpq/unit/thingy/tdrglow.grp deleted file mode 100644 index ea14367..0000000 Binary files a/mpq/unit/thingy/tdrglow.grp and /dev/null differ diff --git a/mpq/unit/wirefram/grpwire.grp b/mpq/unit/wirefram/grpwire.grp index 8d06d90..98ef0cb 100644 Binary files a/mpq/unit/wirefram/grpwire.grp and b/mpq/unit/wirefram/grpwire.grp differ diff --git a/mpq/unit/wirefram/wirefram.grp b/mpq/unit/wirefram/wirefram.grp index 8283f6b..7dbfd12 100644 Binary files a/mpq/unit/wirefram/wirefram.grp and b/mpq/unit/wirefram/wirefram.grp differ diff --git a/mpq/unit/zerg/hydralisk-birth.grp b/mpq/unit/zerg/hydralisk-birth.grp new file mode 100644 index 0000000..4d90cd2 Binary files /dev/null and b/mpq/unit/zerg/hydralisk-birth.grp differ diff --git a/mpq/unit/zerg/hydralisk-mutate.grp b/mpq/unit/zerg/hydralisk-mutate.grp new file mode 100644 index 0000000..7824405 Binary files /dev/null and b/mpq/unit/zerg/hydralisk-mutate.grp differ diff --git a/mpq/unit/zerg/hydralisk-remains.grp b/mpq/unit/zerg/hydralisk-remains.grp new file mode 100644 index 0000000..a55970a Binary files /dev/null and b/mpq/unit/zerg/hydralisk-remains.grp differ diff --git a/mpq/unit/zerg/hydralisk-shadow.grp b/mpq/unit/zerg/hydralisk-shadow.grp new file mode 100644 index 0000000..ce73f55 Binary files /dev/null and b/mpq/unit/zerg/hydralisk-shadow.grp differ diff --git a/mpq/unit/zerg/hydralisk.grp b/mpq/unit/zerg/hydralisk.grp index 676b0fb..9aff40c 100644 Binary files a/mpq/unit/zerg/hydralisk.grp and b/mpq/unit/zerg/hydralisk.grp differ diff --git a/mpq/unit/zerg/zethrokor-birth.grp b/mpq/unit/zerg/zethrokor-birth.grp new file mode 100644 index 0000000..2de70a7 Binary files /dev/null and b/mpq/unit/zerg/zethrokor-birth.grp differ diff --git a/mpq/unit/zerg/zethrokor-death.grp b/mpq/unit/zerg/zethrokor-death.grp deleted file mode 100644 index 637b116..0000000 Binary files a/mpq/unit/zerg/zethrokor-death.grp and /dev/null differ diff --git a/mpq/unit/zerg/zethrokor-mutate.grp b/mpq/unit/zerg/zethrokor-mutate.grp new file mode 100644 index 0000000..7645081 Binary files /dev/null and b/mpq/unit/zerg/zethrokor-mutate.grp differ diff --git a/mpq/unit/zerg/zethrokor-remains.grp b/mpq/unit/zerg/zethrokor-remains.grp new file mode 100644 index 0000000..b60f4e9 Binary files /dev/null and b/mpq/unit/zerg/zethrokor-remains.grp differ diff --git a/mpq/unit/zerg/zethrokor-shadow.grp b/mpq/unit/zerg/zethrokor-shadow.grp new file mode 100644 index 0000000..3920626 Binary files /dev/null and b/mpq/unit/zerg/zethrokor-shadow.grp differ diff --git a/mpq/unit/zerg/zethrokor.grp b/mpq/unit/zerg/zethrokor.grp index 996c6f8..4746ee3 100644 Binary files a/mpq/unit/zerg/zethrokor.grp and b/mpq/unit/zerg/zethrokor.grp differ diff --git a/mpq/unit/zerg/zzedeath.grp b/mpq/unit/zerg/zzedeath.grp new file mode 100644 index 0000000..54b9526 Binary files /dev/null and b/mpq/unit/zerg/zzedeath.grp differ diff --git a/patchnotes.md b/patchnotes.md index 52dd8cf..60ae23c 100644 --- a/patchnotes.md +++ b/patchnotes.md @@ -1,15 +1,297 @@ -# 25 July 2026 -## Year 4, month 7, patch 4 +# 23 August 2026 +## Year 4, month 8, patch 1 ## Patch goals -- Continue technical improvements for the Throneroom stage! +- Initial balancing adjustments post-Acropolis #4! +- Deploy factional variants for Augustcrap, a Mapcrap event! +- Continue technical improvements and bugfixes - Further improve audiovisuals - [Subscribe on ko-fi](https://ko-fi.com/pr0nogoandveeq7) to get a sneak peek of the incoming changes! -## Core +# Core + +## User Interface +- Improved server-side desync logging (c. Veeq7) +- Added user-configurable window flash for when another player joins your lobby (c. Jesse) - Reorganized replay options to `Misc` tab (c. Jesse) +- Added user-configurable Askosi player color preferences + +## Bugfixes +- **Stability:** + - Resolved more desync cases + - Resolved a crash when certain weapons targeted units directly on top of them (r. shopkeeper dog) + - Crashes now generate replays, which can be attached with your bug reports! (c. DF) + - Lardfix: Fixed rare crash from AI attack force handling (c. DF) +- **Gameplay:** + - Group casting now correctly issues orders to selected units in cases where some selected units did not have enough energy for an ability (r. shopkeeper dog) + - *Caveat: Still throws an error message and some abilities will issue move orders to units with insufficient energy* + - **Cyprian**s no longer occasionally freeze when issued move orders between attack orders (r. shopkeeper dog) + - **Cardinal**s can no longer proc Sustaining Sermon on allies (r. shopkeeper dog) + - **Tethzorokor**s no longer fail to hit large enemies from certain angles + - Flying workers and **Dyad**s now use iscript-based movement, removing acceleration and eliminating rare visual and harvesting bugs + - The **Bounty** is no longer a resource drop-off point (r. ConcealedOrganic) + - Flyers can now correctly be loaded into air garrisons (e.g. Askosi Grandstand) + - **Scrapworld: Gold Rush** now correctly accounts for the resource cost of dual- and triple-birth units (r. shopkeeper dog) + - Computer-controlled **Cantavis** now spam **Psionic Storm** casts less frequently + - **Skryokor**s are now appropriately treated as Broodspawn for timed life and incubation purposes (r. jakulangski) + - Lardfix: Protected against rare AI breakage from niche town configurations (c. DF) + - **Nydus Trinity Eidolon**s now correctly regenerate life at a higher rate when cloaked (r. jakulangski) + - **Tencendur**s can now issue load orders + - Traps placed by mine-layers (e.g. **Vulture**) now inherit debuffs (e.g. Infestation) (r. jakulangski) + - Resolved mnemonic hotkey conflict between: + - **Rapid Rendezvous** and **Place Eyelet** (r. Krankendau) + - **Abutment** and **Proscenium** (r. Krankendau) + - **Caphrolosk** and **Kethraj Keep** (r. jakulangski) + - Fixed swapped faction order in `set_faction` crig action for **Goszirith** and **Orkoti** (r. Hamster) +- **Audiovisuals:** + - Resolved various weapon SFX mismatches (r. lolrsk8s) + - Fixed "dead pixels" in Askosi UI + - Corrected **Spraith Cesiant** shadow (r. Mimika) + - Fixed **Endbore** weapon name (r. Concealed Organic) + - Fixed bad gas puff coordinates for Installation Vespene Ridges (r. BtyB) + - Hid `(null)` string on replay playback (c. DF) + - Hid force name display on neutral unit selection (c. DF) +- **User Interface:** + - Fixed lack of options sync for **Askosi** in the random race selector (r. Alexhandr, c. Jesse) ## Audiovisuals +- New models for: + - Eidolon, Gladius (c. Solstice) + - Valkyrie, Trojan, Amaranth, Atreus, Servitor, Exemplar, Zethrokor, Hydralisk (c. Baelethal) + - Solarion, Steward (c. DeltaCadimus) + - Eidolon (Nydus), Valkyrie (Hecaton), Inzorthrokor (Imicren), Sovrokor (Goszirith), Hydralisk (Orkoti), Iziralisk (Zorthos) + - All new wireframes c. jun3hong! +- Updated models for: + - Vulture, Wraith, Wyvern, Pythean, Sundog, Centaur, Phobos, Hippogriff, Dracadin, Architect, Panoptus (c. Solstice) +- Added engine graphic for Star Sovereign (c. Solstice) +- Updated engine graphics for: + - Mason, Talos, Vulture, Wraith, Ancile, Wyvern, Pythean, Sundog, Centaur, Phobos, Hippogriff +- Updated Askosi UI to be GREEN! (c. DF) - Updated background graphics for Options and CrownLink Join menus (c. Jesse) +- Added unique shadows for **Vornath Pond**, **Chokral Chaszal** +- Updated selection circle size for **Epigraph** +- New unit responses for: + - **Vicar**, **Conduit** - New death SFX for: - - Striga (c. Milia) \ No newline at end of file + - Striga (c. Milia) +- New ambient SFX for: + - **Landlock** + +# Balance + +## Neutral +- Neutral garrisons (e.g. the Tencendur on Magnetron): + - Now eject units when taking fatal damage, heal to full life, and become stunned for 10 seconds + - Can only be destroyed if they take fatal damage during the 10 second stun window + +## Terran +- [Shaman](https://cosmonarchy.com/terran/vulture): + - Resource costs 200/200 » 150/150 + - HP 160 » 140 +- [Vulture](https://cosmonarchy.com/terran/vulture): + - Vision range 8 » 7 +- [Phalanx](https://cosmonarchy.com/terran/phalanx): + - HP 240 » 275 + - **Arclite Shock Cannon:** + - Splash radius 16/32/48 » 16/40/64 +- [Aion](https://cosmonarchy/com/terran/aion): + - Transport weight 8 » 12 +- [Wraith](https://cosmonarchy.com/terran/wraith): + - HP 110 » 120 +- [Quarry](https://cosmonarchy.com/terran/quarry/): + - Build time 45 » 35 +- [Palladium](https://cosmonarchy.com/terran/palladium): + - Resource costs 300/150 » 300/100 + - HP 900 » 800 + - Armor 4 » 3 +- [Mantle](https://cosmonarchy.com/terran/mantle): + - Resource costs 200/150 » 250/125 + - HP 1000 » 900 + - Armor 3 » 4 +- [Starport](https://cosmonarchy.com/terran/starport): + - Resource costs 150/225 » 200/150 + +### Terran factions +- [Auriel](https://cosmonarchy.com/terran/auriel): + - **Quarternary Rifle:** + - Weapon cooldown 0.92 » 0.67 +- [Broadside](https://cosmonarchy.com/terran/broadside): + - HP 300 » 335 +- **NEW:** [Camazotz](https://cosmonarchy.com/terran/camazotz): + - **Nydus Trinity:** Harakan replacement. Sustaining infantry. +- **NEW:** [Arquebus](https://cosmonarchy.com/terran/arquebus): + - **Hecaton Coalition:** Cataphract replacement. Incendiary platform. + +## Protoss +- [Artisan](https://cosmonarchy.com/protoss/artisan): + - Movement speed 4.16 » 4 (~4% reduction) +- [Amaranth](https://cosmonarchy.com/protoss/amaranth): + - Vision range 9 7 +- [Atreus](https://cosmonarchy.com/protoss/atreus): + - Resource costs 200/25 » 150/100 + - HP 200 » 160 + - Shields 100 » 60 + - Armor 2 » 3 + - Speed 4.8 » 6 + - **Dauntless Disruption Cannon:** + - Weapon damage 20 » 12 + - Weapon range 7 » 5 + - Attack cooldown 1.25 » 1 + - No longer targets air units + - **Interception** removed + - **NEW: Binding Plasma**, as with **Oscilliant** / **Gladius** +- [Cantavis](https://cosmonarchy.com/protoss/cantavis): + - Build time 33 » 30 + - **Hallucination:** + - Projectile can no longer be intercepted by hostiles +- [Charlatan](https://cosmonarchy.com/protoss/charlatan): + - **Fervent Blaster:** + - Splash radius 12/24/32 » 16/24/32 +- [Mind Tyrant](https://cosmonarchy.com/protoss/mind-tyrant): + - **Malefactor:** + - Tyrannize procs no longer drain energy + - Mind Tyrant must still have energy to proc Tyrannize + - **Maelstrom:** + - Movement speed slow 50% » 66% +- [Idol](https://cosmonarchy.com/protoss/idol): + - **Prismatic Blasters:** + - Splash radius 12/18/24 » 16/24/32 +- [Exemplar](https://cosmonarchy.com/protoss/exemplar): + - Resource costs 300/150 250/150 +- [Warden](https://cosmonarchy.com/protoss/warden): + - Build time 35 » 30 +- [Lattice](https://cosmonarchy.com/protoss/lattice): + - HP 400 » 500 + - Shields 250 » 300 +- [Stargate](https://cosmonarchy.com/protoss/stargate): + - Resource costs 200/200 » 200/150 + +### Protoss factions +- **NEW:** [Simulacrum (Khalendric)](https://cosmonarchy.com/protoss/simulacrum-khalendric): + - **Khalendric Knights:** Simulacrum variant with **Last Orders** (e.g. Aurora) +- **NEW:** [Idol (Khalendric)](https://cosmonarchy.com/protoss/idol-khalendric): + - **Khalendric Knights:** Idol variant with **Signify** (e.g. Hierophant) +- **NEW:** [Vestige](https://cosmonarchy.com/protoss/vestige): + - **Starbound:** Cabalist variant with on-damage cloaking + +## Zerg +- **Bone of Reflection:** + - Armor pen 0 » 1 +- **Corpse Cocoon:** + - Allied corpses now spawn **Rilirokors** for consumed ground units and **Rililisks** for consumed air units +- **Blissful Embrace:** + - Infested units now incubate **Rilirokors** on damage taken (like **Zoryusthaleth**) +- **Plague:** + - Now reduces HP and shield healing by 50% +- [Rililisk](https://cosmonarchy.com/zerg/rililisk): + - **Swarming Spores:** + - Weapon damage 1x5 » 1x4 + - Weapon range 2 » 4 +- [Malkothrokor](https://cosmonarchy.com/zerg/malkothrokor): + - Structure gestation now occurs 50% faster +- [Nathrokor](https://cosmonarchy.com/zerg/nathrokor): + - **Adrenal Frenzy** (movement speed on attack) removed +- [Vorvrokor](https://cosmonarchy.com/zerg/): + - Build time 12 » 15 +- [Liiralisk](https://cosmonarchy.com/zerg/liiralisk): + - Build time 20 » 25 +- [Kalkalisk](https://cosmonarchy.com/zerg/kalkalisk): + - Build time 25 » 30 +- [Protathalor](https://cosmonarchy.com/zerg/protathalor): + - Build time 22 » 25 + - Resource costs 125/50 » 150/75 + - Now two per requisition +- [Mutalisk](https://cosmonarchy.com/zerg/mutalisk): + - Build time 25 » 30 +- [Sovroleth](https://cosmonarchy.com/zerg/sovroleth): + - Now considered a Sire +- [Hydralisk](https://cosmonarchy.com/zerg/hydralisk): + - Build time 20 » 18 + - HP 80 » 100 +- [Bactalisk](https://cosmonarchy.com/zerg/bactalisk): + - Build time 25 » 30 + - HP 120 » 100 +- [Tethzorokor](https://cosmonarchy.com/zerg/tethzorokor): + - Build time 28 » 32 +- [Vithrilisk](https://cosmonarchy.com/zerg/vithrilisk): + - Build time 25 » 30 +- [Ultrokor](https://cosmonarchy.com/zerg/ultrokor): + - Build time 40 » 45 +- [Zobriolisk](https://cosmonarchy.com/zerg/zobriolisk): + - Resource costs 200/100 » 150/75 + - Build time 25 » 35 +- [Zarcavrokor](https://cosmonarchy.com/zerg/zarcavrokor): + - Build time 35 » 40 + - Vision range 9 » 7 + - **Bisecting Blades:** + - Weapon cooldown 0.42 » 0.67 +- [Vornath Pond](https://cosmonarchy.com/zerg/vornath-pond): + - Build time 40 » 50 +- [Skibact Scab](https://cosmonarchy.com/zerg/skibact-scab): + - Resource costs 75/150 » 100/175 + - Build time 45 » 50 + +### Zerg Factions +- [Sovrokor](https://cosmonarchy.com/zerg/sovrokor): + - Now considered a Sire +- **NEW:** [Rozirokor](https://cosmonarchy.com/zerg/rozirokor): + - **Imicren Tendril:** Izirokor replacement. Has Saber Siphon. +- **NEW:** [Alzurokor](https://cosmonarchy.com/zerg/alzurokor): + - **Imicren Tendril:** Ultrokor replacement. Has Captivating Claws and Devouring Instinct. +- **NEW:** [Hydrokor](https://cosmonarchy.com/zerg/hydrokor): + - **Goszirith Tendril:** Hydralisk replacement. Dual-birth melee strain with Mitosis. +- **NEW:** [Zytryleth](https://cosmonarchy.com/zerg/zytryleth): + - **Zorthos Tendril:** Structure mutated from Scrylyleth. Has Omnispores, acts as a town center, and gestates Larvae. + +## Askosi +- **Impact Dissipation:** + - No longer heals + - Now blocks the next weapon attack +- **Ash Heap:** + - Duration 2 seconds » 5 seconds +- [Proselyte](https://cosmonarchy.com/askosi/proselyte): + - Movement speed 5.2 » 5.6 +- [Missionary](https://cosmonarchy.com/askosi/missionary): + - HP 75 » 85 + - **NEW: Accelerated Speech** (passive) + - Gains +2 armor pen when within 2 weapon range of its target +- [Cardinal](https://cosmonarchy.com/askosi/cardinal): + - **Sustaining Sermon:** + - Now heals the proccing Cardinal + - **Rapid Rendevous** removed + - **NEW: Ashbind:** + - Leaps to an enemy target, applying Ash Heap to enemies within 3 range +- [Mimic](https://cosmonarchy.com/askosi/mimic): + - **Scrapworld: Vital Remains** removed + - **Mimicry:** + - Mimicked attacks now apply Scrapworld: Gold Rush +- [Aphorist](https://cosmonarchy.com/askosi/aphorist): + - Resource costs 50/25 » 100/25 +- [Doronin](https://cosmonarchy.com/askosi/doronin): + - Resource costs 225/0 » 175/50 + - Armor 3 » 4 +- [Insurant](https://cosmonarchy.com/askosi/insurant): + - **Elxe Twinshot:** + - No longer attacks air units +- [Rove](https://cosmonarchy.com/askosi/rove): + - HP 90 » 100 + - **Elre Scaleshot:** + - No longer attacks air units +- [Intendent](https://cosmonarchy.com/askosi/intendent): + - Movement speed 4 » 5.2 +- [Endbore](https://cosmonarchy.com/askosi/endbore): + - **Irko Octorshard:** + - Weapon damage 8x10 » 8x8 + - No longer attacks air units +- [Grandstand](https://cosmonarchy.com/askosi/grandstand): + - Resource costs 200/0 » 150/0 +- [Chantry](https://cosmonarchy.com/askosi/chantry): + - Resource costs 75/50 » 75/100 + - Build time 45 » 35 +- [Radix](https://cosmonarchy.com/askosi/radix): + - Build time 65 » 60 +- [Function](https://cosmonarchy.com/askosi/function): + - Resource costs 150/25 » 125/25 + - Build time 75 » 70 +- [Cosmoscope](https://cosmonarchy.com/askosi/comoscope): + - Build time 90 » 75 \ No newline at end of file diff --git a/plugins/aise.qdp b/plugins/aise.qdp index b7f9efe..4f23a56 100644 Binary files a/plugins/aise.qdp and b/plugins/aise.qdp differ diff --git a/plugins/gptp.qdp b/plugins/gptp.qdp index 6264360..fa00150 100644 Binary files a/plugins/gptp.qdp and b/plugins/gptp.qdp differ