diff --git a/master changelog.md b/master changelog.md index 038dbb8c..125635e5 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 +- [17 January 2026](#17-january-2026) - [7 January 2026](#7-january-2026) - [30 November 2025](#30-november-2025) - [16 November 2025](#16-november-2025) @@ -110,6 +111,151 @@ See patchnotes.md for info on the most recent patch! - [13 August 2020](#13-august-2020) - [12 August 2020](#12-august-2020) +# 27 January 2026 +## Year 4, month 1, patch 2 + +## Patch goals +- Continue balancing for all races +- Continue Askosi development +- Further improve audiovisuals +- [Subscribe on ko-fi](https://ko-fi.com/pr0nogoandveeq7) to get a sneak peek of the incoming changes! + +# Core changes + +## Random (c. Jesse) +- Now supports **Askosi**! +- Now displays the race assigned to players on map start +- It is now possible to select which races will be eligible for random selection via config! + +## User Interface (c. Jesse) +- Launch screen version string now displays build version +- CrownLink passwords are now shown in lobby, if applicable + +## Game Modes +- **Faction Wars:** + - Now randomizes player faction after 1 minute, if not set + +## Bugfixes +- **Desyncs:** + - Resolved desyncs related to construction and training speeds (c. Veeq7 & Jesse) +- **Stability:** + - Fixed common Solarion crash (r. MuskyHusky) + - Fixed Grandstand cargo crash (r. ConcealedOrganic) +- **Audiovisual** + - Fixed vespene and supply icons for Askosi (c. Jesse) + - Fixed various text display issues related to unit training and cancel context + +## Audiovisuals +- New sprite for: + - **Zealot** (incl. Starbound variant; c. Solstice) + - **Rove** +- New unit responses for: + - **Striga** (c. OunceOfMilia) + +# Balance changes + +## Terran +- [Lodestone](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/lodestone): + - Sight range 10 » 12 +- [Atlas](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/atlas): + - Build time 75 » 60 +- [Daedala](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/daedala): + - Build time 120 » 100 + +## Protoss +- [Atreus](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=protoss/atreus): + - Resource costs 200/50 » 200/25 +- [Grand Library](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=protoss/grand-library): + - Resource costs 250/50 » 225/50 + - Build time 55 » 60 +- [Prostration Stage](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=protoss/prostration-stage): + - Resource costs 400/200 450/200 + - Build time 65 » 70 +- [Unitary Union](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=protoss/unitary-union): + - Resource costs 400/350 450/350 + - Build time 65 » 70 +- [Argosy](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=protoss/argosy): + - Build time 70 » 75 + +## Zerg +- **Bone of Reflection:** + - *Used by Tethzorokor, Zarcavrokor** + - Armor penetration 3 » 0 +- [Agrileth](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/agrileth): + - Resource costs 150/100 » 150/50 + - Transport weight 8 » 6 +- [Tethzorokor](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/tethzorokor): + - HP 240 » 220 +- [Irol Iris](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/irol-iris): + - Build time 60 » 20 +- [Othstol Oviform](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/othstol-oviform): + - Build time 120 » 40 + +## Askosi +- **New arrivals:** + - T1: Eyelet (from Proselyte) + - T2: Constituent (from Bounty) + - T2: Biotic (Aphorist, Thaumalogue, Avatar, Doronin), Conduit, Bestiary + - T2: Skybound (Akreno, Iconoclast, Crematorium), Astrolabe +- **Booming Blast:** + - Used by **Vicar** + - Now deals friendly splash +- **Rematerialize:** + - Used by **Vicar** and **Emissary** + - Ability range 5 » 6 +- [Dyad](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/dyad): + - Resource costs 50/50 » 50/25 +- [Mimic](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/mimic): + - Sight range 8 » 9 + - **Scrapworld: Vital Remains:** + - Now grants 1 non-stacking armor pen to allies for 4 seconds +- [Vicar](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/vicar): + - Resource costs 75/50 » 100/50 + - **Ospo Twinshard:** + - Weapon range 7 » 6 +- [Rove](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/rove): + - Armor 1 » 0 + - Collision size reduced by ~10% + - Acceleration adjusted +- [Scepter](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/scepter): + - **Principality Assembly:** + - While active, now grants 1 stacking armor pen to allies within 8 range +- [Intendent](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/intendent): + - Resource costs 150/50 » 125/50 + - HP 140 » 120 + - Armor 2 » 1 + - **Ersa Driver:** + - Armor penetration 3 » 0 + - Weapon range 6 » 5 +- [Helion](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/helion): + - Resource costs 100/50 » 100/25 + - Build time 18 » 15 + - HP 120 » 100 + - **Usko Scrapray:** + - Weapon cooldown 0.63 » 0.5 +- [Tirade](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/tirade): + - Armor 2 » 1 + - **Ikta Driver:** + - Weapon damage 10 » 7 +- [Grandstand](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/grandstand): + - No longer has **Booming Blast** + - Now has **Power Overload** +- [Chantry](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/chantry): + - Resource costs 100/50 » 75/50 + - HP 350 » 400 +- [Radix](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/radix): + - Build time 50 » 65 +- [Cipher](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/cipher): + - Build time 65 » 75 +- [Function](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/function): + - Build time 60 » 75 +- [Gauntlet](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/gauntlet): + - Resource costs 200/75 » 200/100 + - Build time 80 » 90 +- [Cosmoscope](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/cosmoscope): + - Resource costs 100/150 100/100 + - Now requires Radix OR Function, from Cipher OR Gauntlet + # 7 January 2026 ## Year 4, month 1, patch 1 diff --git a/mpq/arr/flingy.datex b/mpq/arr/flingy.datex index e0284086..c3d8fb34 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 363a550a..5cb85467 100644 --- a/mpq/arr/flingy.txt +++ b/mpq/arr/flingy.txt @@ -659,20 +659,20 @@ Obelisk Auxine Constituent Missionary Weaponhit -Extended Flingy #453 -Extended Flingy #454 -Extended Flingy #455 -Extended Flingy #456 -Extended Flingy #457 -Extended Flingy #458 -Extended Flingy #459 -Extended Flingy #460 -Extended Flingy #461 -Extended Flingy #462 -Extended Flingy #463 -Extended Flingy #464 -Extended Flingy #465 -Extended Flingy #466 +Maverick (Upstart) +Vulture (Upstart) +Goremast +Eidolon (Upstart) +Cutlass +Cutlass Turret +Broadside +Broadside Turret +Ecclesiast (Astral) +Ajax +Dorminge +Domain +Panoply +Lotiro Extended Flingy #467 Extended Flingy #468 Extended Flingy #469 diff --git a/mpq/arr/images.datex b/mpq/arr/images.datex index 91dba5a5..32a1140e 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 baaa44ba..002fba99 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 3c8fc454..de064018 100644 --- a/mpq/arr/images.txt +++ b/mpq/arr/images.txt @@ -2302,35 +2302,35 @@ Constituent Constituent Shadow Missionary Weaponhit Rove Engine -Extended Image #1302 -Extended Image #1303 -Extended Image #1304 -Extended Image #1305 -Extended Image #1306 -Extended Image #1307 -Extended Image #1308 -Extended Image #1309 -Extended Image #1310 -Extended Image #1311 -Extended Image #1312 -Extended Image #1313 -Extended Image #1314 -Extended Image #1315 -Extended Image #1316 -Extended Image #1317 -Extended Image #1318 -Extended Image #1319 -Extended Image #1320 -Extended Image #1321 -Extended Image #1322 -Extended Image #1323 -Extended Image #1324 -Extended Image #1325 -Extended Image #1326 -Extended Image #1327 -Extended Image #1328 -Extended Image #1329 -Extended Image #1330 +Askosi Embedded Overlay +Maverick (Upstart) +Maverick (Upstart) Shadow +Maverick (Upstart) Remains +Vulture (Upstart) +Vulture (Upstart) Shadow +Vulture (Upstart) Engine +Goremast +Goremast Shadow +Eidolon (Upstart) +Eidolon (Upstart) Shadow +Eidolon (Upstart) Remains +Cutlass +Cutlass Shadow +Cutlass Turret +Broadside +Broadside Shadow +Broadside Turret +Ecclesiast (Astral) +Ecclesiast (Astral) Shadow +Dorminge +Dorminge Shadow +Warring Winds Overlay +Domain +Domain Shadow +Panoply +Panoply Shadow +Lotiro +Lotiro Shadow Extended Image #1331 Extended Image #1332 Extended Image #1333 diff --git a/mpq/arr/orders.datex b/mpq/arr/orders.datex index b6e72a1f..bf5b9fcd 100644 Binary files a/mpq/arr/orders.datex and b/mpq/arr/orders.datex differ diff --git a/mpq/arr/orders.txt b/mpq/arr/orders.txt index ec97ab86..64832c0e 100644 --- a/mpq/arr/orders.txt +++ b/mpq/arr/orders.txt @@ -26,7 +26,7 @@ Nothing 3 (Unused) Drone Start Mutate Drone Mutate Use Ability (Infest 1) -Use Ability (Infest 2) unused +Use Ability (Preylock) Infest (Queen) Build (SCV) Build (Probe) @@ -137,7 +137,7 @@ Attack Ground (Infested Terran) Hold Position (Suicide Units) Use Ability (Dimensional Recall) Teleport To Location (Freezes the casting unit) -Use Ability (Scanner Sweep) unused +Use Ability (Remote Hijack) Idle (Scanner Sweep) Use Ability (Defensive Matrix) Use Ability (Psionic Storm) diff --git a/mpq/arr/portdata.datex b/mpq/arr/portdata.datex index e58c6fce..0a1c0068 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 050d3ab5..354b966f 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 b9a6d440..5dea8953 100644 --- a/mpq/arr/portdata.txt +++ b/mpq/arr/portdata.txt @@ -283,27 +283,27 @@ Avatar Ecclesiast (Khalendric) Ecclesiast (Astral) Pr0nogo -Extended Portrait #176 -Extended Portrait #177 -Extended Portrait #178 -Extended Portrait #179 -Extended Portrait #180 -Extended Portrait #181 -Extended Portrait #182 -Extended Portrait #183 -Extended Portrait #184 -Extended Portrait #185 -Extended Portrait #186 -Extended Portrait #187 -Extended Portrait #188 -Extended Portrait #189 -Extended Portrait #190 -Extended Portrait #191 -Extended Portrait #192 -Extended Portrait #193 -Extended Portrait #194 -Extended Portrait #195 -Extended Portrait #196 +Arhaun +Blackguard +Blackjack (Golden) +Cicatus +Cleric (Futurist) +Cyclops (Futurist) +Dracadin (Order) +Extatus +Harakan (Golden) +Manifold (Starbound) +Qilin +Quazrokor +Renesair +Tiangou +Zealot (Starbound) +Maverick (Futurist) +Maverick (Upstart) +Hydralisk (Orkoti) +Maverick (Golden) +Auxine +Boyeau Extended Portrait #197 Extended Portrait #198 Extended Portrait #199 diff --git a/mpq/arr/sfxdata.dat b/mpq/arr/sfxdata.dat index d9c958d0..d88b8c79 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 97a30d80..b3657489 100644 --- a/mpq/arr/sfxdata.txt +++ b/mpq/arr/sfxdata.txt @@ -4186,19 +4186,19 @@ Akreno Passive Charge 03 Akreno Passive Proc 01 Akreno Passive Proc 02 Akreno Passive Proc 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 +Seraph Irradiate Cast 01 +Broadside Weaponfire 01 +Broadside Weaponfire 02 +Broadside Weaponfire 03 +Cutlass Weaponfire 01 +Cutlass Weaponfire 02 +Cutlass Weaponfire 03 +Cutlass Weaponfire 04 +Avenging Gestation Proc 01 +Warring Winds Proc 01 +Warring Winds Proc 02 +Warring Winds Proc 03 +Warring Winds Proc Final Extended Sound #1 Extended Sound #1 Extended Sound #1 diff --git a/mpq/arr/sounds.txt b/mpq/arr/sounds.txt index b42584d5..df6d5c57 100644 --- a/mpq/arr/sounds.txt +++ b/mpq/arr/sounds.txt @@ -4174,6 +4174,9 @@ cm\a\zonguard\wf-b-03.wav cm\a\agonist\wf-01.wav cm\a\agonist\wf-02.wav cm\a\agonist\wf-03.wav +cm\a\petract\wf-01.wav +cm\a\petract\wf-02.wav +cm\a\petract\wf-03.wav cm\a\akreno\wf-01.wav cm\a\akreno\wf-02.wav cm\a\akreno\wf-03.wav @@ -4182,4 +4185,17 @@ cm\a\akreno\pas-charge-02.wav cm\a\akreno\pas-charge-03.wav cm\a\akreno\pas-proc-01.wav cm\a\akreno\pas-proc-02.wav -cm\a\akreno\pas-proc-03.wav \ No newline at end of file +cm\a\akreno\pas-proc-03.wav +cm\t\seraph\irradiate-cast-01.wav +cm\f-t\broadside\wf-01.wav +cm\f-t\broadside\wf-02.wav +cm\f-t\broadside\wf-03.wav +cm\f-t\cutlass\wf-01.wav +cm\f-t\cutlass\wf-02.wav +cm\f-t\cutlass\wf-03.wav +cm\f-t\cutlass\wf-04.wav +Zerg\AVENGER\ZAvRdy00.WAV +cm\a\phontis\pas-proc-a-01.wav +cm\a\phontis\pas-proc-a-02.wav +cm\a\phontis\pas-proc-a-03.wav +cm\a\phontis\pas-proc-b-01.wav \ No newline at end of file diff --git a/mpq/arr/sprites.datex b/mpq/arr/sprites.datex index 855bcc5f..76af1c7f 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 547181d2..8897300a 100644 --- a/mpq/arr/sprites.txt +++ b/mpq/arr/sprites.txt @@ -1114,20 +1114,20 @@ Obelisk Auxine Constituent Missionary Weaponhit -Extended Sprite #600 -Extended Sprite #601 -Extended Sprite #602 -Extended Sprite #603 -Extended Sprite #604 -Extended Sprite #605 -Extended Sprite #606 -Extended Sprite #607 -Extended Sprite #608 -Extended Sprite #609 -Extended Sprite #610 -Extended Sprite #611 -Extended Sprite #612 -Extended Sprite #613 +Maverick (Upstart) +Maverick (Upstart) Remains +Vulture (Upstart) +Goremast +Eidolon (Upstart) +Cutlass +Cutlass Turret +Broadside +Broadside Turret +Ecclesiast (Astral Omen) +Dorminge +Domain +Panoply +Lotiro Extended Sprite #614 Extended Sprite #615 Extended Sprite #616 diff --git a/mpq/arr/techdata.datex b/mpq/arr/techdata.datex index 3997d1a0..6c67aeb3 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 9e61908b..9bd4043b 100644 --- a/mpq/arr/techdata.txt +++ b/mpq/arr/techdata.txt @@ -1,9 +1,9 @@ Stim Packs (Maverick) Lobotomy Grenade (Francisco Goska) Controlled Demolition (Terran) -Spider Mines (Vulture) +Terran Mines (+ Proselyte) Scanner Sweep (Comsat Station) -Siege Mode (Phalanx) +Deployed Mode (Terran) Defensive Matrix (Azazel) Irradiate (Seraph) Yamato Cannon (Magnetar) @@ -14,15 +14,15 @@ Rejoinder of Service (Serathiel) Ensnaring Brood (Matraleth) Carapace Swarm (Isthrathaleth) Plague (Ogroszaleth) -Consume (Zoryusthaleth) +Remote Hijack (Askosi) Land Grab (Wyvern) -Parasite (Matraleth) +Parasitic Excision (Matraleth) Psionic Storm (Cantavis) Hallucination (Cantavis) Recall (Didact) Stasis Field (Didact) Rematerialize (Askosi) -Savant Onhit Toggle +Preylock (Askosi) Disruption Field (Lanifect) Rescind Control (Mind Tyrant) Maledictus (Mind Tyrant) @@ -46,8 +46,8 @@ None Hive Tissue (Malkothrokor) Lobotomy Warhead (Triton) Prying Eyes (Facade) -Extended Tech #5 -Extended Tech #6 +Remote Hijack (Askosi) +Preylock (Askosi) Lobotomy Grenade (Goska dupe) Skryspawn (Stroluum) Extended Tech #9 diff --git a/mpq/arr/units.datex b/mpq/arr/units.datex index b7654ad9..12ffcb04 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 b4dd82d0..1c15ff7d 100644 --- a/mpq/arr/units.txt +++ b/mpq/arr/units.txt @@ -408,7 +408,7 @@ Terran Trenchfoot Zerg Sasyrvoleth Terran Tencendur Ackmed -Terran Cyclops (Futurist Federation) +Terran Cyclops (Futurist) Protoss Zealot (Starbound) Protoss Ecclesiast (Khalendric Knights) Terran Harakan (Golden Republic) @@ -571,31 +571,31 @@ Broadside Turret (Upstart) Terran Vulture (Upstart) Terran Cutlass (Futurist) Cutlass Turret (Futurist) -Extended Unit #346 -Extended Unit #347 -Extended Unit #348 -Extended Unit #349 -Extended Unit #350 -Extended Unit #351 -Extended Unit #352 -Extended Unit #353 -Extended Unit #354 -Extended Unit #355 -Extended Unit #356 -Extended Unit #357 -Extended Unit #358 -Extended Unit #359 -Extended Unit #360 -Extended Unit #361 -Extended Unit #362 +Terran Maverick (Upstart) +Protoss Ecclesiast (Astral) +Terran Eidolon (Upstart) +Terran Ajax (Futurist) +Askosi Dorminge +Askosi Lotiro +Askosi Domain +Terran Maverick (Golden) +Terran Shaman (Support, Upstart) +Terran Shaman (Adrenaline, Upstart) +Askosi Insurant +Askosi Silversoul +Askosi Ghostwrit +Askosi Azjoran +Askosi Elgird +Askosi Histrion +Askosi Egocent Extended Unit #363 -Extended Unit #364 +Askosi Begolor Extended Unit #365 Extended Unit #366 Extended Unit #367 Extended Unit #368 -Extended Unit #369 -Extended Unit #370 +Askosi Lekrot +Askosi Hearthshard Extended Unit #371 Extended Unit #372 Extended Unit #373 diff --git a/mpq/arr/weapons.datex b/mpq/arr/weapons.datex index 92a7d354..ed91c27e 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 d912de7e..80ad79fe 100644 --- a/mpq/arr/weapons.txt +++ b/mpq/arr/weapons.txt @@ -205,7 +205,7 @@ Heirloom Batteries (Philoc) Nathrok Claws (Nathrokor) Calcification (Gorgrokor) Talismanic Weaver (Potentate) -Rematerialize (Askosi) +Remote Hijack (Askosi) Dispatch Shotgun (Hotshot) Quarternary Rifle (Auriel) Phase Blade (Adherent) diff --git a/mpq/datreq/Buttons.graft b/mpq/datreq/Buttons.graft index a563133a..9ad1851c 100644 Binary files a/mpq/datreq/Buttons.graft and b/mpq/datreq/Buttons.graft differ diff --git a/mpq/datreq/Tech.graft b/mpq/datreq/Tech.graft index a576655e..e9a49388 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 41dfbb79..c203b230 100644 Binary files a/mpq/datreq/Units.graft and b/mpq/datreq/Units.graft differ diff --git a/mpq/game/icons.grp b/mpq/game/icons.grp index f465873d..8a889f00 100644 Binary files a/mpq/game/icons.grp and b/mpq/game/icons.grp differ diff --git a/mpq/glue/join/backgnd_cnlk.pcx b/mpq/glue/join/backgnd_cnlk.pcx new file mode 100644 index 00000000..29578205 Binary files /dev/null and b/mpq/glue/join/backgnd_cnlk.pcx differ diff --git a/mpq/music/adefeat.wav b/mpq/music/adefeat.wav new file mode 100644 index 00000000..873d119d Binary files /dev/null and b/mpq/music/adefeat.wav differ diff --git a/mpq/music/askosi1.wav b/mpq/music/askosi1.wav new file mode 100644 index 00000000..84a2f130 Binary files /dev/null and b/mpq/music/askosi1.wav differ diff --git a/mpq/music/askosi2.wav b/mpq/music/askosi2.wav new file mode 100644 index 00000000..b69eb6bb Binary files /dev/null and b/mpq/music/askosi2.wav differ diff --git a/mpq/music/askosi3.wav b/mpq/music/askosi3.wav new file mode 100644 index 00000000..04611500 Binary files /dev/null and b/mpq/music/askosi3.wav differ diff --git a/mpq/music/avict.wav b/mpq/music/avict.wav new file mode 100644 index 00000000..81948011 Binary files /dev/null and b/mpq/music/avict.wav differ diff --git a/mpq/portrait/askosi/auxine/fid00.smk b/mpq/portrait/askosi/auxine/fid00.smk new file mode 100644 index 00000000..494d113c Binary files /dev/null and b/mpq/portrait/askosi/auxine/fid00.smk differ diff --git a/mpq/portrait/askosi/auxine/tlk00.smk b/mpq/portrait/askosi/auxine/tlk00.smk new file mode 100644 index 00000000..3866fc8a Binary files /dev/null and b/mpq/portrait/askosi/auxine/tlk00.smk differ diff --git a/mpq/portrait/faction/hydralisk_orkoti/fid00.smk b/mpq/portrait/faction/hydralisk_orkoti/fid00.smk new file mode 100644 index 00000000..1e8a75a6 Binary files /dev/null and b/mpq/portrait/faction/hydralisk_orkoti/fid00.smk differ diff --git a/mpq/portrait/faction/hydralisk_orkoti/fid01.smk b/mpq/portrait/faction/hydralisk_orkoti/fid01.smk new file mode 100644 index 00000000..1db4e51d Binary files /dev/null and b/mpq/portrait/faction/hydralisk_orkoti/fid01.smk differ diff --git a/mpq/portrait/faction/hydralisk_orkoti/fid02.smk b/mpq/portrait/faction/hydralisk_orkoti/fid02.smk new file mode 100644 index 00000000..dab512c6 Binary files /dev/null and b/mpq/portrait/faction/hydralisk_orkoti/fid02.smk differ diff --git a/mpq/portrait/faction/hydralisk_orkoti/fid03.smk b/mpq/portrait/faction/hydralisk_orkoti/fid03.smk new file mode 100644 index 00000000..c5101c59 Binary files /dev/null and b/mpq/portrait/faction/hydralisk_orkoti/fid03.smk differ diff --git a/mpq/portrait/faction/hydralisk_orkoti/tlk00.smk b/mpq/portrait/faction/hydralisk_orkoti/tlk00.smk new file mode 100644 index 00000000..9587460b Binary files /dev/null and b/mpq/portrait/faction/hydralisk_orkoti/tlk00.smk differ diff --git a/mpq/portrait/faction/hydralisk_orkoti/tlk01.smk b/mpq/portrait/faction/hydralisk_orkoti/tlk01.smk new file mode 100644 index 00000000..2a8f77dd Binary files /dev/null and b/mpq/portrait/faction/hydralisk_orkoti/tlk01.smk differ diff --git a/mpq/portrait/faction/hydralisk_orkoti/tlk02.smk b/mpq/portrait/faction/hydralisk_orkoti/tlk02.smk new file mode 100644 index 00000000..41e13cfd Binary files /dev/null and b/mpq/portrait/faction/hydralisk_orkoti/tlk02.smk differ diff --git a/mpq/portrait/faction/maverick_futurist/fid00.smk b/mpq/portrait/faction/maverick_futurist/fid00.smk new file mode 100644 index 00000000..52551556 Binary files /dev/null and b/mpq/portrait/faction/maverick_futurist/fid00.smk differ diff --git a/mpq/portrait/faction/maverick_futurist/fid01.smk b/mpq/portrait/faction/maverick_futurist/fid01.smk new file mode 100644 index 00000000..57bcd117 Binary files /dev/null and b/mpq/portrait/faction/maverick_futurist/fid01.smk differ diff --git a/mpq/portrait/faction/maverick_futurist/fid02.smk b/mpq/portrait/faction/maverick_futurist/fid02.smk new file mode 100644 index 00000000..2d77e643 Binary files /dev/null and b/mpq/portrait/faction/maverick_futurist/fid02.smk differ diff --git a/mpq/portrait/faction/maverick_futurist/fid03.smk b/mpq/portrait/faction/maverick_futurist/fid03.smk new file mode 100644 index 00000000..a42f7f8c Binary files /dev/null and b/mpq/portrait/faction/maverick_futurist/fid03.smk differ diff --git a/mpq/portrait/faction/maverick_futurist/tlk00.smk b/mpq/portrait/faction/maverick_futurist/tlk00.smk new file mode 100644 index 00000000..cdbb187d Binary files /dev/null and b/mpq/portrait/faction/maverick_futurist/tlk00.smk differ diff --git a/mpq/portrait/faction/maverick_futurist/tlk01.smk b/mpq/portrait/faction/maverick_futurist/tlk01.smk new file mode 100644 index 00000000..fa8da3a6 Binary files /dev/null and b/mpq/portrait/faction/maverick_futurist/tlk01.smk differ diff --git a/mpq/portrait/faction/maverick_futurist/tlk02.smk b/mpq/portrait/faction/maverick_futurist/tlk02.smk new file mode 100644 index 00000000..b2c5ddb6 Binary files /dev/null and b/mpq/portrait/faction/maverick_futurist/tlk02.smk differ diff --git a/mpq/portrait/faction/maverick_golden/fid00.smk b/mpq/portrait/faction/maverick_golden/fid00.smk new file mode 100644 index 00000000..1083a9f1 Binary files /dev/null and b/mpq/portrait/faction/maverick_golden/fid00.smk differ diff --git a/mpq/portrait/faction/maverick_golden/fid01.smk b/mpq/portrait/faction/maverick_golden/fid01.smk new file mode 100644 index 00000000..3c94906b Binary files /dev/null and b/mpq/portrait/faction/maverick_golden/fid01.smk differ diff --git a/mpq/portrait/faction/maverick_golden/fid02.smk b/mpq/portrait/faction/maverick_golden/fid02.smk new file mode 100644 index 00000000..095ebb07 Binary files /dev/null and b/mpq/portrait/faction/maverick_golden/fid02.smk differ diff --git a/mpq/portrait/faction/maverick_golden/fid03.smk b/mpq/portrait/faction/maverick_golden/fid03.smk new file mode 100644 index 00000000..414a9349 Binary files /dev/null and b/mpq/portrait/faction/maverick_golden/fid03.smk differ diff --git a/mpq/portrait/faction/maverick_golden/tlk00.smk b/mpq/portrait/faction/maverick_golden/tlk00.smk new file mode 100644 index 00000000..52c21205 Binary files /dev/null and b/mpq/portrait/faction/maverick_golden/tlk00.smk differ diff --git a/mpq/portrait/faction/maverick_golden/tlk01.smk b/mpq/portrait/faction/maverick_golden/tlk01.smk new file mode 100644 index 00000000..6552d8aa Binary files /dev/null and b/mpq/portrait/faction/maverick_golden/tlk01.smk differ diff --git a/mpq/portrait/faction/maverick_golden/tlk02.smk b/mpq/portrait/faction/maverick_golden/tlk02.smk new file mode 100644 index 00000000..910fd14f Binary files /dev/null and b/mpq/portrait/faction/maverick_golden/tlk02.smk differ diff --git a/mpq/portrait/faction/maverick_upstart/fid00.smk b/mpq/portrait/faction/maverick_upstart/fid00.smk new file mode 100644 index 00000000..2ffc945c Binary files /dev/null and b/mpq/portrait/faction/maverick_upstart/fid00.smk differ diff --git a/mpq/portrait/faction/maverick_upstart/fid01.smk b/mpq/portrait/faction/maverick_upstart/fid01.smk new file mode 100644 index 00000000..3711c038 Binary files /dev/null and b/mpq/portrait/faction/maverick_upstart/fid01.smk differ diff --git a/mpq/portrait/faction/maverick_upstart/fid02.smk b/mpq/portrait/faction/maverick_upstart/fid02.smk new file mode 100644 index 00000000..4d189aeb Binary files /dev/null and b/mpq/portrait/faction/maverick_upstart/fid02.smk differ diff --git a/mpq/portrait/faction/maverick_upstart/fid03.smk b/mpq/portrait/faction/maverick_upstart/fid03.smk new file mode 100644 index 00000000..c5147cc9 Binary files /dev/null and b/mpq/portrait/faction/maverick_upstart/fid03.smk differ diff --git a/mpq/portrait/faction/maverick_upstart/tlk00.smk b/mpq/portrait/faction/maverick_upstart/tlk00.smk new file mode 100644 index 00000000..d2a4d184 Binary files /dev/null and b/mpq/portrait/faction/maverick_upstart/tlk00.smk differ diff --git a/mpq/portrait/faction/maverick_upstart/tlk01.smk b/mpq/portrait/faction/maverick_upstart/tlk01.smk new file mode 100644 index 00000000..a2b1c475 Binary files /dev/null and b/mpq/portrait/faction/maverick_upstart/tlk01.smk differ diff --git a/mpq/portrait/faction/maverick_upstart/tlk02.smk b/mpq/portrait/faction/maverick_upstart/tlk02.smk new file mode 100644 index 00000000..e72aef45 Binary files /dev/null and b/mpq/portrait/faction/maverick_upstart/tlk02.smk differ diff --git a/mpq/portrait/special/boyeau/fid00.smk b/mpq/portrait/special/boyeau/fid00.smk new file mode 100644 index 00000000..410c234d Binary files /dev/null and b/mpq/portrait/special/boyeau/fid00.smk differ diff --git a/mpq/portrait/special/boyeau/fid01.smk b/mpq/portrait/special/boyeau/fid01.smk new file mode 100644 index 00000000..dc6abb62 Binary files /dev/null and b/mpq/portrait/special/boyeau/fid01.smk differ diff --git a/mpq/portrait/special/boyeau/fid02.smk b/mpq/portrait/special/boyeau/fid02.smk new file mode 100644 index 00000000..fa542d14 Binary files /dev/null and b/mpq/portrait/special/boyeau/fid02.smk differ diff --git a/mpq/portrait/special/boyeau/fid03.smk b/mpq/portrait/special/boyeau/fid03.smk new file mode 100644 index 00000000..3b9f8f00 Binary files /dev/null and b/mpq/portrait/special/boyeau/fid03.smk differ diff --git a/mpq/portrait/special/boyeau/tlk00.smk b/mpq/portrait/special/boyeau/tlk00.smk new file mode 100644 index 00000000..919fa50f Binary files /dev/null and b/mpq/portrait/special/boyeau/tlk00.smk differ diff --git a/mpq/portrait/special/boyeau/tlk01.smk b/mpq/portrait/special/boyeau/tlk01.smk new file mode 100644 index 00000000..dc2b7930 Binary files /dev/null and b/mpq/portrait/special/boyeau/tlk01.smk differ diff --git a/mpq/portrait/special/boyeau/tlk02.smk b/mpq/portrait/special/boyeau/tlk02.smk new file mode 100644 index 00000000..197ef6e4 Binary files /dev/null and b/mpq/portrait/special/boyeau/tlk02.smk differ diff --git a/mpq/rez/stat.txt b/mpq/rez/stat.txt index 459fcd78..c943840b 100644 --- a/mpq/rez/stat.txt +++ b/mpq/rez/stat.txt @@ -314,8 +314,8 @@ <0> <0> Spider Mines<0> -<0> -<0> +Goremasts<0> +Piety Wards<0> <0> <0> <0> @@ -329,7 +329,7 @@ Anchor Attack requires:<10> Loaded ranged combatant<0> ¤<3><4>Heretical Bedlam <2>(passive)<10>Dying hostiles that were struck by the Pariah in the last 2 seconds have their corpses ascended after 1 second.<0> <0> ¤<3><4>Swarming Omen <2>(passive)<10>Hostiles afflicted by the this strain's attacks grant 125% movement speed to any of this strain's allies within 10 range.<0> -<0> +e<3><4>Plant Goremast <1>(<3>E<1>)<10>Places a Goremast at the target site. Goremasts damage and cripple targets that trip them.<0> d<3><4>Divine Discipline <1>(<3>D<1>)<10>Creates an alchemical field at the target location. Allies within the field gain 25% increased attack speed, while enemies within the field suffer 25% reduced attack speed.<0> d<3><4>Rejoinder of Service <1>(<3>D<1>)<10>Augments the combatant for 5 seconds, empowering their attacks to ignore armor.<10>If a combatant dies while under this effect, all hostiles within its vision range are pulled towards it by 2 range.<0> t<3><4>Inject Stimpack <1>(<3>T<1>)<10>Take a dangerous injection that deals 5 damage. After a 1.5 second delay, gain 75% movement speed and 100% attack speed for 7.5 seconds.<0> @@ -358,9 +358,9 @@ s<1><4>Morph into Protathalor <1>(<3>S<1>)<10>Mobile artillery strain.<0> <0> <0> <0> -<0> -<0> -<0> +¤<3><4>Scrapworld: Gold Vein <2>(passive)<10>This structure salvages one corpse within 8 range every second, securing 25% of the corpses's resource cost.<0> +¤<3><4>Crushing Delivery <2>(passive)<10>Enemy combatants within 8 range of the Dorminge find their movement speed slowed by 33%.<0> +c<3><4>Preylock <1>(<3>C<1>)<10>Pulls the target enemy within 5 range to the combatant's location, and afflicts it with Booming Blast.<0> b<1><4>Build Blackjack <1>(<3>B<1>)<10>Scrappy walker drone.<0> ¤<3><4>Labyrinthine Targeters <2>(passive)<10>So long as they are facing the targets, Minotaurs can attack up to 5 hostiles at once.<0> Almaksalisk requires:<10> Alkag Iteth<0> @@ -380,14 +380,14 @@ x<3><4>Parasitic Excision <1>(<3>X<1>)<10>After a 1-second channel, the Matralet 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> ¤<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> -<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> ¤<3><4>Ormis Materializer <2>(passive)<10>Emissaries can load allies from up to 4 range.<0> ¤<3><4>Robotic Fleet <2>(passive)<10>Solarions can assemble up to 12 Stewards to use in their attacks. Solarions cannot attack without any Stewards.<0> v<1><4>Warp in Prostration Stage <1>(<3>V<1>)<10>Relentless disciple production.<0> z<1><4>Mutate into Zorkiz Shroud <1>(<3>Z<1>)<10>Control node. Enables Zoryusthaleths and Lakizilisks.<0> e<1><4>Warp in Rogue Gallery <1>(<3>E<1>)<10>Profane disciple production.<0> -<0> -<0> +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> @@ -428,7 +428,7 @@ Plasma Shields<0> t<1><4>Warp in Monument of Sin <1>(<3>T<1>)<10>Capital stellar production.<0> Axtoth Axis requires:<10> Othstol Oviform<0> f<1><4>Bestow Harakan <1>(<3>F<1>)<10>Dutiful frontline infantry.<0> -<0> +t<1><4>Build Broadside <1>(<3>T<1>)<10>Encroaching armor.<0> x<1><4>Morph into Axitrilisk <1>(<3>X<1>)<10>Sustaining skirmisher strain.<0> Axitrilisk requires:<10> Axtoth Axis<0> ¤<3><4>Perpetual Wind <2>(passive)<10>Upon taking fatal damage, Axitrilisks revert to a weaponless state and attempt to rejuvenate.<10><10>Should they survive in this form for eight seconds, Axitrilisks recover full use of their weapon.<0> @@ -451,8 +451,8 @@ d<1><4>Morph into Mortothrokor <1>(<3>D<1>)<10>Rampaging melee strain.<0> w<1><4>Build Tinkerer's Tower <1>(<3>W<1>)<10>Enables Sirens and Strigas.<0> e<1><4>Profanate Empress <1>(<3>E<1>)<10>Reinforcing destroyer.<0> ¤<3><4>Escape Velocity <2>(passive)<10>Algoztalisk projectiles gain +1 armor penetration for every range traveled.<0> -<0> -<0> +¤<3><4>Shrapnel Strike <2>(passive)<10>Goremasts inflict 15 damage to all targets within 2 range, and slow their attack and movement speeds by 33% for 3 seconds. If the trap is destroyed or manually detonated, nearby targets are only slowed.<0> +z<3><4>Detonate <1>(<3>Z<1>)<10>Trips the Goremast immediately, applying its slow effects to all combatants within 2 range.<0> ¤<3><4>Advancing Motion <2>(passive)<10>This combatant's primary weapon can be fired while moving.<0> Iron Foundry requires:<10> Daedala<0> f<1><4>Build Iron Foundry <1>(<3>F<1>)<10>Advanced vehicle production.<0> @@ -586,7 +586,7 @@ Protathalor requires:<10> Mutath Spire<0> a<1><4>Train Maverick <1>(<3>A<1>)<10>All-purpose infantry.<0> g<1><4>Train Eidolon <1>(<3>G<1>)<10>Disruptive specialist infantry.<0> f<1><4>Train Harakan <1>(<3>F<1>)<10>Durable frontline infantry.<0> -v<1><4>Build Vulture <1>(<3>V<1>)<10>Fast anti-infantry harasser.<0> +v<1><4>Build Vulture <1>(<3>V<1>)<10>Harrying vehicle.<0> g<1><4>Build Goliath <1>(<3>G<1>)<10>Versatile walker.<0> t<1><4>Build Phalanx <1>(<3>T<1>)<10>Durable artillery.<0> s<1><4>Build Mason <1>(<3>S<1>)<10>Worker.<0> @@ -705,7 +705,7 @@ e<1><4>Warp in Adherent <1>(<3>E<1>)<10>Stolid skirmisher.<0> b<1><4>Install Radix <1>(<3>B<1>)<10>Biotic production.<0> r<1><4>Train Siren <1>(<3>R<1>)<10>Eclectic specialist.<0> a<1><4>Morph into Rilirokors <1>(<3>A<1>)<10>Fodder strain.<0> -¤<3><4>Worship <2>(passive)<10>When a hostile combatant takes fatal damage within 6 range of a Demiurge, they undergo a Crisis of Faith, and will serve the Demiurge after 5 seconds.<10>The combatants expire normally if no Demiurges are within 6 range during the Crisis.<0> +¤<3><4>Worship <2>(passive)<10>When a hostile combatant takes fatal damage within 6 range of the Demiurge, they drain 10 energy from the Demiurge and undergo a Crisis of Faith, serving a new master after 5 seconds.<10>The combatants expire normally if no Demiurges are within 6 range during the Crisis.<0> g<1><4>Build Arhaun <1>(<3>G<1>)<10>Strike walker.<0> g<1><4>Build Southpaw <1>(<3>G<1>)<10>Disruptive vehicle.<0> q<1><4>Morph into Quazrokors <1>(<3>Q<1>)<10>Harrying strain.<0> @@ -732,7 +732,7 @@ t<1><4>Meld Intendent <1>(<3>T<1>)<10>Assault crawler.<0> z<1><4>Mutate into Skortrith Cesiant <1>(<3>Z<1>)<10>Advanced anti-surface cell.<0> Scepter requires:<10> Cipher<0> ¤<3><4>Gravity Well <2>(passive)<10>Anthelion attacks radiate out from their center of mass. Hostiles damaged by the Anthelion are pulled toward it.<0> -¤<3><4>Counter-Proposal <2>(passive)<10>Once per second, the Anticthon reclaims the closest corpse within 3 range.<0> +¤<3><4>Counter-Proposal <2>(passive)<10>Once per second, the Anticthon expends 25 energy to reclaim the closest corpse within 3 range.<0> ¤<3><4>Endless Eclipse <2>(passive)<10>Anthelions channel for 5 seconds before instantly manifesting at their destination, which must be revealed before movement can begin.<0> ¤<3><4>Observance <2>(passive)<10>While any Seraph remains within 6 range of hostiles, their armor is reduced by 1 every 5 seconds.<10><10>Armor returns after 5 seconds of not being observed.<0> Zethrokors Require:<10> Quazeth Pool<0> @@ -812,7 +812,7 @@ Hide Terrain (<3>Tab<1>)<0> Diplomacy<0> Messaging<0> Game Menu (<3>F10<1>)<0> -¤<3><4>Sermon Salve <2>(passive)<10>While allied combatants and structures remain peaceful within 8 range of the Chantry, they regenerate 5 HP per second.<0> +¤<3><4>Sermon Salve <2>(passive)<10>While allies remain peaceful within 8 range of the Chantry, they regenerate 5 HP per second.<10>Allied combatants become cloaked until their next attack.<0> ¤<3><4>Discordant Chorus <2>(passive)<10>Enemies struck by this combatant have their armor reduced by 1 for 2 seconds. This penalty does not stack.<0> ¤<3><4>Astral Splendor <2>(passive)<10>Once every 2 seconds, this core restores 10 shields to allies within 8 range. Allies can only be restored once every 2 seconds.<0> x<1><4>Build Cestus <1>(<3>X<1>)<10>Warding outpost.<0> @@ -964,17 +964,17 @@ b<1><4>Install Zylode <1>(<3>B<1>)<10>Advanced mechanized production.<0> Zylode Requires<10> Cipher AND Gauntlet<0> b<1><4>Install Astrolabe <1>(<3>B<1>)<10>Advanced skyborne production.<0> Astrolabe Requires<10> Proscenium OR Zylode<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> -<0> +Must target enemy units.<0> +Must target allied units.<0> +Must target allied ground units.<0> +Must target enemy units or allied embedded units.<0> +Must target units with no hijackers.<0> +¤<3><4>Avenging Mitosis <2>(passive)<10>Upon taking damage, this strain incubates, spawning one Skryrokor after a two-second delay.<10>This status cannot be applied if the strain is already incubating.<0> +w<1><4>Install Dorminge <1>(<3>W<1>)<10>Impeding shrine.<0> +Dorminge requires:<10> Cipher AND Gauntlet<0> +w<1><4>Install Domain <1>(<3>C<1>)<10>Encompassing town center.<0> +Domain requires:<10> Conduit AND Bestiary<0> +¤<3><4>Earthly Profusion <2>(passive)<10>Every 10 seconds, the Domain harvests all available resource nodes within 12 range. This does not interrupt active mining efforts.<0> <0> <0> <0> @@ -1067,7 +1067,7 @@ 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> <0> -<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> a<1><4>Build Salamander <1>(<3>A<1>)<10>Area-denial cruiser.<0> @@ -1226,7 +1226,7 @@ Supreme Warps require:<10> Empowered Warp<0> ¤<3><4>Writhing Web <2>(passive)<10>For every allied Sovroleth within 8 range, lose 6% movement speed and gain 6% weapon range.<0> ¤<3><4>Babylon Plating <2>(passive)<10>Phalanxes gain +4 armor while in Tank mode.<0> Ogun requires:<10> Quarry<0> -¤<3><4>Blood Tithe <2>(passive)<10>When an Apostle attacks a target, allies within 3 range of the Apostle are healed for 5 HP.<0> +¤<3><4>Blood Tithe <2>(passive)<10>When attacking hostiles, Apostles expend 5 energy to heal allies within 3 range for 5 HP.<0> e<1><4>Build Cyclops <1>(<3>E<1>)<10>Crowd-controlling walker.<0> ¤<3><4>Nanite Drones <2>(passive)<10>While in Smithy Mode, Oguns repair all structures within 4 range.<0> Nanite Drones:<10> Must be in Smithy Mode<0> @@ -1386,7 +1386,7 @@ r<1><4>Warp in Automaton Register <1>(<3>R<1>)<10>Heavy robotic production.<0> z<1><4>Mutate into Alkag Iteth <1>(<3>Z<1>)<10>Assault node. Enables Kagralisks, Evigrilisks, and Almaksalisks.<0> x<1><4>Build Sentinel <1>(<3>X<1>)<10>All-purpose tower.<0> c<1><4>Assemble Simulacrum <1>(<3>C<1>)<10>Robotic swarmer.<0> -¤<3><4>Lazarus Agent <2>(passive)<10>When attacking a hostile, Apostles reclaim one corpse within 3 range of themselves.<0> +¤<3><4>Lazarus Agent <2>(passive)<10>When attacking hostiles, Apostles expend 20 energy to reclaim one corpse within 3 range of themselves.<0> Sentinel requires:<10> Atlas<0> ¤<3><4>Kinetic Penetration <2>(passive)<10>This combatant's projectiles travel to maximum range, piercing targets with insufficient armor, and becoming intercepted by targets with more armor. Additional victims take half damage.<0> <0> @@ -1475,8 +1475,8 @@ Mortothrokor requires:<10> Axtoth Axis<0> d<1><4>Manifest Droleth <1>(<3>D<1>)<10>Worker strain.<0> a<1><4>Manifest Mason <1>(<3>A<1>)<10>Worker.<0> s<1><4>Manifest Scribe <1>(<3>S<1>)<10>Worker automata.<0> -<0> -<0> +Cutlass requires:<10> Scrapyard<0> +Broadside requires:<10> Palladium<0> ¤<3><4>Transcendent Tide <2>(passive)<10>Each time a Potentate attacks an enemy within 3 range, all allies within 3 range are ascended, granting 25% increased attack speed.<0> a<1><4>Warp in Potentate <1>(<3>A<1>)<10>Ascendent ranger<0> a<1><4>Train Hotshot <1>(<3>A<1>)<10>Close-combat infantry.<0> @@ -1791,7 +1791,7 @@ r<1><4>Build Priestess <1>(<3>R<1>)<10>Restorative infantry.<0> b<1><4>Build Barker <1>(<3>B<1>)<10>Frontline cavalry.<0> <27><0><4>Cancel Demolition <1>(<3>ESC<1>)<0> ¤<3><4>Evasive Maneuvers <2>(passive)<10>After falling below 30 HP, Stewards will return to their Solarion, regaining all HP and becoming cleansed of any debuffs.<0> -¤<3><4>Mechanical Rage <2>(passive)<10>After killing an enemy combatant, the Zonguard gains 7 bonus armor 2 seconds.<0> +¤<3><4>Mechanical Rage <2>(passive)<10>After killing an enemy combatant, the Zonguard gains 10 bonus armor 2 seconds.<0> Chokral Chaszal requires:<10> Othstol Oviform<0> <0> <0> @@ -1799,7 +1799,7 @@ Chokral Chaszal requires:<10> Othstol Oviform<0> ¤<3><4>Astral Rule <2>(passive)<10>Victims of the Patriarch's attacks are debuffed for 2 seconds, and restore 5 shields to any attackers.<0> g<1><4>Morph into Algoztalisk <1>(<3>G<1>)<10>Relentless corvette strain.<0> Algoz Aspect requires:<10> Chokral Chazsal<0> -¤<3><4>Reclamation Fields <2>(passive)<10>This combatant's attacks create Lazarus fields that reclaim a corpse within 2 range after 1.5 seconds.<0> +¤<3><4>Reclamation Fields <2>(passive)<10>This combatant's attacks expend 25 energy to create Lazarus fields that reclaim a corpse within 2 range after 1.5 seconds.<0> <0> ¤<3><4>Fan of Teeth <2>(passive)<10>Upon taking damage, this strain launches a retaliatory bone in the direction of their attacker that travels up to 3 range, piercing any hostiles in its path.<0> Cherbrath Aspect requires:<10> Chokral Chazsal<0> diff --git a/mpq/rez/unitnames.tbl b/mpq/rez/unitnames.tbl index e19ea6b4..63a99ef3 100644 Binary files a/mpq/rez/unitnames.tbl and b/mpq/rez/unitnames.tbl differ diff --git a/mpq/scripts/iscript_askosi.bin b/mpq/scripts/iscript_askosi.bin index 5293d0a1..ad3d277f 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 c29243aa..46eaf94b 100644 --- a/mpq/scripts/iscript_askosi.txt +++ b/mpq/scripts/iscript_askosi.txt @@ -19,7 +19,7 @@ Walking [NONE] WalkingToIdle [NONE] SpecialState1 [NONE] SpecialState2 [NONE] -AlmostBuilt SkryrokorLocal00 +AlmostBuilt LandlockAlmostBuilt Built LandlockBuilt Landing [NONE] LiftOff [NONE] @@ -46,6 +46,10 @@ LandlockDeath: LandlockBuilt: imgol 1820 0 0 # Architect weaponfire channel goto SkryrokorLocal00 + +LandlockAlmostBuilt: + playfram 8 + goto SkryrokorLocal00 LandlockIsWorking: playfram 1 @@ -302,7 +306,7 @@ PilgrimAlmostBuilt: wait 1 PilgrimLocal00: playfram 0x160 - useweapon 14 # Fusion Cutter (Harvest) (Fusion Cutter) + useweapon 14 # Fusion Cutter (Harvest) sigorder 32 wait 2 playfram 0x140 @@ -435,7 +439,7 @@ RadixSpecialState1: goto SkryrokorLocal00 RadixAlmostBuilt: - playfram 0 + playfram 2 goto SkryrokorLocal00 RadixBuilt: @@ -1884,7 +1888,7 @@ Walking [NONE] WalkingToIdle SkryrokorLocal00 SpecialState1 [NONE] SpecialState2 GrandstandSpecialState2 -AlmostBuilt GrandstandBuilt +AlmostBuilt GrandstandAlmostBuilt Built GrandstandBuilt Landing [NONE] LiftOff [NONE] @@ -1913,6 +1917,10 @@ GrandstandBuilt: wait 255 goto GrandstandBuilt +GrandstandAlmostBuilt: + playfram 1 + goto SkryrokorLocal00 + GrandstandGndAttkInit: playfram 0 wait 1 @@ -4294,15 +4302,23 @@ ZonguardUnused1: ZonguardGndAttkInit: wait 1 - attackwith 1 - attackwith 1 + nobrkcodestart + imgol 1820 0 0 # Architect weaponfire channel + attackmelee 2 894 895 # Zerg\Ultra\zulHit00.WAV | Zerg\Ultra\zulHit01.WAV + wait 3 + nobrkcodeend gotorepeatattk goto ZonguardGndAttkToIdle ZonguardWalking: - playfram 0x00 setvertpos 0 - goto SkryrokorLocal00 + goto ZonguardWalkingLoop + +ZonguardWalkingLoop: + playfram 0x00 + move 4 + wait 1 + goto ZonguardWalkingLoop # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: @@ -4530,6 +4546,510 @@ LightningImpactSmallDeath: playfram 9 wait 1 end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2296 Paraclete (cm\askosi\paraclete.grp) +.headerstart +IsId 54 +Type 21 +Init ParacleteInit +Death ParacleteDeath +GndAttkInit ParacleteGndAttkInit +AirAttkInit ParacleteGndAttkInit +Unused1 SkryrokorLocal00 +GndAttkRpt ParacleteGndAttkInit +AirAttkRpt ParacleteGndAttkInit +CastSpell [NONE] +GndAttkToIdle ParacleteGndAttkToIdle +AirAttkToIdle ParacleteGndAttkToIdle +Unused2 [NONE] +Walking ParacleteWalking +WalkingToIdle ParacleteLocal00 +SpecialState1 ParacleteSpecialState1 +.headerend +# ----------------------------------------------------------------------------- # + +ParacleteInit: + imgulnextid 0 42 # Paraclete Shadow (cm\askosi\paraclete.grp) +ParacleteGndAttkToIdle: + playfram 0x00 +ParacleteLocal00: + setvertpos 0 + wait 8 + setvertpos 0 + wait 8 + setvertpos -1 + wait 8 + setvertpos 0 + wait 8 + goto ParacleteLocal00 + +ParacleteDeath: + playsndbtwn 1249 1251 # Gorgon death 01, 02, 03 + imgol 333 0 0 # Explosion2 (Medium) (thingy\tBangL.grp) + wait 3 + lowsprul 1065 0 42 # Askosi Unit Rubble (cm\askosi\a-rubble-tiny.grp) + wait 1 + end + +ParacleteGndAttkInit: + setvertpos 0 + wait 1 + nobrkcodestart + playfram 0x00 + attackwith 1 + wait 2 + attackwith 1 + wait 1 + nobrkcodeend + gotorepeatattk + goto ParacleteGndAttkToIdle + +ParacleteWalking: + setvertpos 0 +# imgol 225 0 5 # Paraclete Engines (thingy\tdrGlow.grp) + goto SkryrokorLocal00 + +ParacleteSpecialState1: + playfram 0x00 + wait 12 + goto SkryrokorLocal00 + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2298 Auxine (cm\askosi\auxine.grp) +.headerstart +IsId 55 +Type 21 +Init AuxineInit +Death AuxineDeath +GndAttkInit AuxineGndAttkInit +AirAttkInit AuxineGndAttkInit +Unused1 SkryrokorLocal00 +GndAttkRpt AuxineGndAttkInit +AirAttkRpt AuxineGndAttkInit +CastSpell [NONE] +GndAttkToIdle AuxineGndAttkToIdle +AirAttkToIdle AuxineGndAttkToIdle +Unused2 [NONE] +Walking AuxineWalking +WalkingToIdle AuxineLocal00 +SpecialState1 AuxineSpecialState1 +.headerend +# ----------------------------------------------------------------------------- # + +AuxineInit: + imgulnextid 0 42 # Auxine Shadow (cm\askosi\paraclete.grp) +AuxineGndAttkToIdle: + playfram 0x00 +AuxineLocal00: + setvertpos 0 + wait 8 + setvertpos 0 + wait 8 + setvertpos -1 + wait 8 + setvertpos 0 + wait 8 + goto AuxineLocal00 + +AuxineDeath: + playsnd 353 # Terran\Rove\TVuDth00.WAV + imgol 332 0 0 # Explosion2 (Small) (thingy\tBangS.grp) + wait 3 + lowsprul 1065 0 42 # Askosi Unit Rubble (cm\askosi\a-rubble-tiny.grp) + end + +AuxineGndAttkInit: + setvertpos 0 + wait 1 + nobrkcodestart + playfram 0x00 + attackwith 1 + wait 2 + nobrkcodeend + gotorepeatattk + goto AuxineGndAttkToIdle + +AuxineWalking: + setvertpos 0 +# imgol 225 0 5 # Auxine Engines (thingy\tdrGlow.grp) + goto SkryrokorLocal00 + +AuxineSpecialState1: + playfram 0x00 + wait 12 + goto SkryrokorLocal00 + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2324 Dorminge (cm\askosi\dorminge.grp) +.headerstart +IsId 56 +Type 24 +Init DormingeInit +Death DormingeDeath +GndAttkInit [NONE] +AirAttkInit [NONE] +Unused1 [NONE] +GndAttkRpt [NONE] +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle [NONE] +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking SkryrokorLocal00 +WalkingToIdle DormingeIsWorking +SpecialState1 DormingeSpecialState1 +SpecialState2 SkryrokorLocal00 +AlmostBuilt DormingeAlmostBuilt +Built DormingeBuilt +Landing [NONE] +LiftOff [NONE] +IsWorking DormingeIsWorking +WorkingToIdle DormingeBuilt +WarpIn [NONE] +Unused3 [NONE] +StarEditInit [NONE] +Disable DormingeDisable +Burrow [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +DormingeInit: + playfram 0x00 + imgulnextid 0 0 # Dorminge Shadow (cm\askosi\dorminge-shadow.grp) + goto DormingeIsWorking + +DormingeDeath: + playsndbtwn 4145 4147 # Askosi explosion medium 01, 02, 03 + imgol 215 0 0 # Explosion (Large) (thingy\tBangX.grp) + wait 3 + lowsprul 1007 0 0 # Askosi Structure Rubble (Small) (cm\askosi\a-rubble-small.grp) + wait 1 + end + +DormingeSpecialState1: + playfram 0 + goto SkryrokorLocal00 + +DormingeAlmostBuilt: + playfram 0 + goto SkryrokorLocal00 + +DormingeBuilt: + playfram 0x00 + goto SkryrokorLocal00 + +DormingeIsWorking: + playfram 1 + wait 2 + playfram 2 + wait 2 + playfram 3 + wait 2 + playfram 4 + wait 2 + playfram 5 + wait 2 + playfram 6 + wait 2 + playfram 7 + wait 2 + playfram 0 + wait 2 + goto DormingeIsWorking + +DormingeDisable: + goto SkryrokorLocal00 + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2326 Warring Winds Overlay (cm\askosi\warringwinds-overlay.grp) +.headerstart +IsId 57 +Type 1 +Init WarringWindsInit +Death WarringWindsDeath +.headerend +# ----------------------------------------------------------------------------- # + +WarringWindsInit: + 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 + 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 21 + wait 1 + playfram 22 + wait 1 + playfram 23 + wait 1 + playfram 24 + wait 1 + playfram 25 + wait 1 + playfram 26 + wait 1 + playfram 27 + wait 1 + playfram 28 + wait 1 + playfram 29 + wait 1 + playfram 30 + wait 1 + playfram 31 + wait 1 + playfram 32 + wait 1 + playfram 33 + wait 1 + playfram 34 + wait 1 + playfram 35 + wait 1 + playfram 36 + wait 1 + playfram 37 + goto WarringWindsDeath + +WarringWindsDeath: + wait 1 + end + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2327 Domain (cm\askosi\domain.grp) +.headerstart +IsId 58 +Type 21 +Init DomainInit +Death DomainDeath +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 SkryrokorLocal00 +Built DomainBuilt +Landing [NONE] +LiftOff [NONE] +IsWorking DomainIsWorking +WorkingToIdle DomainWorkingToIdle +WarpIn [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +DomainInit: + imgulnextid 0 0 # Domain Shadow (cm\askosi\domain-shadow.grp) +DomainWorkingToIdle: + playfram 0x00 + goto SkryrokorLocal00 + +DomainDeath: + playsndbtwn 4148 4150 # Askosi explosion large 01, 02, 03 + imgol 215 0 0 # Explosion (Large) (thingy\tBangX.grp) + wait 3 + lowsprul 1004 0 0 # Askosi Structure Rubble (Large) (cm\askosi\a-rubble-large.grp) + wait 1 + end + +DomainBuilt: + imgol 1820 0 0 # Architect weaponfire channel + goto SkryrokorLocal00 + +DomainIsWorking: + imgol 1820 0 0 # Architect weaponfire channel + wait 120 + goto DomainIsWorking + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2075 Panoply (cm\askosi\panoply.grp) +.headerstart +IsId 59 +Type 24 +Init PanoplyInit +Death LandlockDeath +GndAttkInit [NONE] +AirAttkInit [NONE] +Unused1 [NONE] +GndAttkRpt [NONE] +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle [NONE] +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking SkryrokorLocal00 +WalkingToIdle SkryrokorLocal00 +SpecialState1 PanoplySpecialState1 +SpecialState2 SkryrokorLocal00 +AlmostBuilt PanoplyAlmostBuilt +Built PanoplyBuilt +Landing [NONE] +LiftOff [NONE] +IsWorking PanoplyIsWorking +WorkingToIdle PanoplyBuilt +WarpIn [NONE] +Unused3 [NONE] +StarEditInit [NONE] +Disable PanoplyDisable +Burrow [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +PanoplyInit: + playfram 0x00 + imgulnextid 0 0 # Panoply Shadow (cm\askosi\panoply-shadow.grp) + goto SkryrokorLocal00 + +PanoplySpecialState1: + playfram 0 + goto SkryrokorLocal00 + +PanoplyAlmostBuilt: + playfram 4 + goto SkryrokorLocal00 + +PanoplyBuilt: + playfram 0x00 + goto SkryrokorLocal00 + +PanoplyIsWorking: + playfram 1 + wait 1 + playfram 2 + wait 1 + playfram 3 + wait 1 + playfram 2 + wait 1 + playfram 1 + wait 1 + playfram 0 + wait 2 + goto PanoplyIsWorking + +PanoplyDisable: + goto SkryrokorLocal00 + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2075 Lotiro (cm\askosi\lotiro.grp) +.headerstart +IsId 60 +Type 24 +Init LotiroInit +Death LandlockDeath +GndAttkInit [NONE] +AirAttkInit [NONE] +Unused1 [NONE] +GndAttkRpt [NONE] +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle [NONE] +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking SkryrokorLocal00 +WalkingToIdle SkryrokorLocal00 +SpecialState1 LotiroSpecialState1 +SpecialState2 SkryrokorLocal00 +AlmostBuilt LotiroAlmostBuilt +Built LotiroBuilt +Landing [NONE] +LiftOff [NONE] +IsWorking LotiroIsWorking +WorkingToIdle LotiroBuilt +WarpIn [NONE] +Unused3 [NONE] +StarEditInit [NONE] +Disable LotiroDisable +Burrow [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +LotiroInit: + playfram 0x00 + imgulnextid 0 0 # Lotiro Shadow (cm\askosi\lotiro-shadow.grp) + goto SkryrokorLocal00 + +LotiroSpecialState1: + playfram 0 + goto SkryrokorLocal00 + +LotiroAlmostBuilt: + playfram 0 + goto SkryrokorLocal00 + +LotiroBuilt: + playfram 0x00 + goto SkryrokorLocal00 + +LotiroIsWorking: + playfram 1 + wait 1 + playfram 2 + wait 1 + playfram 3 + wait 1 + playfram 4 + wait 1 + playfram 5 + wait 1 + playfram 0 + wait 2 + goto LotiroIsWorking + +LotiroDisable: + goto SkryrokorLocal00 # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: diff --git a/mpq/scripts/iscript_general.bin b/mpq/scripts/iscript_general.bin index 04db8943..865496a1 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 0746238d..4ebbbc35 100644 --- a/mpq/scripts/iscript_general.txt +++ b/mpq/scripts/iscript_general.txt @@ -4211,9 +4211,33 @@ Explosion_Medium_Init: # 334 Building Explosion (Large) (thingy\tBangX.grp) .headerstart IsId 144 -Type 0 +Type 26 Init Explosion_Large_Init -Death [NONE] +Death Explosion_Large_Init +GndAttkInit Explosion_Large_Init +AirAttkInit Explosion_Large_Init +Unused1 Explosion_Large_Init +GndAttkRpt Explosion_Large_Init +AirAttkRpt Explosion_Large_Init +CastSpell Explosion_Large_Init +GndAttkToIdle Explosion_Large_Init +AirAttkToIdle Explosion_Large_Init +Unused2 Explosion_Large_Init +Walking Explosion_Large_Init +WalkingToIdle Explosion_Large_Init +SpecialState1 Explosion_Large_Init +SpecialState2 Explosion_Large_Init +AlmostBuilt Explosion_Large_Init +Built Explosion_Large_Init +Landing Explosion_Large_Init +LiftOff Explosion_Large_Init +IsWorking Explosion_Large_Init +WorkingToIdle Explosion_Large_Init +WarpIn Explosion_Large_Init +Unused3 Explosion_Large_Init +StarEditInit Explosion_Large_Init +Disable Explosion_Large_Init +Burrow Explosion_Large_Init .headerend # ----------------------------------------------------------------------------- # diff --git a/mpq/scripts/iscript_protoss.bin b/mpq/scripts/iscript_protoss.bin index 36f7d4d8..c36c4346 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 11da4a9a..762fdf3e 100644 --- a/mpq/scripts/iscript_protoss.txt +++ b/mpq/scripts/iscript_protoss.txt @@ -3952,6 +3952,8 @@ EnergyPulseUnderlayInit: playfram 11 wait 1 playfram 12 + goto EnergyPulseUnderlayDeath + EnergyPulseUnderlayDeath: wait 1 end diff --git a/mpq/scripts/iscript_terran.bin b/mpq/scripts/iscript_terran.bin index 2cda70e0..d70c8548 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 03bc3b4f..55ef5321 100644 --- a/mpq/scripts/iscript_terran.txt +++ b/mpq/scripts/iscript_terran.txt @@ -1795,6 +1795,7 @@ SeraphBaseDeath: SeraphBaseCastSpell: imgol 539 0 0 # Seraph Overlay (Part2) (thingy\tveGlowO.grp) nobrkcodestart + playsnd 4188 wait 3 castspell nobrkcodeend @@ -13077,147 +13078,77 @@ SpecialState1 [NONE] # ----------------------------------------------------------------------------- # AutocratInit: - imgul 1397 0 0 # Autocrat Shadow (terran\autocrat-shad.grp) + imgulnextid 0 0 # Autocrat Shadow (cm\terran\autocrat-shadow.grp) AutocratWalkingToIdle: playfram 0x00 -AutocratLocal00: - wait 62 - randcondjmp 25 AutocratLocal01 - randcondjmp 128 AutocratLocal01 - goto AutocratLocal00 - -AutocratLocal01: - playfram 0x00 - wait 1 - playfram 0x11 - wait 1 - playfram 0x22 - randcondjmp 192 AutocratLocal03 - 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 AutocratLocal04 - -AutocratLocal04: - playfram 0x11 - wait 1 - playfram 0x00 - wait 1 - goto AutocratWalkingToIdle - -AutocratLocal03: - wait 13 - playfram 0x11 - wait 1 - playfram 0x00 - wait 1 - goto AutocratWalkingToIdle + goto SkryrokorLocal00 AutocratDeath: - playsnd 238 # Terran\Ghost\TGhDth00.wav + playsndbtwn 276 277 # Terran\MARINE\TMaDth00.WAV | Terran\MARINE\TMaDth01.WAV setfldirect 0 playfram 0x00 imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) wait 5 - imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) - wait 5 - imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) - wait 5 - imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) - wait 5 - imgol 3 0 0 # Skryrokor Death (zerg\zavDeath.grp) - wait 5 - lowsprul 230 0 0 # Eidolon Remnants (terran\tghDeath.grp) + lowsprul 236 0 0 # Maverick Remnants (terran\tmaDeath.grp) + wait 1 end -AutocratUnused1: - wait 1 - nobrkcodestart - setfldirect 0 - playsnd 1166 # Eidolon revive 01 - sprol 742 0 0 # Explosion Small Reversed - setfldirect 12 - wait 24 - nobrkcodeend - goto EidolonWalkingToIdle - AutocratGndAttkInit: - playfram 0xaa - wait 1 + playfram 0x100 + wait 1 + playfram 0x140 + wait 1 + playfram 0x180 sigorder 32 wait 22 AutocratGndAttkRpt: - wait 2 + wait 2 nobrkcodestart playsndbtwn 1474 1478 # Autocrat weaponfire 01 attack - playfram 0x99 + playfram 0x1A0 wait 1 - playfram 0xaa + playfram 0x180 wait 3 playsndbtwn 1474 1478 # Autocrat weaponfire 01 attack - playfram 0x99 + playfram 0x1A0 wait 1 - playfram 0xaa + playfram 0x180 nobrkcodeend gotorepeatattk ignorerest AutocratGndAttkToIdle: - playfram 0x00 - wait 1 + playfram 0x140 + wait 1 + playfram 0x120 + wait 1 + playfram 0x100 + wait 1 goto AutocratWalkingToIdle AutocratWalking: + playfram 0x40 move 4 wait 1 - playfram 0x11 + playfram 0x60 move 4 wait 1 - playfram 0x22 + playfram 0x80 move 4 wait 1 - playfram 0x33 + playfram 0xA0 move 4 wait 1 - playfram 0x44 - move 4 - wait 1 - playfram 0x55 + playfram 0xC0 move 4 wait 1 - playfram 0x66 + playfram 0xE0 move 4 wait 1 - playfram 0x77 + playfram 0x20 move 4 wait 1 - playfram 0x88 goto AutocratWalking # ----------------------------------------------------------------------------- # @@ -17946,25 +17877,25 @@ HelixBoltDeath: IsId 764 Type 12 Init HotshotInit -Death MadcapDeath -GndAttkInit MadcapGndAttkInit -AirAttkInit MadcapGndAttkInit +Death AutocratDeath +GndAttkInit AutocratGndAttkInit +AirAttkInit AutocratGndAttkInit Unused1 SkryrokorLocal00 -GndAttkRpt MadcapGndAttkRpt -AirAttkRpt MadcapGndAttkRpt +GndAttkRpt AutocratGndAttkRpt +AirAttkRpt AutocratGndAttkRpt CastSpell [NONE] -GndAttkToIdle MadcapGndAttkToIdle -AirAttkToIdle MadcapGndAttkToIdle +GndAttkToIdle AutocratGndAttkToIdle +AirAttkToIdle AutocratGndAttkToIdle Unused2 [NONE] -Walking MadcapWalking -WalkingToIdle MadcapWalkingToIdle +Walking AutocratWalking +WalkingToIdle AutocratWalkingToIdle SpecialState1 [NONE] .headerend # ----------------------------------------------------------------------------- # HotshotInit: imgul 1777 0 0 # Hotshot Shadow (cm\faction-t\hotshot-shadow.grp) - goto MadcapWalkingToIdle + goto AutocratWalkingToIdle # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: @@ -19147,25 +19078,25 @@ MaelstromHitInit: IsId 828 Type 12 Init BlackguardInit -Death MadcapDeath +Death AutocratDeath GndAttkInit BlackguardGndAttkInit AirAttkInit BlackguardGndAttkInit Unused1 SkryrokorLocal00 GndAttkRpt BlackguardGndAttkRpt AirAttkRpt BlackguardGndAttkRpt CastSpell [NONE] -GndAttkToIdle MadcapGndAttkToIdle -AirAttkToIdle MadcapGndAttkToIdle +GndAttkToIdle AutocratGndAttkToIdle +AirAttkToIdle AutocratGndAttkToIdle Unused2 [NONE] -Walking MadcapWalking -WalkingToIdle MadcapWalkingToIdle +Walking AutocratWalking +WalkingToIdle AutocratWalkingToIdle SpecialState1 [NONE] .headerend # ----------------------------------------------------------------------------- # BlackguardInit: imgul 2049 0 0 # Blackguard Shadow (cm\faction-t\blackguard-shadow.grp) - goto MadcapWalkingToIdle + goto AutocratWalkingToIdle BlackguardGndAttkInit: playfram 0x100 @@ -19187,7 +19118,7 @@ BlackguardGndAttkRpt: nobrkcodeend gotorepeatattk ignorerest - goto MadcapGndAttkToIdle + goto AutocratGndAttkToIdle # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: @@ -20567,4 +20498,280 @@ SerathielCastSpell: SerathielWalking: setvertpos 0 imgol 2233 0 0 # Serathiel Engines (cm\terran\serathiel-engine.grp) - goto SerathielLocal00 \ No newline at end of file + goto SerathielLocal00 + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2319 Broadside (cm\faction-t\broadside.grp) +.headerstart +IsId 842 +Type 23 +Init BroadsideInit +Death BroadsideDeath +GndAttkInit [NONE] +AirAttkInit [NONE] +Unused1 BroadsideUnused1 +GndAttkRpt [NONE] +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle [NONE] +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking BroadsideWalking +WalkingToIdle BroadsideWalkingToIdle +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt [NONE] +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] +Unused3 [NONE] +StarEditInit Broadside_BaseStarEditInit +.headerend +# ----------------------------------------------------------------------------- # + +BroadsideInit: + wait 1 + imgulnextid 0 0 # Broadside Shadow + setfldirect 12 +BroadsideWalkingToIdle: + playfram 0x00 + goto SkryrokorLocal00 + +BroadsideDeath: + playsnd 317 # Terran\TANK\TTaDth00.WAV + imgol 333 0 0 # Explosion2 (Medium) (thingy\tBangL.grp) + sprol 156 0 0 # Matraleth Death (zerg\zquDeath.grp) + wait 3 + lowsprul 273 0 0 # Terran Building Rubble Small + wait 1 + end + +BroadsideUnused1: + wait 1 + nobrkcodestart + playsnd 1699 + sprol 744 0 0 + wait 12 + setfldirect 13 + nobrkcodeend + goto BroadsideWalkingToIdle + +BroadsideGndAttkInit: + playfram 0x00 + wait 1 + imgol 1499 0 0 # Broadside Muzzle Flash + playsndbtwn 1639 1641 # Broadside weapon 1 fire 01, 02, 03 + attackwith 1 + wait 1 + gotorepeatattk + ignorerest + goto BroadsideWalkingToIdle + +BroadsideWalking: + move 4 + wait 1 + playfram 0x00 + move 4 + wait 1 + playfram 0x11 + move 4 + wait 1 + playfram 0x22 + goto BroadsideWalking + +Broadside_BaseStarEditInit: + setfldirect 12 + imgoluselo 2321 2 0 # Broadside Turret (cm\faction-t\broadside-turret.grp) + wait 1 + imgul 2320 0 0 # Broadside Base Shadow (cm\faction-t\broadside-shadow.grp) + setfldirect 12 + playfram 0x00 + goto InfestedTerranWalkingToIdle + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2321 Broadside Turret (cm\faction-t\broadside-turret.grp) +.headerstart +IsId 843 +Type 13 +Init BroadsideTurretInit +Death Generic_Wait1End +GndAttkInit BroadsideTurretGndAttkInit +AirAttkInit [NONE] +Unused1 SkryrokorLocal00 +GndAttkRpt BroadsideTurretGndAttkInit +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle BroadsideTurretInit +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking SkryrokorLocal00 +WalkingToIdle BroadsideTurretInit +SpecialState1 SkryrokorLocal00 +.headerend +# ----------------------------------------------------------------------------- # + +BroadsideTurretInit: + playfram 0x00 +BroadsideTurretLocal00: + wait 1 + waitrand 62 74 + randcondjmp 230 BroadsideTurretLocal00 + sigorder 8 + randcondjmp 127 BroadsideTurretLocal01 + turnccwise 1 + wait 3 + turnccwise 1 + wait 3 + turnccwise 1 + goto BroadsideTurretLocal00 + +BroadsideTurretLocal01: + turn1cwise + wait 3 + turn1cwise + wait 3 + turn1cwise + goto BroadsideTurretLocal00 + +BroadsideTurretGndAttkInit: + wait 1 + nobrkcodestart + playfram 0x00 + playsndbtwn 4189 4191 # Broadside weaponfire 01, 02, 03 + imgol 536 0 0 # Phalanx (Tank) Turret Attack Overlay (thingy\ettFlash.grp) + wait 1 + attackwith 1 + wait 3 + nobrkcodeend + gotorepeatattk + goto SkryrokorLocal00 + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2316 Cutlass (cm\faction-t\cutlass.grp) +.headerstart +IsId 844 +Type 23 +Init CutlassInit +Death CutlassDeath +GndAttkInit CutlassGndAttkInit +AirAttkInit CutlassGndAttkInit +Unused1 CutlassUnused1 +GndAttkRpt CutlassGndAttkInit +AirAttkRpt CutlassGndAttkInit +CastSpell [NONE] +GndAttkToIdle InfestedTerranWalkingToIdle +AirAttkToIdle InfestedTerranWalkingToIdle +Unused2 [NONE] +Walking CutlassWalking +WalkingToIdle InfestedTerranWalkingToIdle +SpecialState1 [NONE] +SpecialState2 [NONE] +AlmostBuilt [NONE] +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] +Unused3 [NONE] +StarEditInit Cutlass_Tank_BaseStarEditInit +.headerend +# ----------------------------------------------------------------------------- # + +CutlassInit: + imgulnextid 0 0 # Cutlass Shadow (cm\faction-t\cutlass-shadow.grp) + playfram 0x00 + goto InfestedTerranWalkingToIdle + +CutlassDeath: + playsndbtwn 1385 1386 # Cutlass death 01, 02 + imgol 332 0 -5 # Explosion2 (Small) (thingy\tBangS.grp) + wait 3 + lowsprul 845 0 0 # Terran Unit Rubble Small + wait 1 + end + +CutlassUnused1: + wait 1 + nobrkcodestart + playsndbtwn 1705 1706 + sprol 742 0 0 + setfldirect 12 + wait 12 + nobrkcodeend + goto InfestedTerranWalkingToIdle + +CutlassGndAttkInit: + playfram 0x00 + wait 1 + nobrkcodestart + playfram 0x100 + playsndbtwn 4192 4195 # Cutlass weaponfire 01, 02, 03, 04 + attackwith 1 + playfram 0x00 + wait 3 + nobrkcodeend + gotorepeatattk + goto InfestedTerranWalkingToIdle + +CutlassWalking: + 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 + goto CutlassWalking + +Cutlass_Tank_BaseStarEditInit: + setfldirect 12 + imgoluselo 2318 2 0 # Cutlass (Tank) Turret (terran\matador-turret.grp) + wait 1 + imgul 2317 0 0 # Cutlass (Tank) Base Shadow (terran\matador-shadow.grp) + setfldirect 12 + playfram 0x00 + goto InfestedTerranWalkingToIdle + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2318 Cutlass Turret (cm\faction-t\cutlass-turret.grp) +.headerstart +IsId 845 +Type 13 +Init InfestedTerranWalkingToIdle +Death Generic_Wait1End +GndAttkInit CutlassGndAttkInit +AirAttkInit CutlassGndAttkInit +Unused1 [NONE] +GndAttkRpt CutlassGndAttkInit +AirAttkRpt CutlassGndAttkInit +CastSpell [NONE] +GndAttkToIdle InfestedTerranWalkingToIdle +AirAttkToIdle InfestedTerranWalkingToIdle +Unused2 [NONE] +Walking CutlassWalking +WalkingToIdle InfestedTerranWalkingToIdle +SpecialState1 SkryrokorLocal00 +.headerend +# ----------------------------------------------------------------------------- # \ No newline at end of file diff --git a/mpq/scripts/iscript_zerg.bin b/mpq/scripts/iscript_zerg.bin index 5639ff59..50eb510e 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 9f0213a7..38019e4a 100644 --- a/mpq/scripts/iscript_zerg.txt +++ b/mpq/scripts/iscript_zerg.txt @@ -6636,7 +6636,6 @@ ParasiteOverlayInit: playfram 8 wait 2 playfram 9 - playsnd 3239 # Rilirokor\ZBrPss02.wav wait 1 end @@ -10654,7 +10653,7 @@ AirAttkToIdle SkryrokorLocal00 Unused2 [NONE] Walking AxitriliskWalking WalkingToIdle AxitriliskWalkingToIdle -SpecialState1 [NONE] +SpecialState1 SkryrokorLocal00 SpecialState2 AxitriliskSpecialState2 AlmostBuilt [NONE] Built [NONE] diff --git a/mpq/sound/cm/a/phontis/pas-proc-a-01.wav b/mpq/sound/cm/a/phontis/pas-proc-a-01.wav new file mode 100644 index 00000000..dd5d4e41 Binary files /dev/null and b/mpq/sound/cm/a/phontis/pas-proc-a-01.wav differ diff --git a/mpq/sound/cm/a/phontis/pas-proc-a-02.wav b/mpq/sound/cm/a/phontis/pas-proc-a-02.wav new file mode 100644 index 00000000..cd700f08 Binary files /dev/null and b/mpq/sound/cm/a/phontis/pas-proc-a-02.wav differ diff --git a/mpq/sound/cm/a/phontis/pas-proc-a-03.wav b/mpq/sound/cm/a/phontis/pas-proc-a-03.wav new file mode 100644 index 00000000..a69aedd3 Binary files /dev/null and b/mpq/sound/cm/a/phontis/pas-proc-a-03.wav differ diff --git a/mpq/sound/cm/a/phontis/pas-proc-b-01.wav b/mpq/sound/cm/a/phontis/pas-proc-b-01.wav new file mode 100644 index 00000000..54973a19 Binary files /dev/null and b/mpq/sound/cm/a/phontis/pas-proc-b-01.wav differ diff --git a/mpq/sound/cm/f-t/broadside/wf-01.wav b/mpq/sound/cm/f-t/broadside/wf-01.wav new file mode 100644 index 00000000..d31c9d82 Binary files /dev/null and b/mpq/sound/cm/f-t/broadside/wf-01.wav differ diff --git a/mpq/sound/cm/f-t/broadside/wf-02.wav b/mpq/sound/cm/f-t/broadside/wf-02.wav new file mode 100644 index 00000000..d574fe71 Binary files /dev/null and b/mpq/sound/cm/f-t/broadside/wf-02.wav differ diff --git a/mpq/sound/cm/f-t/broadside/wf-03.wav b/mpq/sound/cm/f-t/broadside/wf-03.wav new file mode 100644 index 00000000..e50f5cf8 Binary files /dev/null and b/mpq/sound/cm/f-t/broadside/wf-03.wav differ diff --git a/mpq/sound/cm/f-t/cutlass/wf-01.wav b/mpq/sound/cm/f-t/cutlass/wf-01.wav new file mode 100644 index 00000000..9a289beb Binary files /dev/null and b/mpq/sound/cm/f-t/cutlass/wf-01.wav differ diff --git a/mpq/sound/cm/f-t/cutlass/wf-02.wav b/mpq/sound/cm/f-t/cutlass/wf-02.wav new file mode 100644 index 00000000..5a5f5b92 Binary files /dev/null and b/mpq/sound/cm/f-t/cutlass/wf-02.wav differ diff --git a/mpq/sound/cm/f-t/cutlass/wf-03.wav b/mpq/sound/cm/f-t/cutlass/wf-03.wav new file mode 100644 index 00000000..272046df Binary files /dev/null and b/mpq/sound/cm/f-t/cutlass/wf-03.wav differ diff --git a/mpq/sound/cm/f-t/cutlass/wf-04.wav b/mpq/sound/cm/f-t/cutlass/wf-04.wav new file mode 100644 index 00000000..dc3d79a3 Binary files /dev/null and b/mpq/sound/cm/f-t/cutlass/wf-04.wav differ diff --git a/mpq/sound/cm/t/seraph/irradiate-cast-01.wav b/mpq/sound/cm/t/seraph/irradiate-cast-01.wav new file mode 100644 index 00000000..3c6c7ba4 Binary files /dev/null and b/mpq/sound/cm/t/seraph/irradiate-cast-01.wav differ diff --git a/mpq/tileset/badlands.cv5 b/mpq/tileset/badlands.cv5 index d4f1ede0..f36abac1 100644 Binary files a/mpq/tileset/badlands.cv5 and b/mpq/tileset/badlands.cv5 differ diff --git a/mpq/tileset/badlands.vf4 b/mpq/tileset/badlands.vf4 index 69b777a0..5ef5df9d 100644 Binary files a/mpq/tileset/badlands.vf4 and b/mpq/tileset/badlands.vf4 differ diff --git a/mpq/tileset/badlands.vr4 b/mpq/tileset/badlands.vr4 index 101d4d9d..a418308d 100644 Binary files a/mpq/tileset/badlands.vr4 and b/mpq/tileset/badlands.vr4 differ diff --git a/mpq/tileset/badlands.vx4ex b/mpq/tileset/badlands.vx4ex index 537bcb00..a1bc0799 100644 Binary files a/mpq/tileset/badlands.vx4ex and b/mpq/tileset/badlands.vx4ex differ diff --git a/mpq/unit/cm/askosi/a-construction-large-shadow.grp b/mpq/unit/cm/a/a-construction-large-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/a-construction-large-shadow.grp rename to mpq/unit/cm/a/a-construction-large-shadow.grp diff --git a/mpq/unit/cm/askosi/a-construction-large.grp b/mpq/unit/cm/a/a-construction-large.grp similarity index 100% rename from mpq/unit/cm/askosi/a-construction-large.grp rename to mpq/unit/cm/a/a-construction-large.grp diff --git a/mpq/unit/cm/askosi/a-construction-medium-shadow.grp b/mpq/unit/cm/a/a-construction-medium-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/a-construction-medium-shadow.grp rename to mpq/unit/cm/a/a-construction-medium-shadow.grp diff --git a/mpq/unit/cm/askosi/a-construction-medium.grp b/mpq/unit/cm/a/a-construction-medium.grp similarity index 100% rename from mpq/unit/cm/askosi/a-construction-medium.grp rename to mpq/unit/cm/a/a-construction-medium.grp diff --git a/mpq/unit/cm/askosi/a-construction-small-shadow.grp b/mpq/unit/cm/a/a-construction-small-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/a-construction-small-shadow.grp rename to mpq/unit/cm/a/a-construction-small-shadow.grp diff --git a/mpq/unit/cm/askosi/a-construction-small.grp b/mpq/unit/cm/a/a-construction-small.grp similarity index 100% rename from mpq/unit/cm/askosi/a-construction-small.grp rename to mpq/unit/cm/a/a-construction-small.grp diff --git a/mpq/unit/cm/askosi/a-death-large.grp b/mpq/unit/cm/a/a-death-large.grp similarity index 100% rename from mpq/unit/cm/askosi/a-death-large.grp rename to mpq/unit/cm/a/a-death-large.grp diff --git a/mpq/unit/cm/askosi/a-death-small.grp b/mpq/unit/cm/a/a-death-small.grp similarity index 100% rename from mpq/unit/cm/askosi/a-death-small.grp rename to mpq/unit/cm/a/a-death-small.grp diff --git a/mpq/unit/cm/askosi/a-fire-c.grp b/mpq/unit/cm/a/a-fire-c.grp similarity index 100% rename from mpq/unit/cm/askosi/a-fire-c.grp rename to mpq/unit/cm/a/a-fire-c.grp diff --git a/mpq/unit/cm/askosi/a-fire-f.grp b/mpq/unit/cm/a/a-fire-f.grp similarity index 100% rename from mpq/unit/cm/askosi/a-fire-f.grp rename to mpq/unit/cm/a/a-fire-f.grp diff --git a/mpq/unit/cm/askosi/a-fire-v.grp b/mpq/unit/cm/a/a-fire-v.grp similarity index 100% rename from mpq/unit/cm/askosi/a-fire-v.grp rename to mpq/unit/cm/a/a-fire-v.grp diff --git a/mpq/unit/cm/askosi/a-rubble-large.grp b/mpq/unit/cm/a/a-rubble-large.grp similarity index 100% rename from mpq/unit/cm/askosi/a-rubble-large.grp rename to mpq/unit/cm/a/a-rubble-large.grp diff --git a/mpq/unit/cm/askosi/a-rubble-medium.grp b/mpq/unit/cm/a/a-rubble-medium.grp similarity index 100% rename from mpq/unit/cm/askosi/a-rubble-medium.grp rename to mpq/unit/cm/a/a-rubble-medium.grp diff --git a/mpq/unit/cm/askosi/a-rubble-small.grp b/mpq/unit/cm/a/a-rubble-small.grp similarity index 100% rename from mpq/unit/cm/askosi/a-rubble-small.grp rename to mpq/unit/cm/a/a-rubble-small.grp diff --git a/mpq/unit/cm/askosi/a-rubble-tiny.grp b/mpq/unit/cm/a/a-rubble-tiny.grp similarity index 100% rename from mpq/unit/cm/askosi/a-rubble-tiny.grp rename to mpq/unit/cm/a/a-rubble-tiny.grp diff --git a/mpq/unit/cm/askosi/abutment-damage.lof b/mpq/unit/cm/a/abutment-damage.lof similarity index 100% rename from mpq/unit/cm/askosi/abutment-damage.lof rename to mpq/unit/cm/a/abutment-damage.lof diff --git a/mpq/unit/cm/askosi/abutment-gas.los b/mpq/unit/cm/a/abutment-gas.los similarity index 100% rename from mpq/unit/cm/askosi/abutment-gas.los rename to mpq/unit/cm/a/abutment-gas.los diff --git a/mpq/unit/cm/askosi/abutment-shadow.grp b/mpq/unit/cm/a/abutment-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/abutment-shadow.grp rename to mpq/unit/cm/a/abutment-shadow.grp diff --git a/mpq/unit/cm/askosi/abutment.grp b/mpq/unit/cm/a/abutment.grp similarity index 100% rename from mpq/unit/cm/askosi/abutment.grp rename to mpq/unit/cm/a/abutment.grp diff --git a/mpq/unit/cm/askosi/agonist.grp b/mpq/unit/cm/a/agonist.grp similarity index 100% rename from mpq/unit/cm/askosi/agonist.grp rename to mpq/unit/cm/a/agonist.grp diff --git a/mpq/unit/cm/askosi/akreno.grp b/mpq/unit/cm/a/akreno.grp similarity index 99% rename from mpq/unit/cm/askosi/akreno.grp rename to mpq/unit/cm/a/akreno.grp index e0f014bb..aa89c2a2 100644 Binary files a/mpq/unit/cm/askosi/akreno.grp and b/mpq/unit/cm/a/akreno.grp differ diff --git a/mpq/unit/cm/askosi/aphorist-attack.lol b/mpq/unit/cm/a/aphorist-attack.lol similarity index 100% rename from mpq/unit/cm/askosi/aphorist-attack.lol rename to mpq/unit/cm/a/aphorist-attack.lol diff --git a/mpq/unit/cm/askosi/aphorist-shadow.grp b/mpq/unit/cm/a/aphorist-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/aphorist-shadow.grp rename to mpq/unit/cm/a/aphorist-shadow.grp diff --git a/mpq/unit/cm/askosi/aphorist.grp b/mpq/unit/cm/a/aphorist.grp similarity index 100% rename from mpq/unit/cm/askosi/aphorist.grp rename to mpq/unit/cm/a/aphorist.grp diff --git a/mpq/unit/cm/askosi/arch-damage.lof b/mpq/unit/cm/a/arch-damage.lof similarity index 100% rename from mpq/unit/cm/askosi/arch-damage.lof rename to mpq/unit/cm/a/arch-damage.lof diff --git a/mpq/unit/cm/askosi/arch-gas.los b/mpq/unit/cm/a/arch-gas.los similarity index 100% rename from mpq/unit/cm/askosi/arch-gas.los rename to mpq/unit/cm/a/arch-gas.los diff --git a/mpq/unit/cm/askosi/arch-shadow.grp b/mpq/unit/cm/a/arch-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/arch-shadow.grp rename to mpq/unit/cm/a/arch-shadow.grp diff --git a/mpq/unit/cm/askosi/arch.grp b/mpq/unit/cm/a/arch.grp similarity index 100% rename from mpq/unit/cm/askosi/arch.grp rename to mpq/unit/cm/a/arch.grp diff --git a/mpq/unit/cm/askosi/astrolabe-damage.lof b/mpq/unit/cm/a/astrolabe-damage.lof similarity index 100% rename from mpq/unit/cm/askosi/astrolabe-damage.lof rename to mpq/unit/cm/a/astrolabe-damage.lof diff --git a/mpq/unit/cm/askosi/astrolabe-shadow.grp b/mpq/unit/cm/a/astrolabe-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/astrolabe-shadow.grp rename to mpq/unit/cm/a/astrolabe-shadow.grp diff --git a/mpq/unit/cm/askosi/astrolabe.grp b/mpq/unit/cm/a/astrolabe.grp similarity index 100% rename from mpq/unit/cm/askosi/astrolabe.grp rename to mpq/unit/cm/a/astrolabe.grp diff --git a/mpq/unit/cm/askosi/auxine.grp b/mpq/unit/cm/a/auxine.grp similarity index 100% rename from mpq/unit/cm/askosi/auxine.grp rename to mpq/unit/cm/a/auxine.grp diff --git a/mpq/unit/cm/askosi/avatar-shadow.grp b/mpq/unit/cm/a/avatar-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/avatar-shadow.grp rename to mpq/unit/cm/a/avatar-shadow.grp diff --git a/mpq/unit/cm/askosi/avatar.grp b/mpq/unit/cm/a/avatar.grp similarity index 100% rename from mpq/unit/cm/askosi/avatar.grp rename to mpq/unit/cm/a/avatar.grp diff --git a/mpq/unit/cm/askosi/bestiary-damage.lof b/mpq/unit/cm/a/bestiary-damage.lof similarity index 100% rename from mpq/unit/cm/askosi/bestiary-damage.lof rename to mpq/unit/cm/a/bestiary-damage.lof diff --git a/mpq/unit/cm/askosi/bestiary-shadow.grp b/mpq/unit/cm/a/bestiary-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/bestiary-shadow.grp rename to mpq/unit/cm/a/bestiary-shadow.grp diff --git a/mpq/unit/cm/askosi/bestiary.grp b/mpq/unit/cm/a/bestiary.grp similarity index 100% rename from mpq/unit/cm/askosi/bestiary.grp rename to mpq/unit/cm/a/bestiary.grp diff --git a/mpq/unit/cm/a/bounty-damage.lof b/mpq/unit/cm/a/bounty-damage.lof new file mode 100644 index 00000000..d0ae1962 Binary files /dev/null and b/mpq/unit/cm/a/bounty-damage.lof differ diff --git a/mpq/unit/cm/a/bounty-shadow.grp b/mpq/unit/cm/a/bounty-shadow.grp new file mode 100644 index 00000000..fd17af9f Binary files /dev/null and b/mpq/unit/cm/a/bounty-shadow.grp differ diff --git a/mpq/unit/cm/a/bounty.grp b/mpq/unit/cm/a/bounty.grp new file mode 100644 index 00000000..ad11881b Binary files /dev/null and b/mpq/unit/cm/a/bounty.grp differ diff --git a/mpq/unit/cm/askosi/cardinal-death.grp b/mpq/unit/cm/a/cardinal-death.grp similarity index 100% rename from mpq/unit/cm/askosi/cardinal-death.grp rename to mpq/unit/cm/a/cardinal-death.grp diff --git a/mpq/unit/cm/askosi/cardinal-shadow.grp b/mpq/unit/cm/a/cardinal-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/cardinal-shadow.grp rename to mpq/unit/cm/a/cardinal-shadow.grp diff --git a/mpq/unit/cm/askosi/cardinal.grp b/mpq/unit/cm/a/cardinal.grp similarity index 100% rename from mpq/unit/cm/askosi/cardinal.grp rename to mpq/unit/cm/a/cardinal.grp diff --git a/mpq/unit/cm/askosi/chantry-damage.lof b/mpq/unit/cm/a/chantry-damage.lof similarity index 100% rename from mpq/unit/cm/askosi/chantry-damage.lof rename to mpq/unit/cm/a/chantry-damage.lof diff --git a/mpq/unit/cm/askosi/chantry-shadow.grp b/mpq/unit/cm/a/chantry-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/chantry-shadow.grp rename to mpq/unit/cm/a/chantry-shadow.grp diff --git a/mpq/unit/cm/askosi/chantry.grp b/mpq/unit/cm/a/chantry.grp similarity index 100% rename from mpq/unit/cm/askosi/chantry.grp rename to mpq/unit/cm/a/chantry.grp diff --git a/mpq/unit/cm/askosi/cipher-shadow.grp b/mpq/unit/cm/a/cipher-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/cipher-shadow.grp rename to mpq/unit/cm/a/cipher-shadow.grp diff --git a/mpq/unit/cm/askosi/cipher.grp b/mpq/unit/cm/a/cipher.grp similarity index 100% rename from mpq/unit/cm/askosi/cipher.grp rename to mpq/unit/cm/a/cipher.grp diff --git a/mpq/unit/cm/askosi/conduit-damage.lof b/mpq/unit/cm/a/conduit-damage.lof similarity index 100% rename from mpq/unit/cm/askosi/conduit-damage.lof rename to mpq/unit/cm/a/conduit-damage.lof diff --git a/mpq/unit/cm/askosi/conduit-shadow.grp b/mpq/unit/cm/a/conduit-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/conduit-shadow.grp rename to mpq/unit/cm/a/conduit-shadow.grp diff --git a/mpq/unit/cm/askosi/conduit.grp b/mpq/unit/cm/a/conduit.grp similarity index 100% rename from mpq/unit/cm/askosi/conduit.grp rename to mpq/unit/cm/a/conduit.grp diff --git a/mpq/unit/cm/askosi/constituent.grp b/mpq/unit/cm/a/constituent.grp similarity index 100% rename from mpq/unit/cm/askosi/constituent.grp rename to mpq/unit/cm/a/constituent.grp diff --git a/mpq/unit/cm/askosi/cosmoscope-damage.lof b/mpq/unit/cm/a/cosmoscope-damage.lof similarity index 100% rename from mpq/unit/cm/askosi/cosmoscope-damage.lof rename to mpq/unit/cm/a/cosmoscope-damage.lof diff --git a/mpq/unit/cm/askosi/cosmoscope-shadow.grp b/mpq/unit/cm/a/cosmoscope-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/cosmoscope-shadow.grp rename to mpq/unit/cm/a/cosmoscope-shadow.grp diff --git a/mpq/unit/cm/askosi/cosmoscope.grp b/mpq/unit/cm/a/cosmoscope.grp similarity index 100% rename from mpq/unit/cm/askosi/cosmoscope.grp rename to mpq/unit/cm/a/cosmoscope.grp diff --git a/mpq/unit/cm/askosi/crematorium.grp b/mpq/unit/cm/a/crematorium.grp similarity index 100% rename from mpq/unit/cm/askosi/crematorium.grp rename to mpq/unit/cm/a/crematorium.grp diff --git a/mpq/unit/cm/a/domain-damage.lof b/mpq/unit/cm/a/domain-damage.lof new file mode 100644 index 00000000..07013772 Binary files /dev/null and b/mpq/unit/cm/a/domain-damage.lof differ diff --git a/mpq/unit/cm/a/domain-shadow.grp b/mpq/unit/cm/a/domain-shadow.grp new file mode 100644 index 00000000..82317144 Binary files /dev/null and b/mpq/unit/cm/a/domain-shadow.grp differ diff --git a/mpq/unit/cm/a/domain.grp b/mpq/unit/cm/a/domain.grp new file mode 100644 index 00000000..bc34ae5d Binary files /dev/null and b/mpq/unit/cm/a/domain.grp differ diff --git a/mpq/unit/cm/a/dorminge-damage.lof b/mpq/unit/cm/a/dorminge-damage.lof new file mode 100644 index 00000000..4354d54e Binary files /dev/null and b/mpq/unit/cm/a/dorminge-damage.lof differ diff --git a/mpq/unit/cm/a/dorminge-shadow.grp b/mpq/unit/cm/a/dorminge-shadow.grp new file mode 100644 index 00000000..387cb287 Binary files /dev/null and b/mpq/unit/cm/a/dorminge-shadow.grp differ diff --git a/mpq/unit/cm/a/dorminge.grp b/mpq/unit/cm/a/dorminge.grp new file mode 100644 index 00000000..d969ebdf Binary files /dev/null and b/mpq/unit/cm/a/dorminge.grp differ diff --git a/mpq/unit/cm/askosi/doronin-shadow.grp b/mpq/unit/cm/a/doronin-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/doronin-shadow.grp rename to mpq/unit/cm/a/doronin-shadow.grp diff --git a/mpq/unit/cm/askosi/doronin.grp b/mpq/unit/cm/a/doronin.grp similarity index 100% rename from mpq/unit/cm/askosi/doronin.grp rename to mpq/unit/cm/a/doronin.grp diff --git a/mpq/unit/cm/askosi/dyad.grp b/mpq/unit/cm/a/dyad.grp similarity index 100% rename from mpq/unit/cm/askosi/dyad.grp rename to mpq/unit/cm/a/dyad.grp diff --git a/mpq/unit/cm/a/el-harness.grp b/mpq/unit/cm/a/el-harness.grp new file mode 100644 index 00000000..b91e290b Binary files /dev/null and b/mpq/unit/cm/a/el-harness.grp differ diff --git a/mpq/unit/cm/askosi/emissary.grp b/mpq/unit/cm/a/emissary.grp similarity index 100% rename from mpq/unit/cm/askosi/emissary.grp rename to mpq/unit/cm/a/emissary.grp diff --git a/mpq/unit/cm/a/endbore.grp b/mpq/unit/cm/a/endbore.grp new file mode 100644 index 00000000..79b913e8 Binary files /dev/null and b/mpq/unit/cm/a/endbore.grp differ diff --git a/mpq/unit/cm/askosi/eyelet-shadow.grp b/mpq/unit/cm/a/eyelet-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/eyelet-shadow.grp rename to mpq/unit/cm/a/eyelet-shadow.grp diff --git a/mpq/unit/cm/askosi/eyelet.grp b/mpq/unit/cm/a/eyelet.grp similarity index 100% rename from mpq/unit/cm/askosi/eyelet.grp rename to mpq/unit/cm/a/eyelet.grp diff --git a/mpq/unit/cm/askosi/function-damage.lof b/mpq/unit/cm/a/function-damage.lof similarity index 100% rename from mpq/unit/cm/askosi/function-damage.lof rename to mpq/unit/cm/a/function-damage.lof diff --git a/mpq/unit/cm/askosi/function-shadow.grp b/mpq/unit/cm/a/function-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/function-shadow.grp rename to mpq/unit/cm/a/function-shadow.grp diff --git a/mpq/unit/cm/askosi/function.grp b/mpq/unit/cm/a/function.grp similarity index 100% rename from mpq/unit/cm/askosi/function.grp rename to mpq/unit/cm/a/function.grp diff --git a/mpq/unit/cm/askosi/gauntlet-shadow.grp b/mpq/unit/cm/a/gauntlet-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/gauntlet-shadow.grp rename to mpq/unit/cm/a/gauntlet-shadow.grp diff --git a/mpq/unit/cm/askosi/gauntlet.grp b/mpq/unit/cm/a/gauntlet.grp similarity index 100% rename from mpq/unit/cm/askosi/gauntlet.grp rename to mpq/unit/cm/a/gauntlet.grp diff --git a/mpq/unit/cm/a/grandstand-damage.lof b/mpq/unit/cm/a/grandstand-damage.lof new file mode 100644 index 00000000..fac81ed8 Binary files /dev/null and b/mpq/unit/cm/a/grandstand-damage.lof differ diff --git a/mpq/unit/cm/a/grandstand-shadow.grp b/mpq/unit/cm/a/grandstand-shadow.grp new file mode 100644 index 00000000..851c933a Binary files /dev/null and b/mpq/unit/cm/a/grandstand-shadow.grp differ diff --git a/mpq/unit/cm/a/grandstand.grp b/mpq/unit/cm/a/grandstand.grp new file mode 100644 index 00000000..563d2896 Binary files /dev/null and b/mpq/unit/cm/a/grandstand.grp differ diff --git a/mpq/unit/cm/askosi/helion-attack.lol b/mpq/unit/cm/a/helion-attack.lol similarity index 100% rename from mpq/unit/cm/askosi/helion-attack.lol rename to mpq/unit/cm/a/helion-attack.lol diff --git a/mpq/unit/cm/askosi/helion-engine.grp b/mpq/unit/cm/a/helion-engine.grp similarity index 100% rename from mpq/unit/cm/askosi/helion-engine.grp rename to mpq/unit/cm/a/helion-engine.grp diff --git a/mpq/unit/cm/askosi/helion.grp b/mpq/unit/cm/a/helion.grp similarity index 100% rename from mpq/unit/cm/askosi/helion.grp rename to mpq/unit/cm/a/helion.grp diff --git a/mpq/unit/cm/askosi/iconoclast.grp b/mpq/unit/cm/a/iconoclast.grp similarity index 100% rename from mpq/unit/cm/askosi/iconoclast.grp rename to mpq/unit/cm/a/iconoclast.grp diff --git a/mpq/unit/cm/askosi/inkblot.grp b/mpq/unit/cm/a/inkblot.grp similarity index 100% rename from mpq/unit/cm/askosi/inkblot.grp rename to mpq/unit/cm/a/inkblot.grp diff --git a/mpq/unit/cm/askosi/intendent-attack1.lol b/mpq/unit/cm/a/intendent-attack1.lol similarity index 100% rename from mpq/unit/cm/askosi/intendent-attack1.lol rename to mpq/unit/cm/a/intendent-attack1.lol diff --git a/mpq/unit/cm/askosi/intendent-attack2.lol b/mpq/unit/cm/a/intendent-attack2.lol similarity index 100% rename from mpq/unit/cm/askosi/intendent-attack2.lol rename to mpq/unit/cm/a/intendent-attack2.lol diff --git a/mpq/unit/cm/askosi/intendent-shadow.grp b/mpq/unit/cm/a/intendent-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/intendent-shadow.grp rename to mpq/unit/cm/a/intendent-shadow.grp diff --git a/mpq/unit/cm/askosi/intendent.grp b/mpq/unit/cm/a/intendent.grp similarity index 100% rename from mpq/unit/cm/askosi/intendent.grp rename to mpq/unit/cm/a/intendent.grp diff --git a/mpq/unit/cm/a/landlock-damage.lof b/mpq/unit/cm/a/landlock-damage.lof new file mode 100644 index 00000000..35394261 Binary files /dev/null and b/mpq/unit/cm/a/landlock-damage.lof differ diff --git a/mpq/unit/cm/a/landlock-shadow.grp b/mpq/unit/cm/a/landlock-shadow.grp new file mode 100644 index 00000000..d2bf2504 Binary files /dev/null and b/mpq/unit/cm/a/landlock-shadow.grp differ diff --git a/mpq/unit/cm/askosi/landlock.grp b/mpq/unit/cm/a/landlock.grp similarity index 90% rename from mpq/unit/cm/askosi/landlock.grp rename to mpq/unit/cm/a/landlock.grp index 2932ae6c..6d6ebd82 100644 Binary files a/mpq/unit/cm/askosi/landlock.grp and b/mpq/unit/cm/a/landlock.grp differ diff --git a/mpq/unit/cm/a/lekrot.grp b/mpq/unit/cm/a/lekrot.grp new file mode 100644 index 00000000..3e36ce02 Binary files /dev/null and b/mpq/unit/cm/a/lekrot.grp differ diff --git a/mpq/unit/cm/askosi/lightning-hit-medium.grp b/mpq/unit/cm/a/lightning-hit-medium.grp similarity index 100% rename from mpq/unit/cm/askosi/lightning-hit-medium.grp rename to mpq/unit/cm/a/lightning-hit-medium.grp diff --git a/mpq/unit/cm/askosi/lightning-hit-small.grp b/mpq/unit/cm/a/lightning-hit-small.grp similarity index 100% rename from mpq/unit/cm/askosi/lightning-hit-small.grp rename to mpq/unit/cm/a/lightning-hit-small.grp diff --git a/mpq/unit/cm/a/limire.grp b/mpq/unit/cm/a/limire.grp new file mode 100644 index 00000000..9d225c28 Binary files /dev/null and b/mpq/unit/cm/a/limire.grp differ diff --git a/mpq/unit/cm/a/lotiro-damage.lof b/mpq/unit/cm/a/lotiro-damage.lof new file mode 100644 index 00000000..bc416a01 Binary files /dev/null and b/mpq/unit/cm/a/lotiro-damage.lof differ diff --git a/mpq/unit/cm/a/lotiro-shadow.grp b/mpq/unit/cm/a/lotiro-shadow.grp new file mode 100644 index 00000000..11a38f97 Binary files /dev/null and b/mpq/unit/cm/a/lotiro-shadow.grp differ diff --git a/mpq/unit/cm/a/lotiro.grp b/mpq/unit/cm/a/lotiro.grp new file mode 100644 index 00000000..df9ec3a7 Binary files /dev/null and b/mpq/unit/cm/a/lotiro.grp differ diff --git a/mpq/unit/cm/askosi/mimic-shadow.grp b/mpq/unit/cm/a/mimic-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/mimic-shadow.grp rename to mpq/unit/cm/a/mimic-shadow.grp diff --git a/mpq/unit/cm/askosi/mimic.grp b/mpq/unit/cm/a/mimic.grp similarity index 100% rename from mpq/unit/cm/askosi/mimic.grp rename to mpq/unit/cm/a/mimic.grp diff --git a/mpq/unit/cm/askosi/missionary-shadow.grp b/mpq/unit/cm/a/missionary-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/missionary-shadow.grp rename to mpq/unit/cm/a/missionary-shadow.grp diff --git a/mpq/unit/cm/askosi/missionary.grp b/mpq/unit/cm/a/missionary.grp similarity index 100% rename from mpq/unit/cm/askosi/missionary.grp rename to mpq/unit/cm/a/missionary.grp diff --git a/mpq/unit/cm/askosi/obelisk-damage.lof b/mpq/unit/cm/a/obelisk-damage.lof similarity index 100% rename from mpq/unit/cm/askosi/obelisk-damage.lof rename to mpq/unit/cm/a/obelisk-damage.lof diff --git a/mpq/unit/cm/askosi/obelisk-shadow.grp b/mpq/unit/cm/a/obelisk-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/obelisk-shadow.grp rename to mpq/unit/cm/a/obelisk-shadow.grp diff --git a/mpq/unit/cm/askosi/obelisk.grp b/mpq/unit/cm/a/obelisk.grp similarity index 100% rename from mpq/unit/cm/askosi/obelisk.grp rename to mpq/unit/cm/a/obelisk.grp diff --git a/mpq/unit/cm/askosi/object-shadow.grp b/mpq/unit/cm/a/object-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/object-shadow.grp rename to mpq/unit/cm/a/object-shadow.grp diff --git a/mpq/unit/cm/askosi/object.grp b/mpq/unit/cm/a/object.grp similarity index 100% rename from mpq/unit/cm/askosi/object.grp rename to mpq/unit/cm/a/object.grp diff --git a/mpq/unit/cm/a/panoply-damage.lof b/mpq/unit/cm/a/panoply-damage.lof new file mode 100644 index 00000000..6a94689f Binary files /dev/null and b/mpq/unit/cm/a/panoply-damage.lof differ diff --git a/mpq/unit/cm/askosi/panoply-shadow.grp b/mpq/unit/cm/a/panoply-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/panoply-shadow.grp rename to mpq/unit/cm/a/panoply-shadow.grp diff --git a/mpq/unit/cm/a/panoply.grp b/mpq/unit/cm/a/panoply.grp new file mode 100644 index 00000000..022d4324 Binary files /dev/null and b/mpq/unit/cm/a/panoply.grp differ diff --git a/mpq/unit/cm/askosi/paraclete.grp b/mpq/unit/cm/a/paraclete.grp similarity index 100% rename from mpq/unit/cm/askosi/paraclete.grp rename to mpq/unit/cm/a/paraclete.grp diff --git a/mpq/unit/cm/askosi/petract-shadow.grp b/mpq/unit/cm/a/petract-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/petract-shadow.grp rename to mpq/unit/cm/a/petract-shadow.grp diff --git a/mpq/unit/cm/askosi/petract.grp b/mpq/unit/cm/a/petract.grp similarity index 100% rename from mpq/unit/cm/askosi/petract.grp rename to mpq/unit/cm/a/petract.grp diff --git a/mpq/unit/cm/askosi/phontis-attack.lol b/mpq/unit/cm/a/phontis-attack.lol similarity index 100% rename from mpq/unit/cm/askosi/phontis-attack.lol rename to mpq/unit/cm/a/phontis-attack.lol diff --git a/mpq/unit/cm/askosi/phontis-shadow.grp b/mpq/unit/cm/a/phontis-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/phontis-shadow.grp rename to mpq/unit/cm/a/phontis-shadow.grp diff --git a/mpq/unit/cm/askosi/phontis.grp b/mpq/unit/cm/a/phontis.grp similarity index 100% rename from mpq/unit/cm/askosi/phontis.grp rename to mpq/unit/cm/a/phontis.grp diff --git a/mpq/unit/cm/askosi/pilgrim-shadow.grp b/mpq/unit/cm/a/pilgrim-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/pilgrim-shadow.grp rename to mpq/unit/cm/a/pilgrim-shadow.grp diff --git a/mpq/unit/cm/askosi/pilgrim.grp b/mpq/unit/cm/a/pilgrim.grp similarity index 100% rename from mpq/unit/cm/askosi/pilgrim.grp rename to mpq/unit/cm/a/pilgrim.grp diff --git a/mpq/unit/cm/askosi/pilgrim.loo b/mpq/unit/cm/a/pilgrim.loo similarity index 100% rename from mpq/unit/cm/askosi/pilgrim.loo rename to mpq/unit/cm/a/pilgrim.loo diff --git a/mpq/unit/cm/askosi/proscenium-damage.lof b/mpq/unit/cm/a/proscenium-damage.lof similarity index 100% rename from mpq/unit/cm/askosi/proscenium-damage.lof rename to mpq/unit/cm/a/proscenium-damage.lof diff --git a/mpq/unit/cm/askosi/proscenium-shadow.grp b/mpq/unit/cm/a/proscenium-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/proscenium-shadow.grp rename to mpq/unit/cm/a/proscenium-shadow.grp diff --git a/mpq/unit/cm/askosi/proscenium.grp b/mpq/unit/cm/a/proscenium.grp similarity index 100% rename from mpq/unit/cm/askosi/proscenium.grp rename to mpq/unit/cm/a/proscenium.grp diff --git a/mpq/unit/cm/askosi/proselyte-shadow.grp b/mpq/unit/cm/a/proselyte-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/proselyte-shadow.grp rename to mpq/unit/cm/a/proselyte-shadow.grp diff --git a/mpq/unit/cm/askosi/proselyte.grp b/mpq/unit/cm/a/proselyte.grp similarity index 100% rename from mpq/unit/cm/askosi/proselyte.grp rename to mpq/unit/cm/a/proselyte.grp diff --git a/mpq/unit/cm/a/radix-damage.lof b/mpq/unit/cm/a/radix-damage.lof new file mode 100644 index 00000000..67c9ec8f Binary files /dev/null and b/mpq/unit/cm/a/radix-damage.lof differ diff --git a/mpq/unit/cm/a/radix-shadow.grp b/mpq/unit/cm/a/radix-shadow.grp new file mode 100644 index 00000000..24f44b86 Binary files /dev/null and b/mpq/unit/cm/a/radix-shadow.grp differ diff --git a/mpq/unit/cm/a/radix.grp b/mpq/unit/cm/a/radix.grp new file mode 100644 index 00000000..1306c301 Binary files /dev/null and b/mpq/unit/cm/a/radix.grp differ diff --git a/mpq/unit/cm/askosi/rove-engine.grp b/mpq/unit/cm/a/rove-engine.grp similarity index 100% rename from mpq/unit/cm/askosi/rove-engine.grp rename to mpq/unit/cm/a/rove-engine.grp diff --git a/mpq/unit/cm/askosi/rove.grp b/mpq/unit/cm/a/rove.grp similarity index 100% rename from mpq/unit/cm/askosi/rove.grp rename to mpq/unit/cm/a/rove.grp diff --git a/mpq/unit/cm/askosi/scepter.grp b/mpq/unit/cm/a/scepter.grp similarity index 100% rename from mpq/unit/cm/askosi/scepter.grp rename to mpq/unit/cm/a/scepter.grp diff --git a/mpq/unit/cm/askosi/scralia.grp b/mpq/unit/cm/a/scralia.grp similarity index 100% rename from mpq/unit/cm/askosi/scralia.grp rename to mpq/unit/cm/a/scralia.grp diff --git a/mpq/unit/cm/askosi/thaumalogue-remains.grp b/mpq/unit/cm/a/thaumalogue-remains.grp similarity index 100% rename from mpq/unit/cm/askosi/thaumalogue-remains.grp rename to mpq/unit/cm/a/thaumalogue-remains.grp diff --git a/mpq/unit/cm/askosi/thaumalogue-shadow.grp b/mpq/unit/cm/a/thaumalogue-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/thaumalogue-shadow.grp rename to mpq/unit/cm/a/thaumalogue-shadow.grp diff --git a/mpq/unit/cm/askosi/thaumalogue.grp b/mpq/unit/cm/a/thaumalogue.grp similarity index 100% rename from mpq/unit/cm/askosi/thaumalogue.grp rename to mpq/unit/cm/a/thaumalogue.grp diff --git a/mpq/unit/cm/askosi/tirade.grp b/mpq/unit/cm/a/tirade.grp similarity index 100% rename from mpq/unit/cm/askosi/tirade.grp rename to mpq/unit/cm/a/tirade.grp diff --git a/mpq/unit/cm/a/tortare.grp b/mpq/unit/cm/a/tortare.grp new file mode 100644 index 00000000..8768243a Binary files /dev/null and b/mpq/unit/cm/a/tortare.grp differ diff --git a/mpq/unit/cm/askosi/vicar-attack.lol b/mpq/unit/cm/a/vicar-attack.lol similarity index 100% rename from mpq/unit/cm/askosi/vicar-attack.lol rename to mpq/unit/cm/a/vicar-attack.lol diff --git a/mpq/unit/cm/askosi/vicar-death.grp b/mpq/unit/cm/a/vicar-death.grp similarity index 100% rename from mpq/unit/cm/askosi/vicar-death.grp rename to mpq/unit/cm/a/vicar-death.grp diff --git a/mpq/unit/cm/askosi/vicar-shadow.grp b/mpq/unit/cm/a/vicar-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/vicar-shadow.grp rename to mpq/unit/cm/a/vicar-shadow.grp diff --git a/mpq/unit/cm/askosi/vicar.grp b/mpq/unit/cm/a/vicar.grp similarity index 100% rename from mpq/unit/cm/askosi/vicar.grp rename to mpq/unit/cm/a/vicar.grp diff --git a/mpq/unit/cm/a/warringwinds-overlay.grp b/mpq/unit/cm/a/warringwinds-overlay.grp new file mode 100644 index 00000000..f3cccb77 Binary files /dev/null and b/mpq/unit/cm/a/warringwinds-overlay.grp differ diff --git a/mpq/unit/cm/askosi/zonguard.grp b/mpq/unit/cm/a/zonguard.grp similarity index 100% rename from mpq/unit/cm/askosi/zonguard.grp rename to mpq/unit/cm/a/zonguard.grp diff --git a/mpq/unit/cm/askosi/zylode-damage.lof b/mpq/unit/cm/a/zylode-damage.lof similarity index 100% rename from mpq/unit/cm/askosi/zylode-damage.lof rename to mpq/unit/cm/a/zylode-damage.lof diff --git a/mpq/unit/cm/askosi/zylode-shadow.grp b/mpq/unit/cm/a/zylode-shadow.grp similarity index 100% rename from mpq/unit/cm/askosi/zylode-shadow.grp rename to mpq/unit/cm/a/zylode-shadow.grp diff --git a/mpq/unit/cm/askosi/zylode.grp b/mpq/unit/cm/a/zylode.grp similarity index 100% rename from mpq/unit/cm/askosi/zylode.grp rename to mpq/unit/cm/a/zylode.grp diff --git a/mpq/unit/cm/acropolis/marinegrounds-shad.grp b/mpq/unit/cm/acr/marinegrounds-shad.grp similarity index 100% rename from mpq/unit/cm/acropolis/marinegrounds-shad.grp rename to mpq/unit/cm/acr/marinegrounds-shad.grp diff --git a/mpq/unit/cm/acropolis/marinegrounds.grp b/mpq/unit/cm/acr/marinegrounds.grp similarity index 100% rename from mpq/unit/cm/acropolis/marinegrounds.grp rename to mpq/unit/cm/acr/marinegrounds.grp diff --git a/mpq/unit/cm/askosi/bounty-damage.lof b/mpq/unit/cm/askosi/bounty-damage.lof deleted file mode 100644 index 091697d8..00000000 Binary files a/mpq/unit/cm/askosi/bounty-damage.lof and /dev/null differ diff --git a/mpq/unit/cm/askosi/bounty-shadow.grp b/mpq/unit/cm/askosi/bounty-shadow.grp deleted file mode 100644 index 9b696fc3..00000000 Binary files a/mpq/unit/cm/askosi/bounty-shadow.grp and /dev/null differ diff --git a/mpq/unit/cm/askosi/bounty.grp b/mpq/unit/cm/askosi/bounty.grp deleted file mode 100644 index 0bea277e..00000000 Binary files a/mpq/unit/cm/askosi/bounty.grp and /dev/null differ diff --git a/mpq/unit/cm/askosi/grandstand-damage.lof b/mpq/unit/cm/askosi/grandstand-damage.lof deleted file mode 100644 index f976962e..00000000 Binary files a/mpq/unit/cm/askosi/grandstand-damage.lof and /dev/null differ diff --git a/mpq/unit/cm/askosi/grandstand-shadow.grp b/mpq/unit/cm/askosi/grandstand-shadow.grp deleted file mode 100644 index e6036eab..00000000 Binary files a/mpq/unit/cm/askosi/grandstand-shadow.grp and /dev/null differ diff --git a/mpq/unit/cm/askosi/grandstand.grp b/mpq/unit/cm/askosi/grandstand.grp deleted file mode 100644 index 441f05c4..00000000 Binary files a/mpq/unit/cm/askosi/grandstand.grp and /dev/null differ diff --git a/mpq/unit/cm/askosi/landlock-shadow.grp b/mpq/unit/cm/askosi/landlock-shadow.grp deleted file mode 100644 index 1054e210..00000000 Binary files a/mpq/unit/cm/askosi/landlock-shadow.grp and /dev/null differ diff --git a/mpq/unit/cm/askosi/panoply.grp b/mpq/unit/cm/askosi/panoply.grp deleted file mode 100644 index ae41afc3..00000000 Binary files a/mpq/unit/cm/askosi/panoply.grp and /dev/null differ diff --git a/mpq/unit/cm/askosi/radix-damage.lof b/mpq/unit/cm/askosi/radix-damage.lof deleted file mode 100644 index 5bdaccc3..00000000 Binary files a/mpq/unit/cm/askosi/radix-damage.lof and /dev/null differ diff --git a/mpq/unit/cm/askosi/radix-shadow.grp b/mpq/unit/cm/askosi/radix-shadow.grp deleted file mode 100644 index ccb3d6ce..00000000 Binary files a/mpq/unit/cm/askosi/radix-shadow.grp and /dev/null differ diff --git a/mpq/unit/cm/askosi/radix.grp b/mpq/unit/cm/askosi/radix.grp deleted file mode 100644 index 1ec78993..00000000 Binary files a/mpq/unit/cm/askosi/radix.grp and /dev/null differ diff --git a/mpq/unit/cm/celebrations/aprilfools/quazilisk.grp b/mpq/unit/cm/cb/aprilfools/quazilisk.grp similarity index 100% rename from mpq/unit/cm/celebrations/aprilfools/quazilisk.grp rename to mpq/unit/cm/cb/aprilfools/quazilisk.grp diff --git a/mpq/unit/cm/celebrations/christmas/commandcenter.grp b/mpq/unit/cm/cb/christmas/commandcenter.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/commandcenter.grp rename to mpq/unit/cm/cb/christmas/commandcenter.grp diff --git a/mpq/unit/cm/celebrations/christmas/drone.grp b/mpq/unit/cm/cb/christmas/drone.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/drone.grp rename to mpq/unit/cm/cb/christmas/drone.grp diff --git a/mpq/unit/cm/celebrations/christmas/hatchery.grp b/mpq/unit/cm/cb/christmas/hatchery.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/hatchery.grp rename to mpq/unit/cm/cb/christmas/hatchery.grp diff --git a/mpq/unit/cm/celebrations/christmas/hive.grp b/mpq/unit/cm/cb/christmas/hive.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/hive.grp rename to mpq/unit/cm/cb/christmas/hive.grp diff --git a/mpq/unit/cm/celebrations/christmas/infestedterran.grp b/mpq/unit/cm/cb/christmas/infestedterran.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/infestedterran.grp rename to mpq/unit/cm/cb/christmas/infestedterran.grp diff --git a/mpq/unit/cm/celebrations/christmas/lair.grp b/mpq/unit/cm/cb/christmas/lair.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/lair.grp rename to mpq/unit/cm/cb/christmas/lair.grp diff --git a/mpq/unit/cm/celebrations/christmas/landlock.grp b/mpq/unit/cm/cb/christmas/landlock.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/landlock.grp rename to mpq/unit/cm/cb/christmas/landlock.grp diff --git a/mpq/unit/cm/celebrations/christmas/mineralchunk-empty.grp b/mpq/unit/cm/cb/christmas/mineralchunk-empty.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/mineralchunk-empty.grp rename to mpq/unit/cm/cb/christmas/mineralchunk-empty.grp diff --git a/mpq/unit/cm/celebrations/christmas/mineralchunk.grp b/mpq/unit/cm/cb/christmas/mineralchunk.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/mineralchunk.grp rename to mpq/unit/cm/cb/christmas/mineralchunk.grp diff --git a/mpq/unit/cm/celebrations/christmas/mineralfield01-shad.grp b/mpq/unit/cm/cb/christmas/mineralfield01-shad.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/mineralfield01-shad.grp rename to mpq/unit/cm/cb/christmas/mineralfield01-shad.grp diff --git a/mpq/unit/cm/celebrations/christmas/mineralfield01.grp b/mpq/unit/cm/cb/christmas/mineralfield01.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/mineralfield01.grp rename to mpq/unit/cm/cb/christmas/mineralfield01.grp diff --git a/mpq/unit/cm/celebrations/christmas/mineralfield02-shad.grp b/mpq/unit/cm/cb/christmas/mineralfield02-shad.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/mineralfield02-shad.grp rename to mpq/unit/cm/cb/christmas/mineralfield02-shad.grp diff --git a/mpq/unit/cm/celebrations/christmas/mineralfield02.grp b/mpq/unit/cm/cb/christmas/mineralfield02.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/mineralfield02.grp rename to mpq/unit/cm/cb/christmas/mineralfield02.grp diff --git a/mpq/unit/cm/celebrations/christmas/mineralfield03-shad.grp b/mpq/unit/cm/cb/christmas/mineralfield03-shad.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/mineralfield03-shad.grp rename to mpq/unit/cm/cb/christmas/mineralfield03-shad.grp diff --git a/mpq/unit/cm/celebrations/christmas/mineralfield03.grp b/mpq/unit/cm/cb/christmas/mineralfield03.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/mineralfield03.grp rename to mpq/unit/cm/cb/christmas/mineralfield03.grp diff --git a/mpq/unit/cm/celebrations/christmas/nexus.grp b/mpq/unit/cm/cb/christmas/nexus.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/nexus.grp rename to mpq/unit/cm/cb/christmas/nexus.grp diff --git a/mpq/unit/cm/celebrations/christmas/orechunk.grp b/mpq/unit/cm/cb/christmas/orechunk.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/orechunk.grp rename to mpq/unit/cm/cb/christmas/orechunk.grp diff --git a/mpq/unit/cm/celebrations/christmas/probe.grp b/mpq/unit/cm/cb/christmas/probe.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/probe.grp rename to mpq/unit/cm/cb/christmas/probe.grp diff --git a/mpq/unit/cm/celebrations/christmas/santahat-large-17.grp b/mpq/unit/cm/cb/christmas/santahat-large-17.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/santahat-large-17.grp rename to mpq/unit/cm/cb/christmas/santahat-large-17.grp diff --git a/mpq/unit/cm/celebrations/christmas/santahat-large.grp b/mpq/unit/cm/cb/christmas/santahat-large.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/santahat-large.grp rename to mpq/unit/cm/cb/christmas/santahat-large.grp diff --git a/mpq/unit/cm/celebrations/christmas/santahat-medium-17.grp b/mpq/unit/cm/cb/christmas/santahat-medium-17.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/santahat-medium-17.grp rename to mpq/unit/cm/cb/christmas/santahat-medium-17.grp diff --git a/mpq/unit/cm/celebrations/christmas/santahat-medium.grp b/mpq/unit/cm/cb/christmas/santahat-medium.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/santahat-medium.grp rename to mpq/unit/cm/cb/christmas/santahat-medium.grp diff --git a/mpq/unit/cm/celebrations/christmas/santahat-small-17.grp b/mpq/unit/cm/cb/christmas/santahat-small-17.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/santahat-small-17.grp rename to mpq/unit/cm/cb/christmas/santahat-small-17.grp diff --git a/mpq/unit/cm/celebrations/christmas/santahat-small.grp b/mpq/unit/cm/cb/christmas/santahat-small.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/santahat-small.grp rename to mpq/unit/cm/cb/christmas/santahat-small.grp diff --git a/mpq/unit/cm/celebrations/christmas/santahat-xlarge-17.grp b/mpq/unit/cm/cb/christmas/santahat-xlarge-17.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/santahat-xlarge-17.grp rename to mpq/unit/cm/cb/christmas/santahat-xlarge-17.grp diff --git a/mpq/unit/cm/celebrations/christmas/santahat-xlarge.grp b/mpq/unit/cm/cb/christmas/santahat-xlarge.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/santahat-xlarge.grp rename to mpq/unit/cm/cb/christmas/santahat-xlarge.grp diff --git a/mpq/unit/cm/celebrations/christmas/scv.grp b/mpq/unit/cm/cb/christmas/scv.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/scv.grp rename to mpq/unit/cm/cb/christmas/scv.grp diff --git a/mpq/unit/cm/celebrations/christmas/vespenechunk-empty.grp b/mpq/unit/cm/cb/christmas/vespenechunk-empty.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/vespenechunk-empty.grp rename to mpq/unit/cm/cb/christmas/vespenechunk-empty.grp diff --git a/mpq/unit/cm/celebrations/christmas/vespenechunk.grp b/mpq/unit/cm/cb/christmas/vespenechunk.grp similarity index 100% rename from mpq/unit/cm/celebrations/christmas/vespenechunk.grp rename to mpq/unit/cm/cb/christmas/vespenechunk.grp diff --git a/mpq/unit/cm/effect/canister-rifle-hit-blue.grp b/mpq/unit/cm/e/canister-rifle-hit-blue.grp similarity index 100% rename from mpq/unit/cm/effect/canister-rifle-hit-blue.grp rename to mpq/unit/cm/e/canister-rifle-hit-blue.grp diff --git a/mpq/unit/cm/effect/canisterriflehit-green.grp b/mpq/unit/cm/e/canisterriflehit-green.grp similarity index 100% rename from mpq/unit/cm/effect/canisterriflehit-green.grp rename to mpq/unit/cm/e/canisterriflehit-green.grp diff --git a/mpq/unit/cm/effect/cowardice-large.grp b/mpq/unit/cm/e/cowardice-large.grp similarity index 100% rename from mpq/unit/cm/effect/cowardice-large.grp rename to mpq/unit/cm/e/cowardice-large.grp diff --git a/mpq/unit/cm/effect/cowardice-medium.grp b/mpq/unit/cm/e/cowardice-medium.grp similarity index 100% rename from mpq/unit/cm/effect/cowardice-medium.grp rename to mpq/unit/cm/e/cowardice-medium.grp diff --git a/mpq/unit/cm/effect/cowardice-small.grp b/mpq/unit/cm/e/cowardice-small.grp similarity index 100% rename from mpq/unit/cm/effect/cowardice-small.grp rename to mpq/unit/cm/e/cowardice-small.grp diff --git a/mpq/unit/cm/effect/crucible-efficiencyoverlay.grp b/mpq/unit/cm/e/crucible-efficiencyoverlay.grp similarity index 100% rename from mpq/unit/cm/effect/crucible-efficiencyoverlay.grp rename to mpq/unit/cm/e/crucible-efficiencyoverlay.grp diff --git a/mpq/unit/cm/effect/cruciblepennant-large.grp b/mpq/unit/cm/e/cruciblepennant-large.grp similarity index 100% rename from mpq/unit/cm/effect/cruciblepennant-large.grp rename to mpq/unit/cm/e/cruciblepennant-large.grp diff --git a/mpq/unit/cm/effect/cruciblepennant-medium.grp b/mpq/unit/cm/e/cruciblepennant-medium.grp similarity index 100% rename from mpq/unit/cm/effect/cruciblepennant-medium.grp rename to mpq/unit/cm/e/cruciblepennant-medium.grp diff --git a/mpq/unit/cm/effect/cruciblepennant-small.grp b/mpq/unit/cm/e/cruciblepennant-small.grp similarity index 100% rename from mpq/unit/cm/effect/cruciblepennant-small.grp rename to mpq/unit/cm/e/cruciblepennant-small.grp diff --git a/mpq/unit/cm/effect/deconstruction-large.grp b/mpq/unit/cm/e/deconstruction-large.grp similarity index 100% rename from mpq/unit/cm/effect/deconstruction-large.grp rename to mpq/unit/cm/e/deconstruction-large.grp diff --git a/mpq/unit/cm/effect/deconstruction-medium.grp b/mpq/unit/cm/e/deconstruction-medium.grp similarity index 100% rename from mpq/unit/cm/effect/deconstruction-medium.grp rename to mpq/unit/cm/e/deconstruction-medium.grp diff --git a/mpq/unit/cm/effect/deconstruction-small.grp b/mpq/unit/cm/e/deconstruction-small.grp similarity index 100% rename from mpq/unit/cm/effect/deconstruction-small.grp rename to mpq/unit/cm/e/deconstruction-small.grp diff --git a/mpq/unit/cm/effect/dermalaccelerant-large.grp b/mpq/unit/cm/e/dermalaccelerant-large.grp similarity index 100% rename from mpq/unit/cm/effect/dermalaccelerant-large.grp rename to mpq/unit/cm/e/dermalaccelerant-large.grp diff --git a/mpq/unit/cm/effect/dermalaccelerant-medium.grp b/mpq/unit/cm/e/dermalaccelerant-medium.grp similarity index 100% rename from mpq/unit/cm/effect/dermalaccelerant-medium.grp rename to mpq/unit/cm/e/dermalaccelerant-medium.grp diff --git a/mpq/unit/cm/effect/dermalaccelerant-small.grp b/mpq/unit/cm/e/dermalaccelerant-small.grp similarity index 100% rename from mpq/unit/cm/effect/dermalaccelerant-small.grp rename to mpq/unit/cm/e/dermalaccelerant-small.grp diff --git a/mpq/unit/cm/effect/dermalaccelerant-xlarge.grp b/mpq/unit/cm/e/dermalaccelerant-xlarge.grp similarity index 100% rename from mpq/unit/cm/effect/dermalaccelerant-xlarge.grp rename to mpq/unit/cm/e/dermalaccelerant-xlarge.grp diff --git a/mpq/unit/cm/effect/energy-regen-large.grp b/mpq/unit/cm/e/energy-regen-large.grp similarity index 100% rename from mpq/unit/cm/effect/energy-regen-large.grp rename to mpq/unit/cm/e/energy-regen-large.grp diff --git a/mpq/unit/cm/effect/energy-regen-medium.grp b/mpq/unit/cm/e/energy-regen-medium.grp similarity index 100% rename from mpq/unit/cm/effect/energy-regen-medium.grp rename to mpq/unit/cm/e/energy-regen-medium.grp diff --git a/mpq/unit/cm/effect/energy-regen-small.grp b/mpq/unit/cm/e/energy-regen-small.grp similarity index 100% rename from mpq/unit/cm/effect/energy-regen-small.grp rename to mpq/unit/cm/e/energy-regen-small.grp diff --git a/mpq/unit/cm/effect/energy-regen-xlarge.grp b/mpq/unit/cm/e/energy-regen-xlarge.grp similarity index 100% rename from mpq/unit/cm/effect/energy-regen-xlarge.grp rename to mpq/unit/cm/e/energy-regen-xlarge.grp diff --git a/mpq/unit/cm/effect/energydecay.grp b/mpq/unit/cm/e/energydecay.grp similarity index 100% rename from mpq/unit/cm/effect/energydecay.grp rename to mpq/unit/cm/e/energydecay.grp diff --git a/mpq/unit/cm/effect/ensnaringbrood-overlay.grp b/mpq/unit/cm/e/ensnaringbrood-overlay.grp similarity index 100% rename from mpq/unit/cm/effect/ensnaringbrood-overlay.grp rename to mpq/unit/cm/e/ensnaringbrood-overlay.grp diff --git a/mpq/unit/cm/effect/gaussriflehit-green.grp b/mpq/unit/cm/e/gaussriflehit-green.grp similarity index 100% rename from mpq/unit/cm/effect/gaussriflehit-green.grp rename to mpq/unit/cm/e/gaussriflehit-green.grp diff --git a/mpq/unit/cm/effect/irradiate-large.grp b/mpq/unit/cm/e/irradiate-large.grp similarity index 100% rename from mpq/unit/cm/effect/irradiate-large.grp rename to mpq/unit/cm/e/irradiate-large.grp diff --git a/mpq/unit/cm/effect/irradiate-medium.grp b/mpq/unit/cm/e/irradiate-medium.grp similarity index 100% rename from mpq/unit/cm/effect/irradiate-medium.grp rename to mpq/unit/cm/e/irradiate-medium.grp diff --git a/mpq/unit/cm/effect/irradiate-small.grp b/mpq/unit/cm/e/irradiate-small.grp similarity index 100% rename from mpq/unit/cm/effect/irradiate-small.grp rename to mpq/unit/cm/e/irradiate-small.grp diff --git a/mpq/unit/cm/effect/keskathalor-acid-pool.grp b/mpq/unit/cm/e/keskathalor-acid-pool.grp similarity index 100% rename from mpq/unit/cm/effect/keskathalor-acid-pool.grp rename to mpq/unit/cm/e/keskathalor-acid-pool.grp diff --git a/mpq/unit/cm/effect/khaydarineclipse-large.grp b/mpq/unit/cm/e/khaydarineclipse-large.grp similarity index 100% rename from mpq/unit/cm/effect/khaydarineclipse-large.grp rename to mpq/unit/cm/e/khaydarineclipse-large.grp diff --git a/mpq/unit/cm/effect/khaydarineclipse-medium.grp b/mpq/unit/cm/e/khaydarineclipse-medium.grp similarity index 100% rename from mpq/unit/cm/effect/khaydarineclipse-medium.grp rename to mpq/unit/cm/e/khaydarineclipse-medium.grp diff --git a/mpq/unit/cm/effect/khaydarineclipse-small.grp b/mpq/unit/cm/e/khaydarineclipse-small.grp similarity index 100% rename from mpq/unit/cm/effect/khaydarineclipse-small.grp rename to mpq/unit/cm/e/khaydarineclipse-small.grp diff --git a/mpq/unit/cm/effect/lazarusagent-revive.grp b/mpq/unit/cm/e/lazarusagent-revive.grp similarity index 100% rename from mpq/unit/cm/effect/lazarusagent-revive.grp rename to mpq/unit/cm/e/lazarusagent-revive.grp diff --git a/mpq/unit/cm/effect/legionnaire-teleport.grp b/mpq/unit/cm/e/legionnaire-teleport.grp similarity index 100% rename from mpq/unit/cm/effect/legionnaire-teleport.grp rename to mpq/unit/cm/e/legionnaire-teleport.grp diff --git a/mpq/unit/cm/effect/magneticfield-large.grp b/mpq/unit/cm/e/magneticfield-large.grp similarity index 100% rename from mpq/unit/cm/effect/magneticfield-large.grp rename to mpq/unit/cm/e/magneticfield-large.grp diff --git a/mpq/unit/cm/effect/magneticfield-medium.grp b/mpq/unit/cm/e/magneticfield-medium.grp similarity index 100% rename from mpq/unit/cm/effect/magneticfield-medium.grp rename to mpq/unit/cm/e/magneticfield-medium.grp diff --git a/mpq/unit/cm/effect/magneticfield-small.grp b/mpq/unit/cm/e/magneticfield-small.grp similarity index 100% rename from mpq/unit/cm/effect/magneticfield-small.grp rename to mpq/unit/cm/e/magneticfield-small.grp diff --git a/mpq/unit/cm/effect/malediction-large.grp b/mpq/unit/cm/e/malediction-large.grp similarity index 100% rename from mpq/unit/cm/effect/malediction-large.grp rename to mpq/unit/cm/e/malediction-large.grp diff --git a/mpq/unit/cm/effect/malediction-medium.grp b/mpq/unit/cm/e/malediction-medium.grp similarity index 100% rename from mpq/unit/cm/effect/malediction-medium.grp rename to mpq/unit/cm/e/malediction-medium.grp diff --git a/mpq/unit/cm/effect/malediction-small.grp b/mpq/unit/cm/e/malediction-small.grp similarity index 100% rename from mpq/unit/cm/effect/malediction-small.grp rename to mpq/unit/cm/e/malediction-small.grp diff --git a/mpq/unit/cm/effect/malice-large.grp b/mpq/unit/cm/e/malice-large.grp similarity index 100% rename from mpq/unit/cm/effect/malice-large.grp rename to mpq/unit/cm/e/malice-large.grp diff --git a/mpq/unit/cm/effect/malice-medium.grp b/mpq/unit/cm/e/malice-medium.grp similarity index 100% rename from mpq/unit/cm/effect/malice-medium.grp rename to mpq/unit/cm/e/malice-medium.grp diff --git a/mpq/unit/cm/effect/malice-small.grp b/mpq/unit/cm/e/malice-small.grp similarity index 100% rename from mpq/unit/cm/effect/malice-small.grp rename to mpq/unit/cm/e/malice-small.grp diff --git a/mpq/unit/cm/effect/nanitefield-overlay.grp b/mpq/unit/cm/e/nanitefield-overlay.grp similarity index 100% rename from mpq/unit/cm/effect/nanitefield-overlay.grp rename to mpq/unit/cm/e/nanitefield-overlay.grp diff --git a/mpq/unit/cm/effect/nathrokor-breath.grp b/mpq/unit/cm/e/nathrokor-breath.grp similarity index 100% rename from mpq/unit/cm/effect/nathrokor-breath.grp rename to mpq/unit/cm/e/nathrokor-breath.grp diff --git a/mpq/unit/cm/effect/neutronflare-orange.grp b/mpq/unit/cm/e/neutronflare-orange.grp similarity index 100% rename from mpq/unit/cm/effect/neutronflare-orange.grp rename to mpq/unit/cm/e/neutronflare-orange.grp diff --git a/mpq/unit/cm/effect/observance-casteffect.grp b/mpq/unit/cm/e/observance-casteffect.grp similarity index 100% rename from mpq/unit/cm/effect/observance-casteffect.grp rename to mpq/unit/cm/e/observance-casteffect.grp diff --git a/mpq/unit/cm/effect/observance-large.grp b/mpq/unit/cm/e/observance-large.grp similarity index 100% rename from mpq/unit/cm/effect/observance-large.grp rename to mpq/unit/cm/e/observance-large.grp diff --git a/mpq/unit/cm/effect/observance-medium.grp b/mpq/unit/cm/e/observance-medium.grp similarity index 100% rename from mpq/unit/cm/effect/observance-medium.grp rename to mpq/unit/cm/e/observance-medium.grp diff --git a/mpq/unit/cm/effect/observance-small.grp b/mpq/unit/cm/e/observance-small.grp similarity index 100% rename from mpq/unit/cm/effect/observance-small.grp rename to mpq/unit/cm/e/observance-small.grp diff --git a/mpq/unit/cm/effect/parasite-overlay.grp b/mpq/unit/cm/e/parasite-overlay.grp similarity index 100% rename from mpq/unit/cm/effect/parasite-overlay.grp rename to mpq/unit/cm/e/parasite-overlay.grp diff --git a/mpq/unit/cm/effect/planetcracker-beam.grp b/mpq/unit/cm/e/planetcracker-beam.grp similarity index 100% rename from mpq/unit/cm/effect/planetcracker-beam.grp rename to mpq/unit/cm/e/planetcracker-beam.grp diff --git a/mpq/unit/cm/effect/planetcracker-blast-loop.grp b/mpq/unit/cm/e/planetcracker-blast-loop.grp similarity index 100% rename from mpq/unit/cm/effect/planetcracker-blast-loop.grp rename to mpq/unit/cm/e/planetcracker-blast-loop.grp diff --git a/mpq/unit/cm/effect/planetcracker-blast.grp b/mpq/unit/cm/e/planetcracker-blast.grp similarity index 100% rename from mpq/unit/cm/effect/planetcracker-blast.grp rename to mpq/unit/cm/e/planetcracker-blast.grp diff --git a/mpq/unit/cm/effect/planetcracker-init.grp b/mpq/unit/cm/e/planetcracker-init.grp similarity index 100% rename from mpq/unit/cm/effect/planetcracker-init.grp rename to mpq/unit/cm/e/planetcracker-init.grp diff --git a/mpq/unit/cm/effect/protoss-warp-fade.grp b/mpq/unit/cm/e/protoss-warp-fade.grp similarity index 100% rename from mpq/unit/cm/effect/protoss-warp-fade.grp rename to mpq/unit/cm/e/protoss-warp-fade.grp diff --git a/mpq/unit/cm/effect/resource-boost-overlay-large.grp b/mpq/unit/cm/e/resource-boost-overlay-large.grp similarity index 100% rename from mpq/unit/cm/effect/resource-boost-overlay-large.grp rename to mpq/unit/cm/e/resource-boost-overlay-large.grp diff --git a/mpq/unit/cm/effect/resource-boost-overlay-medium.grp b/mpq/unit/cm/e/resource-boost-overlay-medium.grp similarity index 100% rename from mpq/unit/cm/effect/resource-boost-overlay-medium.grp rename to mpq/unit/cm/e/resource-boost-overlay-medium.grp diff --git a/mpq/unit/cm/effect/resource-boost-overlay-small.grp b/mpq/unit/cm/e/resource-boost-overlay-small.grp similarity index 100% rename from mpq/unit/cm/effect/resource-boost-overlay-small.grp rename to mpq/unit/cm/e/resource-boost-overlay-small.grp diff --git a/mpq/unit/cm/effect/scvspark-small.grp b/mpq/unit/cm/e/scvspark-small.grp similarity index 100% rename from mpq/unit/cm/effect/scvspark-small.grp rename to mpq/unit/cm/e/scvspark-small.grp diff --git a/mpq/unit/cm/effect/sublimeshepherd-overlay-large.grp b/mpq/unit/cm/e/sublimeshepherd-overlay-large.grp similarity index 100% rename from mpq/unit/cm/effect/sublimeshepherd-overlay-large.grp rename to mpq/unit/cm/e/sublimeshepherd-overlay-large.grp diff --git a/mpq/unit/cm/effect/sublimeshepherd-overlay-medium.grp b/mpq/unit/cm/e/sublimeshepherd-overlay-medium.grp similarity index 100% rename from mpq/unit/cm/effect/sublimeshepherd-overlay-medium.grp rename to mpq/unit/cm/e/sublimeshepherd-overlay-medium.grp diff --git a/mpq/unit/cm/effect/sublimeshepherd-overlay-small.grp b/mpq/unit/cm/e/sublimeshepherd-overlay-small.grp similarity index 100% rename from mpq/unit/cm/effect/sublimeshepherd-overlay-small.grp rename to mpq/unit/cm/e/sublimeshepherd-overlay-small.grp diff --git a/mpq/unit/cm/effect/sublimeshepherd-overlay.grp b/mpq/unit/cm/e/sublimeshepherd-overlay.grp similarity index 100% rename from mpq/unit/cm/effect/sublimeshepherd-overlay.grp rename to mpq/unit/cm/e/sublimeshepherd-overlay.grp diff --git a/mpq/unit/cm/effect/treasury-overlay.grp b/mpq/unit/cm/e/treasury-overlay.grp similarity index 100% rename from mpq/unit/cm/effect/treasury-overlay.grp rename to mpq/unit/cm/e/treasury-overlay.grp diff --git a/mpq/unit/cm/faction-p/adherent-shadow.grp b/mpq/unit/cm/f-p/adherent-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-p/adherent-shadow.grp rename to mpq/unit/cm/f-p/adherent-shadow.grp diff --git a/mpq/unit/cm/faction-p/adherent.grp b/mpq/unit/cm/f-p/adherent.grp similarity index 100% rename from mpq/unit/cm/faction-p/adherent.grp rename to mpq/unit/cm/f-p/adherent.grp diff --git a/mpq/unit/cm/faction-p/ashguard-shadow.grp b/mpq/unit/cm/f-p/ashguard-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-p/ashguard-shadow.grp rename to mpq/unit/cm/f-p/ashguard-shadow.grp diff --git a/mpq/unit/cm/faction-p/ashguard.grp b/mpq/unit/cm/f-p/ashguard.grp similarity index 100% rename from mpq/unit/cm/faction-p/ashguard.grp rename to mpq/unit/cm/f-p/ashguard.grp diff --git a/mpq/unit/cm/faction-p/cicatus-shadow.grp b/mpq/unit/cm/f-p/cicatus-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-p/cicatus-shadow.grp rename to mpq/unit/cm/f-p/cicatus-shadow.grp diff --git a/mpq/unit/cm/faction-p/cicatus.grp b/mpq/unit/cm/f-p/cicatus.grp similarity index 100% rename from mpq/unit/cm/faction-p/cicatus.grp rename to mpq/unit/cm/f-p/cicatus.grp diff --git a/mpq/unit/cm/faction-p/dracadin-order-death.grp b/mpq/unit/cm/f-p/dracadin-order-death.grp similarity index 100% rename from mpq/unit/cm/faction-p/dracadin-order-death.grp rename to mpq/unit/cm/f-p/dracadin-order-death.grp diff --git a/mpq/unit/cm/faction-p/dracadin-order-shadow.grp b/mpq/unit/cm/f-p/dracadin-order-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-p/dracadin-order-shadow.grp rename to mpq/unit/cm/f-p/dracadin-order-shadow.grp diff --git a/mpq/unit/cm/faction-p/dracadin-order.grp b/mpq/unit/cm/f-p/dracadin-order.grp similarity index 100% rename from mpq/unit/cm/faction-p/dracadin-order.grp rename to mpq/unit/cm/f-p/dracadin-order.grp diff --git a/mpq/unit/cm/faction-p/ecclesiast-khalendric-shadow.grp b/mpq/unit/cm/f-p/ecclesiast-khalendric-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-p/ecclesiast-khalendric-shadow.grp rename to mpq/unit/cm/f-p/ecclesiast-khalendric-shadow.grp diff --git a/mpq/unit/cm/faction-p/ecclesiast-khalendric.grp b/mpq/unit/cm/f-p/ecclesiast-khalendric.grp similarity index 100% rename from mpq/unit/cm/faction-p/ecclesiast-khalendric.grp rename to mpq/unit/cm/f-p/ecclesiast-khalendric.grp diff --git a/mpq/unit/cm/faction-p/extatus-engine.grp b/mpq/unit/cm/f-p/extatus-engine.grp similarity index 100% rename from mpq/unit/cm/faction-p/extatus-engine.grp rename to mpq/unit/cm/f-p/extatus-engine.grp diff --git a/mpq/unit/cm/faction-p/extatus.grp b/mpq/unit/cm/f-p/extatus.grp similarity index 100% rename from mpq/unit/cm/faction-p/extatus.grp rename to mpq/unit/cm/f-p/extatus.grp diff --git a/mpq/unit/cm/faction-p/manifold-starbound-shadow.grp b/mpq/unit/cm/f-p/manifold-starbound-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-p/manifold-starbound-shadow.grp rename to mpq/unit/cm/f-p/manifold-starbound-shadow.grp diff --git a/mpq/unit/cm/faction-p/manifold-starbound.grp b/mpq/unit/cm/f-p/manifold-starbound.grp similarity index 100% rename from mpq/unit/cm/faction-p/manifold-starbound.grp rename to mpq/unit/cm/f-p/manifold-starbound.grp diff --git a/mpq/unit/cm/faction-p/renesair-death.grp b/mpq/unit/cm/f-p/renesair-death.grp similarity index 100% rename from mpq/unit/cm/faction-p/renesair-death.grp rename to mpq/unit/cm/f-p/renesair-death.grp diff --git a/mpq/unit/cm/faction-p/renesair-engine.grp b/mpq/unit/cm/f-p/renesair-engine.grp similarity index 100% rename from mpq/unit/cm/faction-p/renesair-engine.grp rename to mpq/unit/cm/f-p/renesair-engine.grp diff --git a/mpq/unit/cm/faction-p/renesair.grp b/mpq/unit/cm/f-p/renesair.grp similarity index 100% rename from mpq/unit/cm/faction-p/renesair.grp rename to mpq/unit/cm/f-p/renesair.grp diff --git a/mpq/unit/cm/faction-p/simulacrum-astral-shadow.grp b/mpq/unit/cm/f-p/simulacrum-astral-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-p/simulacrum-astral-shadow.grp rename to mpq/unit/cm/f-p/simulacrum-astral-shadow.grp diff --git a/mpq/unit/cm/faction-p/simulacrum-astral.grp b/mpq/unit/cm/f-p/simulacrum-astral.grp similarity index 100% rename from mpq/unit/cm/faction-p/simulacrum-astral.grp rename to mpq/unit/cm/f-p/simulacrum-astral.grp diff --git a/mpq/unit/cm/faction-p/zealot-starbound-shadow.grp b/mpq/unit/cm/f-p/zealot-starbound-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-p/zealot-starbound-shadow.grp rename to mpq/unit/cm/f-p/zealot-starbound-shadow.grp diff --git a/mpq/unit/cm/faction-p/zealot-starbound.grp b/mpq/unit/cm/f-p/zealot-starbound.grp similarity index 100% rename from mpq/unit/cm/faction-p/zealot-starbound.grp rename to mpq/unit/cm/f-p/zealot-starbound.grp diff --git a/mpq/unit/cm/faction-t/arhaun-attack.lol b/mpq/unit/cm/f-t/arhaun-attack.lol similarity index 100% rename from mpq/unit/cm/faction-t/arhaun-attack.lol rename to mpq/unit/cm/f-t/arhaun-attack.lol diff --git a/mpq/unit/cm/faction-t/arhaun-base.grp b/mpq/unit/cm/f-t/arhaun-base.grp similarity index 100% rename from mpq/unit/cm/faction-t/arhaun-base.grp rename to mpq/unit/cm/f-t/arhaun-base.grp diff --git a/mpq/unit/cm/faction-t/arhaun-shadow.grp b/mpq/unit/cm/f-t/arhaun-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/arhaun-shadow.grp rename to mpq/unit/cm/f-t/arhaun-shadow.grp diff --git a/mpq/unit/cm/faction-t/arhaun-turret.grp b/mpq/unit/cm/f-t/arhaun-turret.grp similarity index 100% rename from mpq/unit/cm/faction-t/arhaun-turret.grp rename to mpq/unit/cm/f-t/arhaun-turret.grp diff --git a/mpq/unit/cm/faction-t/aspirant-death.grp b/mpq/unit/cm/f-t/aspirant-death.grp similarity index 100% rename from mpq/unit/cm/faction-t/aspirant-death.grp rename to mpq/unit/cm/f-t/aspirant-death.grp diff --git a/mpq/unit/cm/faction-t/aspirant-shadow.grp b/mpq/unit/cm/f-t/aspirant-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/aspirant-shadow.grp rename to mpq/unit/cm/f-t/aspirant-shadow.grp diff --git a/mpq/unit/cm/faction-t/aspirant-weapon.grp b/mpq/unit/cm/f-t/aspirant-weapon.grp similarity index 100% rename from mpq/unit/cm/faction-t/aspirant-weapon.grp rename to mpq/unit/cm/f-t/aspirant-weapon.grp diff --git a/mpq/unit/cm/faction-t/aspirant.grp b/mpq/unit/cm/f-t/aspirant.grp similarity index 100% rename from mpq/unit/cm/faction-t/aspirant.grp rename to mpq/unit/cm/f-t/aspirant.grp diff --git a/mpq/unit/cm/faction-t/auriel-shadow.grp b/mpq/unit/cm/f-t/auriel-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/auriel-shadow.grp rename to mpq/unit/cm/f-t/auriel-shadow.grp diff --git a/mpq/unit/cm/faction-t/auriel.grp b/mpq/unit/cm/f-t/auriel.grp similarity index 100% rename from mpq/unit/cm/faction-t/auriel.grp rename to mpq/unit/cm/f-t/auriel.grp diff --git a/mpq/unit/cm/faction-t/blackguard-attack.lol b/mpq/unit/cm/f-t/blackguard-attack.lol similarity index 100% rename from mpq/unit/cm/faction-t/blackguard-attack.lol rename to mpq/unit/cm/f-t/blackguard-attack.lol diff --git a/mpq/unit/cm/faction-t/blackguard-shadow.grp b/mpq/unit/cm/f-t/blackguard-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/blackguard-shadow.grp rename to mpq/unit/cm/f-t/blackguard-shadow.grp diff --git a/mpq/unit/cm/faction-t/blackguard.grp b/mpq/unit/cm/f-t/blackguard.grp similarity index 100% rename from mpq/unit/cm/faction-t/blackguard.grp rename to mpq/unit/cm/f-t/blackguard.grp diff --git a/mpq/unit/cm/faction-t/blackjack-golden-damaged.grp b/mpq/unit/cm/f-t/blackjack-golden-damaged.grp similarity index 100% rename from mpq/unit/cm/faction-t/blackjack-golden-damaged.grp rename to mpq/unit/cm/f-t/blackjack-golden-damaged.grp diff --git a/mpq/unit/cm/faction-t/blackjack-golden-shadow.grp b/mpq/unit/cm/f-t/blackjack-golden-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/blackjack-golden-shadow.grp rename to mpq/unit/cm/f-t/blackjack-golden-shadow.grp diff --git a/mpq/unit/cm/faction-t/blackjack-golden.grp b/mpq/unit/cm/f-t/blackjack-golden.grp similarity index 100% rename from mpq/unit/cm/faction-t/blackjack-golden.grp rename to mpq/unit/cm/f-t/blackjack-golden.grp diff --git a/mpq/unit/cm/faction-t/tarasque-shadow.grp b/mpq/unit/cm/f-t/broadside-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/tarasque-shadow.grp rename to mpq/unit/cm/f-t/broadside-shadow.grp diff --git a/mpq/unit/cm/faction-t/cutlass-turret.grp b/mpq/unit/cm/f-t/broadside-turret.grp similarity index 100% rename from mpq/unit/cm/faction-t/cutlass-turret.grp rename to mpq/unit/cm/f-t/broadside-turret.grp diff --git a/mpq/unit/cm/faction-t/tarasque.grp b/mpq/unit/cm/f-t/broadside.grp similarity index 100% rename from mpq/unit/cm/faction-t/tarasque.grp rename to mpq/unit/cm/f-t/broadside.grp diff --git a/mpq/unit/cm/faction-t/cannibal-shadow.grp b/mpq/unit/cm/f-t/cannibal-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/cannibal-shadow.grp rename to mpq/unit/cm/f-t/cannibal-shadow.grp diff --git a/mpq/unit/cm/faction-t/cannibal.grp b/mpq/unit/cm/f-t/cannibal.grp similarity index 100% rename from mpq/unit/cm/faction-t/cannibal.grp rename to mpq/unit/cm/f-t/cannibal.grp diff --git a/mpq/unit/cm/faction-t/cleric-futurist-remnants.grp b/mpq/unit/cm/f-t/cleric-futurist-remnants.grp similarity index 100% rename from mpq/unit/cm/faction-t/cleric-futurist-remnants.grp rename to mpq/unit/cm/f-t/cleric-futurist-remnants.grp diff --git a/mpq/unit/cm/faction-t/cleric-futurist-shadow.grp b/mpq/unit/cm/f-t/cleric-futurist-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/cleric-futurist-shadow.grp rename to mpq/unit/cm/f-t/cleric-futurist-shadow.grp diff --git a/mpq/unit/cm/faction-t/cleric-futurist.grp b/mpq/unit/cm/f-t/cleric-futurist.grp similarity index 100% rename from mpq/unit/cm/faction-t/cleric-futurist.grp rename to mpq/unit/cm/f-t/cleric-futurist.grp diff --git a/mpq/unit/cm/faction-t/cohort-birth.grp b/mpq/unit/cm/f-t/cohort-birth.grp similarity index 100% rename from mpq/unit/cm/faction-t/cohort-birth.grp rename to mpq/unit/cm/f-t/cohort-birth.grp diff --git a/mpq/unit/cm/faction-t/cohort-shadow.grp b/mpq/unit/cm/f-t/cohort-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/cohort-shadow.grp rename to mpq/unit/cm/f-t/cohort-shadow.grp diff --git a/mpq/unit/cm/faction-t/cohort.grp b/mpq/unit/cm/f-t/cohort.grp similarity index 100% rename from mpq/unit/cm/faction-t/cohort.grp rename to mpq/unit/cm/f-t/cohort.grp diff --git a/mpq/unit/cm/f-t/cutlass-shadow.grp b/mpq/unit/cm/f-t/cutlass-shadow.grp new file mode 100644 index 00000000..60add86c Binary files /dev/null and b/mpq/unit/cm/f-t/cutlass-shadow.grp differ diff --git a/mpq/unit/cm/f-t/cutlass-turret.grp b/mpq/unit/cm/f-t/cutlass-turret.grp new file mode 100644 index 00000000..151cfb6a Binary files /dev/null and b/mpq/unit/cm/f-t/cutlass-turret.grp differ diff --git a/mpq/unit/cm/terran/matador-turret.lol b/mpq/unit/cm/f-t/cutlass-turret.lol similarity index 100% rename from mpq/unit/cm/terran/matador-turret.lol rename to mpq/unit/cm/f-t/cutlass-turret.lol diff --git a/mpq/unit/cm/f-t/cutlass.grp b/mpq/unit/cm/f-t/cutlass.grp new file mode 100644 index 00000000..d735f059 Binary files /dev/null and b/mpq/unit/cm/f-t/cutlass.grp differ diff --git a/mpq/unit/cm/faction-t/cyclops-futurist-shadow.grp b/mpq/unit/cm/f-t/cyclops-futurist-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/cyclops-futurist-shadow.grp rename to mpq/unit/cm/f-t/cyclops-futurist-shadow.grp diff --git a/mpq/unit/cm/faction-t/cyclops-futurist.grp b/mpq/unit/cm/f-t/cyclops-futurist.grp similarity index 100% rename from mpq/unit/cm/faction-t/cyclops-futurist.grp rename to mpq/unit/cm/f-t/cyclops-futurist.grp diff --git a/mpq/unit/cm/faction-t/eidolon-nydus.grp b/mpq/unit/cm/f-t/eidolon-nydus.grp similarity index 100% rename from mpq/unit/cm/faction-t/eidolon-nydus.grp rename to mpq/unit/cm/f-t/eidolon-nydus.grp diff --git a/mpq/unit/cm/f-t/eidolon-upstart-death.grp b/mpq/unit/cm/f-t/eidolon-upstart-death.grp new file mode 100644 index 00000000..fe9c2f98 Binary files /dev/null and b/mpq/unit/cm/f-t/eidolon-upstart-death.grp differ diff --git a/mpq/unit/cm/f-t/eidolon-upstart-shadow.grp b/mpq/unit/cm/f-t/eidolon-upstart-shadow.grp new file mode 100644 index 00000000..1c0015b8 Binary files /dev/null and b/mpq/unit/cm/f-t/eidolon-upstart-shadow.grp differ diff --git a/mpq/unit/cm/f-t/eidolon-upstart.grp b/mpq/unit/cm/f-t/eidolon-upstart.grp new file mode 100644 index 00000000..7b55b47f Binary files /dev/null and b/mpq/unit/cm/f-t/eidolon-upstart.grp differ diff --git a/mpq/unit/cm/faction-t/goremast-shadow.grp b/mpq/unit/cm/f-t/goremast-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/goremast-shadow.grp rename to mpq/unit/cm/f-t/goremast-shadow.grp diff --git a/mpq/unit/cm/f-t/goremast.grp b/mpq/unit/cm/f-t/goremast.grp new file mode 100644 index 00000000..4081db07 Binary files /dev/null and b/mpq/unit/cm/f-t/goremast.grp differ diff --git a/mpq/unit/cm/faction-t/harakan-golden-shadow.grp b/mpq/unit/cm/f-t/harakan-golden-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/harakan-golden-shadow.grp rename to mpq/unit/cm/f-t/harakan-golden-shadow.grp diff --git a/mpq/unit/cm/faction-t/harakan-golden.grp b/mpq/unit/cm/f-t/harakan-golden.grp similarity index 100% rename from mpq/unit/cm/faction-t/harakan-golden.grp rename to mpq/unit/cm/f-t/harakan-golden.grp diff --git a/mpq/unit/cm/faction-t/hotshot-shadow.grp b/mpq/unit/cm/f-t/hotshot-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/hotshot-shadow.grp rename to mpq/unit/cm/f-t/hotshot-shadow.grp diff --git a/mpq/unit/cm/faction-t/hotshot.grp b/mpq/unit/cm/f-t/hotshot.grp similarity index 100% rename from mpq/unit/cm/faction-t/hotshot.grp rename to mpq/unit/cm/f-t/hotshot.grp diff --git a/mpq/unit/cm/faction-t/luminary.grp b/mpq/unit/cm/f-t/luminary.grp similarity index 100% rename from mpq/unit/cm/faction-t/luminary.grp rename to mpq/unit/cm/f-t/luminary.grp diff --git a/mpq/unit/cm/faction-t/madrigal-hecaton-base.grp b/mpq/unit/cm/f-t/madrigal-hecaton-base.grp similarity index 100% rename from mpq/unit/cm/faction-t/madrigal-hecaton-base.grp rename to mpq/unit/cm/f-t/madrigal-hecaton-base.grp diff --git a/mpq/unit/cm/faction-t/madrigal-hecaton-turret.grp b/mpq/unit/cm/f-t/madrigal-hecaton-turret.grp similarity index 100% rename from mpq/unit/cm/faction-t/madrigal-hecaton-turret.grp rename to mpq/unit/cm/f-t/madrigal-hecaton-turret.grp diff --git a/mpq/unit/cm/faction-t/maverick-futurist-death.grp b/mpq/unit/cm/f-t/maverick-futurist-death.grp similarity index 100% rename from mpq/unit/cm/faction-t/maverick-futurist-death.grp rename to mpq/unit/cm/f-t/maverick-futurist-death.grp diff --git a/mpq/unit/cm/faction-t/maverick-futurist-shadow.grp b/mpq/unit/cm/f-t/maverick-futurist-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/maverick-futurist-shadow.grp rename to mpq/unit/cm/f-t/maverick-futurist-shadow.grp diff --git a/mpq/unit/cm/faction-t/maverick-futurist.grp b/mpq/unit/cm/f-t/maverick-futurist.grp similarity index 100% rename from mpq/unit/cm/faction-t/maverick-futurist.grp rename to mpq/unit/cm/f-t/maverick-futurist.grp diff --git a/mpq/unit/cm/f-t/maverick-upstart-death.grp b/mpq/unit/cm/f-t/maverick-upstart-death.grp new file mode 100644 index 00000000..64477df3 Binary files /dev/null and b/mpq/unit/cm/f-t/maverick-upstart-death.grp differ diff --git a/mpq/unit/cm/f-t/maverick-upstart-shadow.grp b/mpq/unit/cm/f-t/maverick-upstart-shadow.grp new file mode 100644 index 00000000..4752907a Binary files /dev/null and b/mpq/unit/cm/f-t/maverick-upstart-shadow.grp differ diff --git a/mpq/unit/cm/f-t/maverick-upstart.grp b/mpq/unit/cm/f-t/maverick-upstart.grp new file mode 100644 index 00000000..6e7ff453 Binary files /dev/null and b/mpq/unit/cm/f-t/maverick-upstart.grp differ diff --git a/mpq/unit/cm/faction-t/philoc-engine.grp b/mpq/unit/cm/f-t/philoc-engine.grp similarity index 100% rename from mpq/unit/cm/faction-t/philoc-engine.grp rename to mpq/unit/cm/f-t/philoc-engine.grp diff --git a/mpq/unit/cm/faction-t/philoc.grp b/mpq/unit/cm/f-t/philoc.grp similarity index 100% rename from mpq/unit/cm/faction-t/philoc.grp rename to mpq/unit/cm/f-t/philoc.grp diff --git a/mpq/unit/cm/faction-t/piety-ward-shadow.grp b/mpq/unit/cm/f-t/piety-ward-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/piety-ward-shadow.grp rename to mpq/unit/cm/f-t/piety-ward-shadow.grp diff --git a/mpq/unit/cm/faction-t/piety-ward.grp b/mpq/unit/cm/f-t/piety-ward.grp similarity index 100% rename from mpq/unit/cm/faction-t/piety-ward.grp rename to mpq/unit/cm/f-t/piety-ward.grp diff --git a/mpq/unit/cm/faction-t/qilin-engine.grp b/mpq/unit/cm/f-t/qilin-engine.grp similarity index 100% rename from mpq/unit/cm/faction-t/qilin-engine.grp rename to mpq/unit/cm/f-t/qilin-engine.grp diff --git a/mpq/unit/cm/faction-t/qilin.grp b/mpq/unit/cm/f-t/qilin.grp similarity index 100% rename from mpq/unit/cm/faction-t/qilin.grp rename to mpq/unit/cm/f-t/qilin.grp diff --git a/mpq/unit/cm/faction-t/quadriga-afterburner.grp b/mpq/unit/cm/f-t/quadriga-afterburner.grp similarity index 100% rename from mpq/unit/cm/faction-t/quadriga-afterburner.grp rename to mpq/unit/cm/f-t/quadriga-afterburner.grp diff --git a/mpq/unit/cm/faction-t/quadriga-engine.grp b/mpq/unit/cm/f-t/quadriga-engine.grp similarity index 100% rename from mpq/unit/cm/faction-t/quadriga-engine.grp rename to mpq/unit/cm/f-t/quadriga-engine.grp diff --git a/mpq/unit/cm/faction-t/quadriga.grp b/mpq/unit/cm/f-t/quadriga.grp similarity index 100% rename from mpq/unit/cm/faction-t/quadriga.grp rename to mpq/unit/cm/f-t/quadriga.grp diff --git a/mpq/unit/cm/faction-t/serathiel-divine-discipline.grp b/mpq/unit/cm/f-t/serathiel-divine-discipline.grp similarity index 100% rename from mpq/unit/cm/faction-t/serathiel-divine-discipline.grp rename to mpq/unit/cm/f-t/serathiel-divine-discipline.grp diff --git a/mpq/unit/cm/faction-t/serathiel-engine.grp b/mpq/unit/cm/f-t/serathiel-engine.grp similarity index 100% rename from mpq/unit/cm/faction-t/serathiel-engine.grp rename to mpq/unit/cm/f-t/serathiel-engine.grp diff --git a/mpq/unit/cm/faction-t/serathiel.grp b/mpq/unit/cm/f-t/serathiel.grp similarity index 100% rename from mpq/unit/cm/faction-t/serathiel.grp rename to mpq/unit/cm/f-t/serathiel.grp diff --git a/mpq/unit/cm/faction-t/southpaw-engine.grp b/mpq/unit/cm/f-t/southpaw-engine.grp similarity index 100% rename from mpq/unit/cm/faction-t/southpaw-engine.grp rename to mpq/unit/cm/f-t/southpaw-engine.grp diff --git a/mpq/unit/cm/faction-t/southpaw.grp b/mpq/unit/cm/f-t/southpaw.grp similarity index 100% rename from mpq/unit/cm/faction-t/southpaw.grp rename to mpq/unit/cm/f-t/southpaw.grp diff --git a/mpq/unit/cm/faction-t/tarasque-birth.grp b/mpq/unit/cm/f-t/tarasque-birth.grp similarity index 100% rename from mpq/unit/cm/faction-t/tarasque-birth.grp rename to mpq/unit/cm/f-t/tarasque-birth.grp diff --git a/mpq/unit/cm/faction-t/tarasque-muzzle-flash.grp b/mpq/unit/cm/f-t/tarasque-muzzle-flash.grp similarity index 100% rename from mpq/unit/cm/faction-t/tarasque-muzzle-flash.grp rename to mpq/unit/cm/f-t/tarasque-muzzle-flash.grp diff --git a/mpq/unit/cm/f-t/tarasque-shadow.grp b/mpq/unit/cm/f-t/tarasque-shadow.grp new file mode 100644 index 00000000..61edc6a7 Binary files /dev/null and b/mpq/unit/cm/f-t/tarasque-shadow.grp differ diff --git a/mpq/unit/cm/f-t/tarasque.grp b/mpq/unit/cm/f-t/tarasque.grp new file mode 100644 index 00000000..bbca507f Binary files /dev/null and b/mpq/unit/cm/f-t/tarasque.grp differ diff --git a/mpq/unit/cm/faction-t/tartarus-mine-shadow.grp b/mpq/unit/cm/f-t/tartarus-mine-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/tartarus-mine-shadow.grp rename to mpq/unit/cm/f-t/tartarus-mine-shadow.grp diff --git a/mpq/unit/cm/faction-t/tartarus-mine.grp b/mpq/unit/cm/f-t/tartarus-mine.grp similarity index 100% rename from mpq/unit/cm/faction-t/tartarus-mine.grp rename to mpq/unit/cm/f-t/tartarus-mine.grp diff --git a/mpq/unit/cm/faction-t/tiangou-attack.lol b/mpq/unit/cm/f-t/tiangou-attack.lol similarity index 100% rename from mpq/unit/cm/faction-t/tiangou-attack.lol rename to mpq/unit/cm/f-t/tiangou-attack.lol diff --git a/mpq/unit/cm/faction-t/tiangou-base.grp b/mpq/unit/cm/f-t/tiangou-base.grp similarity index 100% rename from mpq/unit/cm/faction-t/tiangou-base.grp rename to mpq/unit/cm/f-t/tiangou-base.grp diff --git a/mpq/unit/cm/faction-t/tiangou-shadow.grp b/mpq/unit/cm/f-t/tiangou-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-t/tiangou-shadow.grp rename to mpq/unit/cm/f-t/tiangou-shadow.grp diff --git a/mpq/unit/cm/faction-t/tiangou-turret.grp b/mpq/unit/cm/f-t/tiangou-turret.grp similarity index 100% rename from mpq/unit/cm/faction-t/tiangou-turret.grp rename to mpq/unit/cm/f-t/tiangou-turret.grp diff --git a/mpq/unit/cm/faction-t/valkyrie-hecaton.grp b/mpq/unit/cm/f-t/valkyrie-hecaton.grp similarity index 100% rename from mpq/unit/cm/faction-t/valkyrie-hecaton.grp rename to mpq/unit/cm/f-t/valkyrie-hecaton.grp diff --git a/mpq/unit/cm/faction-t/vulture-hecaton-attack.lol b/mpq/unit/cm/f-t/vulture-hecaton-attack.lol similarity index 100% rename from mpq/unit/cm/faction-t/vulture-hecaton-attack.lol rename to mpq/unit/cm/f-t/vulture-hecaton-attack.lol diff --git a/mpq/unit/cm/faction-t/vulture-hecaton-engine.grp b/mpq/unit/cm/f-t/vulture-hecaton-engine.grp similarity index 100% rename from mpq/unit/cm/faction-t/vulture-hecaton-engine.grp rename to mpq/unit/cm/f-t/vulture-hecaton-engine.grp diff --git a/mpq/unit/cm/faction-t/vulture-hecaton.grp b/mpq/unit/cm/f-t/vulture-hecaton.grp similarity index 100% rename from mpq/unit/cm/faction-t/vulture-hecaton.grp rename to mpq/unit/cm/f-t/vulture-hecaton.grp diff --git a/mpq/unit/cm/f-t/vulture-upstart-engine.grp b/mpq/unit/cm/f-t/vulture-upstart-engine.grp new file mode 100644 index 00000000..eeb51f48 Binary files /dev/null and b/mpq/unit/cm/f-t/vulture-upstart-engine.grp differ diff --git a/mpq/unit/cm/f-t/vulture-upstart.grp b/mpq/unit/cm/f-t/vulture-upstart.grp new file mode 100644 index 00000000..d226f718 Binary files /dev/null and b/mpq/unit/cm/f-t/vulture-upstart.grp differ diff --git a/mpq/unit/cm/faction-t/wendigo.grp b/mpq/unit/cm/f-t/wendigo.grp similarity index 100% rename from mpq/unit/cm/faction-t/wendigo.grp rename to mpq/unit/cm/f-t/wendigo.grp diff --git a/mpq/unit/cm/faction-z/azanthrokor-attack.lol b/mpq/unit/cm/f-z/azanthrokor-attack.lol similarity index 100% rename from mpq/unit/cm/faction-z/azanthrokor-attack.lol rename to mpq/unit/cm/f-z/azanthrokor-attack.lol diff --git a/mpq/unit/cm/faction-z/azanthrokor-birth.grp b/mpq/unit/cm/f-z/azanthrokor-birth.grp similarity index 100% rename from mpq/unit/cm/faction-z/azanthrokor-birth.grp rename to mpq/unit/cm/f-z/azanthrokor-birth.grp diff --git a/mpq/unit/cm/faction-z/azanthrokor-mutate.grp b/mpq/unit/cm/f-z/azanthrokor-mutate.grp similarity index 100% rename from mpq/unit/cm/faction-z/azanthrokor-mutate.grp rename to mpq/unit/cm/f-z/azanthrokor-mutate.grp diff --git a/mpq/unit/cm/faction-z/azanthrokor.grp b/mpq/unit/cm/f-z/azanthrokor.grp similarity index 100% rename from mpq/unit/cm/faction-z/azanthrokor.grp rename to mpq/unit/cm/f-z/azanthrokor.grp diff --git a/mpq/unit/cm/faction-z/garvrokor.grp b/mpq/unit/cm/f-z/garvrokor.grp similarity index 100% rename from mpq/unit/cm/faction-z/garvrokor.grp rename to mpq/unit/cm/f-z/garvrokor.grp diff --git a/mpq/unit/cm/faction-z/hydralisk-orkoti-death.grp b/mpq/unit/cm/f-z/hydralisk-orkoti-death.grp similarity index 100% rename from mpq/unit/cm/faction-z/hydralisk-orkoti-death.grp rename to mpq/unit/cm/f-z/hydralisk-orkoti-death.grp diff --git a/mpq/unit/cm/faction-z/hydralisk-orkoti.grp b/mpq/unit/cm/f-z/hydralisk-orkoti.grp similarity index 100% rename from mpq/unit/cm/faction-z/hydralisk-orkoti.grp rename to mpq/unit/cm/f-z/hydralisk-orkoti.grp diff --git a/mpq/unit/cm/faction-z/inzorthrokor-birth.grp b/mpq/unit/cm/f-z/inzorthrokor-birth.grp similarity index 100% rename from mpq/unit/cm/faction-z/inzorthrokor-birth.grp rename to mpq/unit/cm/f-z/inzorthrokor-birth.grp diff --git a/mpq/unit/cm/faction-z/inzorthrokor-remains.grp b/mpq/unit/cm/f-z/inzorthrokor-remains.grp similarity index 100% rename from mpq/unit/cm/faction-z/inzorthrokor-remains.grp rename to mpq/unit/cm/f-z/inzorthrokor-remains.grp diff --git a/mpq/unit/cm/faction-z/inzorthrokor-shadow.grp b/mpq/unit/cm/f-z/inzorthrokor-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-z/inzorthrokor-shadow.grp rename to mpq/unit/cm/f-z/inzorthrokor-shadow.grp diff --git a/mpq/unit/cm/faction-z/inzorthrokor.grp b/mpq/unit/cm/f-z/inzorthrokor.grp similarity index 100% rename from mpq/unit/cm/faction-z/inzorthrokor.grp rename to mpq/unit/cm/f-z/inzorthrokor.grp diff --git a/mpq/unit/cm/faction-z/iziralisk-birth.grp b/mpq/unit/cm/f-z/iziralisk-birth.grp similarity index 100% rename from mpq/unit/cm/faction-z/iziralisk-birth.grp rename to mpq/unit/cm/f-z/iziralisk-birth.grp diff --git a/mpq/unit/cm/faction-z/iziralisk-mutate.grp b/mpq/unit/cm/f-z/iziralisk-mutate.grp similarity index 100% rename from mpq/unit/cm/faction-z/iziralisk-mutate.grp rename to mpq/unit/cm/f-z/iziralisk-mutate.grp diff --git a/mpq/unit/cm/faction-z/iziralisk-projectile.grp b/mpq/unit/cm/f-z/iziralisk-projectile.grp similarity index 100% rename from mpq/unit/cm/faction-z/iziralisk-projectile.grp rename to mpq/unit/cm/f-z/iziralisk-projectile.grp diff --git a/mpq/unit/cm/faction-z/iziralisk-remains.grp b/mpq/unit/cm/f-z/iziralisk-remains.grp similarity index 100% rename from mpq/unit/cm/faction-z/iziralisk-remains.grp rename to mpq/unit/cm/f-z/iziralisk-remains.grp diff --git a/mpq/unit/cm/faction-z/iziralisk-shadow.grp b/mpq/unit/cm/f-z/iziralisk-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-z/iziralisk-shadow.grp rename to mpq/unit/cm/f-z/iziralisk-shadow.grp diff --git a/mpq/unit/cm/faction-z/iziralisk.grp b/mpq/unit/cm/f-z/iziralisk.grp similarity index 100% rename from mpq/unit/cm/faction-z/iziralisk.grp rename to mpq/unit/cm/f-z/iziralisk.grp diff --git a/mpq/unit/cm/faction-z/lakizilisk-zorthos.grp b/mpq/unit/cm/f-z/lakizilisk-zorthos.grp similarity index 100% rename from mpq/unit/cm/faction-z/lakizilisk-zorthos.grp rename to mpq/unit/cm/f-z/lakizilisk-zorthos.grp diff --git a/mpq/unit/cm/faction-z/nathrelisk.grp b/mpq/unit/cm/f-z/nathrelisk.grp similarity index 100% rename from mpq/unit/cm/faction-z/nathrelisk.grp rename to mpq/unit/cm/f-z/nathrelisk.grp diff --git a/mpq/unit/cm/faction-z/quazrokor-shadow.grp b/mpq/unit/cm/f-z/quazrokor-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-z/quazrokor-shadow.grp rename to mpq/unit/cm/f-z/quazrokor-shadow.grp diff --git a/mpq/unit/cm/faction-z/quazrokor.grp b/mpq/unit/cm/f-z/quazrokor.grp similarity index 100% rename from mpq/unit/cm/faction-z/quazrokor.grp rename to mpq/unit/cm/f-z/quazrokor.grp diff --git a/mpq/unit/cm/faction-z/scrylyleth-birth.grp b/mpq/unit/cm/f-z/scrylyleth-birth.grp similarity index 100% rename from mpq/unit/cm/faction-z/scrylyleth-birth.grp rename to mpq/unit/cm/f-z/scrylyleth-birth.grp diff --git a/mpq/unit/cm/faction-z/scrylyleth-shadow.grp b/mpq/unit/cm/f-z/scrylyleth-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-z/scrylyleth-shadow.grp rename to mpq/unit/cm/f-z/scrylyleth-shadow.grp diff --git a/mpq/unit/cm/faction-z/scrylyleth.grp b/mpq/unit/cm/f-z/scrylyleth.grp similarity index 100% rename from mpq/unit/cm/faction-z/scrylyleth.grp rename to mpq/unit/cm/f-z/scrylyleth.grp diff --git a/mpq/unit/cm/faction-z/scrylyleth.loa b/mpq/unit/cm/f-z/scrylyleth.loa similarity index 100% rename from mpq/unit/cm/faction-z/scrylyleth.loa rename to mpq/unit/cm/f-z/scrylyleth.loa diff --git a/mpq/unit/cm/faction-z/sovrokor.grp b/mpq/unit/cm/f-z/sovrokor.grp similarity index 100% rename from mpq/unit/cm/faction-z/sovrokor.grp rename to mpq/unit/cm/f-z/sovrokor.grp diff --git a/mpq/unit/cm/faction-z/yblyleth-shadow.grp b/mpq/unit/cm/f-z/yblyleth-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-z/yblyleth-shadow.grp rename to mpq/unit/cm/f-z/yblyleth-shadow.grp diff --git a/mpq/unit/cm/faction-z/yblyleth.grp b/mpq/unit/cm/f-z/yblyleth.grp similarity index 100% rename from mpq/unit/cm/faction-z/yblyleth.grp rename to mpq/unit/cm/f-z/yblyleth.grp diff --git a/mpq/unit/cm/faction-z/zethalor-birth.grp b/mpq/unit/cm/f-z/zethalor-birth.grp similarity index 100% rename from mpq/unit/cm/faction-z/zethalor-birth.grp rename to mpq/unit/cm/f-z/zethalor-birth.grp diff --git a/mpq/unit/cm/faction-z/zethalor-remains.grp b/mpq/unit/cm/f-z/zethalor-remains.grp similarity index 100% rename from mpq/unit/cm/faction-z/zethalor-remains.grp rename to mpq/unit/cm/f-z/zethalor-remains.grp diff --git a/mpq/unit/cm/faction-z/zethalor-shadow.grp b/mpq/unit/cm/f-z/zethalor-shadow.grp similarity index 100% rename from mpq/unit/cm/faction-z/zethalor-shadow.grp rename to mpq/unit/cm/f-z/zethalor-shadow.grp diff --git a/mpq/unit/cm/faction-z/zethalor.grp b/mpq/unit/cm/f-z/zethalor.grp similarity index 100% rename from mpq/unit/cm/faction-z/zethalor.grp rename to mpq/unit/cm/f-z/zethalor.grp diff --git a/mpq/unit/cm/faction-t/goremast.grp b/mpq/unit/cm/faction-t/goremast.grp deleted file mode 100644 index ea4dd444..00000000 Binary files a/mpq/unit/cm/faction-t/goremast.grp and /dev/null differ diff --git a/mpq/unit/cm/gamemodes/omnipresence/omnivale-shadow.grp b/mpq/unit/cm/gm/omnipresence/omnivale-shadow.grp similarity index 100% rename from mpq/unit/cm/gamemodes/omnipresence/omnivale-shadow.grp rename to mpq/unit/cm/gm/omnipresence/omnivale-shadow.grp diff --git a/mpq/unit/cm/gamemodes/omnipresence/omnivale.grp b/mpq/unit/cm/gm/omnipresence/omnivale.grp similarity index 100% rename from mpq/unit/cm/gamemodes/omnipresence/omnivale.grp rename to mpq/unit/cm/gm/omnipresence/omnivale.grp diff --git a/mpq/unit/cm/heroes/ackmed-shadow.grp b/mpq/unit/cm/h/ackmed-shadow.grp similarity index 100% rename from mpq/unit/cm/heroes/ackmed-shadow.grp rename to mpq/unit/cm/h/ackmed-shadow.grp diff --git a/mpq/unit/cm/heroes/ackmed.grp b/mpq/unit/cm/h/ackmed.grp similarity index 100% rename from mpq/unit/cm/heroes/ackmed.grp rename to mpq/unit/cm/h/ackmed.grp diff --git a/mpq/unit/cm/neutral/cbattle.grp b/mpq/unit/cm/n/cbattle.grp similarity index 100% rename from mpq/unit/cm/neutral/cbattle.grp rename to mpq/unit/cm/n/cbattle.grp diff --git a/mpq/unit/cm/neutral/gas-raw.grp b/mpq/unit/cm/n/gas-raw.grp similarity index 100% rename from mpq/unit/cm/neutral/gas-raw.grp rename to mpq/unit/cm/n/gas-raw.grp diff --git a/mpq/unit/cm/neutral/khaydarin-formation-shadow.grp b/mpq/unit/cm/n/khaydarin-formation-shadow.grp similarity index 100% rename from mpq/unit/cm/neutral/khaydarin-formation-shadow.grp rename to mpq/unit/cm/n/khaydarin-formation-shadow.grp diff --git a/mpq/unit/cm/neutral/mineral-chunk-rich.grp b/mpq/unit/cm/n/mineral-chunk-rich.grp similarity index 100% rename from mpq/unit/cm/neutral/mineral-chunk-rich.grp rename to mpq/unit/cm/n/mineral-chunk-rich.grp diff --git a/mpq/unit/cm/neutral/mineral-field-rich-01.grp b/mpq/unit/cm/n/mineral-field-rich-01.grp similarity index 100% rename from mpq/unit/cm/neutral/mineral-field-rich-01.grp rename to mpq/unit/cm/n/mineral-field-rich-01.grp diff --git a/mpq/unit/cm/neutral/mineral-field-rich-02.grp b/mpq/unit/cm/n/mineral-field-rich-02.grp similarity index 100% rename from mpq/unit/cm/neutral/mineral-field-rich-02.grp rename to mpq/unit/cm/n/mineral-field-rich-02.grp diff --git a/mpq/unit/cm/neutral/mineral-field-rich-03.grp b/mpq/unit/cm/n/mineral-field-rich-03.grp similarity index 100% rename from mpq/unit/cm/neutral/mineral-field-rich-03.grp rename to mpq/unit/cm/n/mineral-field-rich-03.grp diff --git a/mpq/unit/cm/neutral/temple-shadow.grp b/mpq/unit/cm/n/temple-shadow.grp similarity index 100% rename from mpq/unit/cm/neutral/temple-shadow.grp rename to mpq/unit/cm/n/temple-shadow.grp diff --git a/mpq/unit/cm/neutral/vespene-ridge-puffs.los b/mpq/unit/cm/n/vespene-ridge-puffs.los similarity index 100% rename from mpq/unit/cm/neutral/vespene-ridge-puffs.los rename to mpq/unit/cm/n/vespene-ridge-puffs.los diff --git a/mpq/unit/cm/neutral/vespene-ridge-shadow.grp b/mpq/unit/cm/n/vespene-ridge-shadow.grp similarity index 100% rename from mpq/unit/cm/neutral/vespene-ridge-shadow.grp rename to mpq/unit/cm/n/vespene-ridge-shadow.grp diff --git a/mpq/unit/cm/neutral/vespene-ridge.grp b/mpq/unit/cm/n/vespene-ridge.grp similarity index 100% rename from mpq/unit/cm/neutral/vespene-ridge.grp rename to mpq/unit/cm/n/vespene-ridge.grp diff --git a/mpq/unit/cm/protoss/accantor-attack.lol b/mpq/unit/cm/p/accantor-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/accantor-attack.lol rename to mpq/unit/cm/p/accantor-attack.lol diff --git a/mpq/unit/cm/protoss/amaranth-shadow.grp b/mpq/unit/cm/p/amaranth-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/amaranth-shadow.grp rename to mpq/unit/cm/p/amaranth-shadow.grp diff --git a/mpq/unit/cm/protoss/amaranth.grp b/mpq/unit/cm/p/amaranth.grp similarity index 100% rename from mpq/unit/cm/protoss/amaranth.grp rename to mpq/unit/cm/p/amaranth.grp diff --git a/mpq/unit/cm/protoss/analogue-shadow.grp b/mpq/unit/cm/p/analogue-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/analogue-shadow.grp rename to mpq/unit/cm/p/analogue-shadow.grp diff --git a/mpq/unit/cm/protoss/analogue.grp b/mpq/unit/cm/p/analogue.grp similarity index 100% rename from mpq/unit/cm/protoss/analogue.grp rename to mpq/unit/cm/p/analogue.grp diff --git a/mpq/unit/cm/protoss/ancestral-archives-damage.lof b/mpq/unit/cm/p/ancestral-archives-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/ancestral-archives-damage.lof rename to mpq/unit/cm/p/ancestral-archives-damage.lof diff --git a/mpq/unit/cm/protoss/ancestral-archives-shadow.grp b/mpq/unit/cm/p/ancestral-archives-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/ancestral-archives-shadow.grp rename to mpq/unit/cm/p/ancestral-archives-shadow.grp diff --git a/mpq/unit/cm/protoss/ancestral-archives.grp b/mpq/unit/cm/p/ancestral-archives.grp similarity index 100% rename from mpq/unit/cm/protoss/ancestral-archives.grp rename to mpq/unit/cm/p/ancestral-archives.grp diff --git a/mpq/unit/cm/protoss/anthelion-teleport-arrive.grp b/mpq/unit/cm/p/anthelion-teleport-arrive.grp similarity index 100% rename from mpq/unit/cm/protoss/anthelion-teleport-arrive.grp rename to mpq/unit/cm/p/anthelion-teleport-arrive.grp diff --git a/mpq/unit/cm/protoss/anthelion-teleport-depart.grp b/mpq/unit/cm/p/anthelion-teleport-depart.grp similarity index 100% rename from mpq/unit/cm/protoss/anthelion-teleport-depart.grp rename to mpq/unit/cm/p/anthelion-teleport-depart.grp diff --git a/mpq/unit/cm/protoss/anthelion.grp b/mpq/unit/cm/p/anthelion.grp similarity index 100% rename from mpq/unit/cm/protoss/anthelion.grp rename to mpq/unit/cm/p/anthelion.grp diff --git a/mpq/unit/cm/protoss/architect-attack.lol b/mpq/unit/cm/p/architect-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/architect-attack.lol rename to mpq/unit/cm/p/architect-attack.lol diff --git a/mpq/unit/cm/protoss/architect-engine.grp b/mpq/unit/cm/p/architect-engine.grp similarity index 100% rename from mpq/unit/cm/protoss/architect-engine.grp rename to mpq/unit/cm/p/architect-engine.grp diff --git a/mpq/unit/cm/protoss/architect-shadow.grp b/mpq/unit/cm/p/architect-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/architect-shadow.grp rename to mpq/unit/cm/p/architect-shadow.grp diff --git a/mpq/unit/cm/protoss/architect.grp b/mpq/unit/cm/p/architect.grp similarity index 100% rename from mpq/unit/cm/protoss/architect.grp rename to mpq/unit/cm/p/architect.grp diff --git a/mpq/unit/cm/protoss/ardent-authority-damage.lof b/mpq/unit/cm/p/ardent-authority-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/ardent-authority-damage.lof rename to mpq/unit/cm/p/ardent-authority-damage.lof diff --git a/mpq/unit/cm/protoss/ardent-authority-shadow.grp b/mpq/unit/cm/p/ardent-authority-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/ardent-authority-shadow.grp rename to mpq/unit/cm/p/ardent-authority-shadow.grp diff --git a/mpq/unit/cm/protoss/ardent-authority.grp b/mpq/unit/cm/p/ardent-authority.grp similarity index 100% rename from mpq/unit/cm/protoss/ardent-authority.grp rename to mpq/unit/cm/p/ardent-authority.grp diff --git a/mpq/unit/cm/protoss/argosy-damage.lof b/mpq/unit/cm/p/argosy-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/argosy-damage.lof rename to mpq/unit/cm/p/argosy-damage.lof diff --git a/mpq/unit/cm/protoss/argosy-shadow.grp b/mpq/unit/cm/p/argosy-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/argosy-shadow.grp rename to mpq/unit/cm/p/argosy-shadow.grp diff --git a/mpq/unit/cm/protoss/argosy.grp b/mpq/unit/cm/p/argosy.grp similarity index 100% rename from mpq/unit/cm/protoss/argosy.grp rename to mpq/unit/cm/p/argosy.grp diff --git a/mpq/unit/cm/protoss/artisan-death.grp b/mpq/unit/cm/p/artisan-death.grp similarity index 100% rename from mpq/unit/cm/protoss/artisan-death.grp rename to mpq/unit/cm/p/artisan-death.grp diff --git a/mpq/unit/cm/protoss/artisan.grp b/mpq/unit/cm/p/artisan.grp similarity index 100% rename from mpq/unit/cm/protoss/artisan.grp rename to mpq/unit/cm/p/artisan.grp diff --git a/mpq/unit/cm/protoss/artisan.loo b/mpq/unit/cm/p/artisan.loo similarity index 100% rename from mpq/unit/cm/protoss/artisan.loo rename to mpq/unit/cm/p/artisan.loo diff --git a/mpq/unit/cm/protoss/ascension-large.grp b/mpq/unit/cm/p/ascension-large.grp similarity index 100% rename from mpq/unit/cm/protoss/ascension-large.grp rename to mpq/unit/cm/p/ascension-large.grp diff --git a/mpq/unit/cm/protoss/ascension-medium.grp b/mpq/unit/cm/p/ascension-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/ascension-medium.grp rename to mpq/unit/cm/p/ascension-medium.grp diff --git a/mpq/unit/cm/protoss/ascension-small.grp b/mpq/unit/cm/p/ascension-small.grp similarity index 100% rename from mpq/unit/cm/protoss/ascension-small.grp rename to mpq/unit/cm/p/ascension-small.grp diff --git a/mpq/unit/cm/protoss/ascension-xlarge.grp b/mpq/unit/cm/p/ascension-xlarge.grp similarity index 100% rename from mpq/unit/cm/protoss/ascension-xlarge.grp rename to mpq/unit/cm/p/ascension-xlarge.grp diff --git a/mpq/unit/cm/protoss/astral-rule-large.grp b/mpq/unit/cm/p/astral-rule-large.grp similarity index 100% rename from mpq/unit/cm/protoss/astral-rule-large.grp rename to mpq/unit/cm/p/astral-rule-large.grp diff --git a/mpq/unit/cm/protoss/astral-rule-medium.grp b/mpq/unit/cm/p/astral-rule-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/astral-rule-medium.grp rename to mpq/unit/cm/p/astral-rule-medium.grp diff --git a/mpq/unit/cm/protoss/astral-rule-small.grp b/mpq/unit/cm/p/astral-rule-small.grp similarity index 100% rename from mpq/unit/cm/protoss/astral-rule-small.grp rename to mpq/unit/cm/p/astral-rule-small.grp diff --git a/mpq/unit/cm/protoss/astral-rule-xlarge.grp b/mpq/unit/cm/p/astral-rule-xlarge.grp similarity index 100% rename from mpq/unit/cm/protoss/astral-rule-xlarge.grp rename to mpq/unit/cm/p/astral-rule-xlarge.grp diff --git a/mpq/unit/cm/protoss/astralomen-damage.lof b/mpq/unit/cm/p/astralomen-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/astralomen-damage.lof rename to mpq/unit/cm/p/astralomen-damage.lof diff --git a/mpq/unit/cm/protoss/astralomen-shadow.grp b/mpq/unit/cm/p/astralomen-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/astralomen-shadow.grp rename to mpq/unit/cm/p/astralomen-shadow.grp diff --git a/mpq/unit/cm/protoss/astralomen.grp b/mpq/unit/cm/p/astralomen.grp similarity index 100% rename from mpq/unit/cm/protoss/astralomen.grp rename to mpq/unit/cm/p/astralomen.grp diff --git a/mpq/unit/cm/protoss/atreus-attack.lol b/mpq/unit/cm/p/atreus-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/atreus-attack.lol rename to mpq/unit/cm/p/atreus-attack.lol diff --git a/mpq/unit/cm/protoss/atreus-projectile.grp b/mpq/unit/cm/p/atreus-projectile.grp similarity index 100% rename from mpq/unit/cm/protoss/atreus-projectile.grp rename to mpq/unit/cm/p/atreus-projectile.grp diff --git a/mpq/unit/cm/protoss/atreus-shadow.grp b/mpq/unit/cm/p/atreus-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/atreus-shadow.grp rename to mpq/unit/cm/p/atreus-shadow.grp diff --git a/mpq/unit/cm/protoss/atreus.grp b/mpq/unit/cm/p/atreus.grp similarity index 100% rename from mpq/unit/cm/protoss/atreus.grp rename to mpq/unit/cm/p/atreus.grp diff --git a/mpq/unit/cm/protoss/augur-death.grp b/mpq/unit/cm/p/augur-death.grp similarity index 100% rename from mpq/unit/cm/protoss/augur-death.grp rename to mpq/unit/cm/p/augur-death.grp diff --git a/mpq/unit/cm/protoss/augur-energy.grp b/mpq/unit/cm/p/augur-energy.grp similarity index 100% rename from mpq/unit/cm/protoss/augur-energy.grp rename to mpq/unit/cm/p/augur-energy.grp diff --git a/mpq/unit/cm/protoss/augur-weaponhit.grp b/mpq/unit/cm/p/augur-weaponhit.grp similarity index 100% rename from mpq/unit/cm/protoss/augur-weaponhit.grp rename to mpq/unit/cm/p/augur-weaponhit.grp diff --git a/mpq/unit/cm/protoss/augur.grp b/mpq/unit/cm/p/augur.grp similarity index 100% rename from mpq/unit/cm/protoss/augur.grp rename to mpq/unit/cm/p/augur.grp diff --git a/mpq/unit/cm/protoss/aurora-engine.grp b/mpq/unit/cm/p/aurora-engine.grp similarity index 100% rename from mpq/unit/cm/protoss/aurora-engine.grp rename to mpq/unit/cm/p/aurora-engine.grp diff --git a/mpq/unit/cm/protoss/aurora.grp b/mpq/unit/cm/p/aurora.grp similarity index 100% rename from mpq/unit/cm/protoss/aurora.grp rename to mpq/unit/cm/p/aurora.grp diff --git a/mpq/unit/cm/protoss/autocort-shadow.grp b/mpq/unit/cm/p/autocort-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/autocort-shadow.grp rename to mpq/unit/cm/p/autocort-shadow.grp diff --git a/mpq/unit/cm/protoss/autocort.grp b/mpq/unit/cm/p/autocort.grp similarity index 100% rename from mpq/unit/cm/protoss/autocort.grp rename to mpq/unit/cm/p/autocort.grp diff --git a/mpq/unit/cm/protoss/automatonregister-damage.lof b/mpq/unit/cm/p/automatonregister-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/automatonregister-damage.lof rename to mpq/unit/cm/p/automatonregister-damage.lof diff --git a/mpq/unit/cm/protoss/automatonregister-shadow.grp b/mpq/unit/cm/p/automatonregister-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/automatonregister-shadow.grp rename to mpq/unit/cm/p/automatonregister-shadow.grp diff --git a/mpq/unit/cm/protoss/automatonregister.grp b/mpq/unit/cm/p/automatonregister.grp similarity index 100% rename from mpq/unit/cm/protoss/automatonregister.grp rename to mpq/unit/cm/p/automatonregister.grp diff --git a/mpq/unit/cm/protoss/auxiliary-oasis-damage.lof b/mpq/unit/cm/p/auxiliary-oasis-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/auxiliary-oasis-damage.lof rename to mpq/unit/cm/p/auxiliary-oasis-damage.lof diff --git a/mpq/unit/cm/protoss/auxiliary-oasis-shadow.grp b/mpq/unit/cm/p/auxiliary-oasis-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/auxiliary-oasis-shadow.grp rename to mpq/unit/cm/p/auxiliary-oasis-shadow.grp diff --git a/mpq/unit/cm/protoss/auxiliary-oasis.grp b/mpq/unit/cm/p/auxiliary-oasis.grp similarity index 100% rename from mpq/unit/cm/protoss/auxiliary-oasis.grp rename to mpq/unit/cm/p/auxiliary-oasis.grp diff --git a/mpq/unit/cm/protoss/avenge-large.grp b/mpq/unit/cm/p/avenge-large.grp similarity index 100% rename from mpq/unit/cm/protoss/avenge-large.grp rename to mpq/unit/cm/p/avenge-large.grp diff --git a/mpq/unit/cm/protoss/avenge-medium.grp b/mpq/unit/cm/p/avenge-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/avenge-medium.grp rename to mpq/unit/cm/p/avenge-medium.grp diff --git a/mpq/unit/cm/protoss/avenge-small.grp b/mpq/unit/cm/p/avenge-small.grp similarity index 100% rename from mpq/unit/cm/protoss/avenge-small.grp rename to mpq/unit/cm/p/avenge-small.grp diff --git a/mpq/unit/cm/protoss/avenge-xlarge.grp b/mpq/unit/cm/p/avenge-xlarge.grp similarity index 100% rename from mpq/unit/cm/protoss/avenge-xlarge.grp rename to mpq/unit/cm/p/avenge-xlarge.grp diff --git a/mpq/unit/cm/protoss/barghest.grp b/mpq/unit/cm/p/barghest.grp similarity index 100% rename from mpq/unit/cm/protoss/barghest.grp rename to mpq/unit/cm/p/barghest.grp diff --git a/mpq/unit/cm/protoss/binding-plasma-overlay.grp b/mpq/unit/cm/p/binding-plasma-overlay.grp similarity index 100% rename from mpq/unit/cm/protoss/binding-plasma-overlay.grp rename to mpq/unit/cm/p/binding-plasma-overlay.grp diff --git a/mpq/unit/cm/protoss/bulwark.grp b/mpq/unit/cm/p/bulwark.grp similarity index 100% rename from mpq/unit/cm/protoss/bulwark.grp rename to mpq/unit/cm/p/bulwark.grp diff --git a/mpq/unit/cm/protoss/cabalist-shadow.grp b/mpq/unit/cm/p/cabalist-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/cabalist-shadow.grp rename to mpq/unit/cm/p/cabalist-shadow.grp diff --git a/mpq/unit/cm/protoss/cantavis-hallucination-field.grp b/mpq/unit/cm/p/cantavis-hallucination-field.grp similarity index 100% rename from mpq/unit/cm/protoss/cantavis-hallucination-field.grp rename to mpq/unit/cm/p/cantavis-hallucination-field.grp diff --git a/mpq/unit/cm/protoss/cantavis-hallucination-weapon.grp b/mpq/unit/cm/p/cantavis-hallucination-weapon.grp similarity index 100% rename from mpq/unit/cm/protoss/cantavis-hallucination-weapon.grp rename to mpq/unit/cm/p/cantavis-hallucination-weapon.grp diff --git a/mpq/unit/cm/protoss/cedent-damage.lof b/mpq/unit/cm/p/cedent-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/cedent-damage.lof rename to mpq/unit/cm/p/cedent-damage.lof diff --git a/mpq/unit/cm/protoss/cedent-gas.los b/mpq/unit/cm/p/cedent-gas.los similarity index 100% rename from mpq/unit/cm/protoss/cedent-gas.los rename to mpq/unit/cm/p/cedent-gas.los diff --git a/mpq/unit/cm/protoss/cedent-shadow.grp b/mpq/unit/cm/p/cedent-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/cedent-shadow.grp rename to mpq/unit/cm/p/cedent-shadow.grp diff --git a/mpq/unit/cm/protoss/cedent.grp b/mpq/unit/cm/p/cedent.grp similarity index 100% rename from mpq/unit/cm/protoss/cedent.grp rename to mpq/unit/cm/p/cedent.grp diff --git a/mpq/unit/cm/protoss/charlatan-attack.lol b/mpq/unit/cm/p/charlatan-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/charlatan-attack.lol rename to mpq/unit/cm/p/charlatan-attack.lol diff --git a/mpq/unit/cm/protoss/charlatan-birth.grp b/mpq/unit/cm/p/charlatan-birth.grp similarity index 100% rename from mpq/unit/cm/protoss/charlatan-birth.grp rename to mpq/unit/cm/p/charlatan-birth.grp diff --git a/mpq/unit/cm/protoss/charlatan-shadow.grp b/mpq/unit/cm/p/charlatan-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/charlatan-shadow.grp rename to mpq/unit/cm/p/charlatan-shadow.grp diff --git a/mpq/unit/cm/protoss/charlatan.grp b/mpq/unit/cm/p/charlatan.grp similarity index 100% rename from mpq/unit/cm/protoss/charlatan.grp rename to mpq/unit/cm/p/charlatan.grp diff --git a/mpq/unit/cm/protoss/clarion.grp b/mpq/unit/cm/p/clarion.grp similarity index 100% rename from mpq/unit/cm/protoss/clarion.grp rename to mpq/unit/cm/p/clarion.grp diff --git a/mpq/unit/cm/protoss/cloudform.grp b/mpq/unit/cm/p/cloudform.grp similarity index 100% rename from mpq/unit/cm/protoss/cloudform.grp rename to mpq/unit/cm/p/cloudform.grp diff --git a/mpq/unit/cm/protoss/crucible-damage.lof b/mpq/unit/cm/p/crucible-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/crucible-damage.lof rename to mpq/unit/cm/p/crucible-damage.lof diff --git a/mpq/unit/cm/protoss/crucible-shadow.grp b/mpq/unit/cm/p/crucible-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/crucible-shadow.grp rename to mpq/unit/cm/p/crucible-shadow.grp diff --git a/mpq/unit/cm/protoss/crucible.grp b/mpq/unit/cm/p/crucible.grp similarity index 100% rename from mpq/unit/cm/protoss/crucible.grp rename to mpq/unit/cm/p/crucible.grp diff --git a/mpq/unit/cm/protoss/demiurge-gods-made-flesh-large.grp b/mpq/unit/cm/p/demiurge-gods-made-flesh-large.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-gods-made-flesh-large.grp rename to mpq/unit/cm/p/demiurge-gods-made-flesh-large.grp diff --git a/mpq/unit/cm/protoss/demiurge-gods-made-flesh-medium.grp b/mpq/unit/cm/p/demiurge-gods-made-flesh-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-gods-made-flesh-medium.grp rename to mpq/unit/cm/p/demiurge-gods-made-flesh-medium.grp diff --git a/mpq/unit/cm/protoss/demiurge-gods-made-flesh-small.grp b/mpq/unit/cm/p/demiurge-gods-made-flesh-small.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-gods-made-flesh-small.grp rename to mpq/unit/cm/p/demiurge-gods-made-flesh-small.grp diff --git a/mpq/unit/cm/protoss/demiurge-shadow.grp b/mpq/unit/cm/p/demiurge-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-shadow.grp rename to mpq/unit/cm/p/demiurge-shadow.grp diff --git a/mpq/unit/cm/protoss/demiurge-worship-overlay-large.grp b/mpq/unit/cm/p/demiurge-worship-overlay-large.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-worship-overlay-large.grp rename to mpq/unit/cm/p/demiurge-worship-overlay-large.grp diff --git a/mpq/unit/cm/protoss/demiurge-worship-overlay-medium.grp b/mpq/unit/cm/p/demiurge-worship-overlay-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-worship-overlay-medium.grp rename to mpq/unit/cm/p/demiurge-worship-overlay-medium.grp diff --git a/mpq/unit/cm/protoss/demiurge-worship-overlay-small.grp b/mpq/unit/cm/p/demiurge-worship-overlay-small.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-worship-overlay-small.grp rename to mpq/unit/cm/p/demiurge-worship-overlay-small.grp diff --git a/mpq/unit/cm/protoss/demiurge-worship-overlay-xlarge.grp b/mpq/unit/cm/p/demiurge-worship-overlay-xlarge.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-worship-overlay-xlarge.grp rename to mpq/unit/cm/p/demiurge-worship-overlay-xlarge.grp diff --git a/mpq/unit/cm/protoss/demiurge-worship-proc-large.grp b/mpq/unit/cm/p/demiurge-worship-proc-large.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-worship-proc-large.grp rename to mpq/unit/cm/p/demiurge-worship-proc-large.grp diff --git a/mpq/unit/cm/protoss/demiurge-worship-proc-medium.grp b/mpq/unit/cm/p/demiurge-worship-proc-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-worship-proc-medium.grp rename to mpq/unit/cm/p/demiurge-worship-proc-medium.grp diff --git a/mpq/unit/cm/protoss/demiurge-worship-proc-small.grp b/mpq/unit/cm/p/demiurge-worship-proc-small.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-worship-proc-small.grp rename to mpq/unit/cm/p/demiurge-worship-proc-small.grp diff --git a/mpq/unit/cm/protoss/demiurge-worship-proc-xlarge.grp b/mpq/unit/cm/p/demiurge-worship-proc-xlarge.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge-worship-proc-xlarge.grp rename to mpq/unit/cm/p/demiurge-worship-proc-xlarge.grp diff --git a/mpq/unit/cm/protoss/demiurge.grp b/mpq/unit/cm/p/demiurge.grp similarity index 100% rename from mpq/unit/cm/protoss/demiurge.grp rename to mpq/unit/cm/p/demiurge.grp diff --git a/mpq/unit/cm/protoss/dracadin-attack.lol b/mpq/unit/cm/p/dracadin-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/dracadin-attack.lol rename to mpq/unit/cm/p/dracadin-attack.lol diff --git a/mpq/unit/cm/protoss/dracadin-explosion.grp b/mpq/unit/cm/p/dracadin-explosion.grp similarity index 100% rename from mpq/unit/cm/protoss/dracadin-explosion.grp rename to mpq/unit/cm/p/dracadin-explosion.grp diff --git a/mpq/unit/cm/protoss/ecclesiast-remains.grp b/mpq/unit/cm/p/ecclesiast-remains.grp similarity index 100% rename from mpq/unit/cm/protoss/ecclesiast-remains.grp rename to mpq/unit/cm/p/ecclesiast-remains.grp diff --git a/mpq/unit/cm/protoss/ecclesiast-shadow.grp b/mpq/unit/cm/p/ecclesiast-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/ecclesiast-shadow.grp rename to mpq/unit/cm/p/ecclesiast-shadow.grp diff --git a/mpq/unit/cm/protoss/ecclesiast.grp b/mpq/unit/cm/p/ecclesiast.grp similarity index 100% rename from mpq/unit/cm/protoss/ecclesiast.grp rename to mpq/unit/cm/p/ecclesiast.grp diff --git a/mpq/unit/cm/protoss/empress-birth.grp b/mpq/unit/cm/p/empress-birth.grp similarity index 100% rename from mpq/unit/cm/protoss/empress-birth.grp rename to mpq/unit/cm/p/empress-birth.grp diff --git a/mpq/unit/cm/protoss/empress.grp b/mpq/unit/cm/p/empress.grp similarity index 100% rename from mpq/unit/cm/protoss/empress.grp rename to mpq/unit/cm/p/empress.grp diff --git a/mpq/unit/cm/protoss/empyrean-attack.lol b/mpq/unit/cm/p/empyrean-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/empyrean-attack.lol rename to mpq/unit/cm/p/empyrean-attack.lol diff --git a/mpq/unit/cm/protoss/empyrean-engine.grp b/mpq/unit/cm/p/empyrean-engine.grp similarity index 100% rename from mpq/unit/cm/protoss/empyrean-engine.grp rename to mpq/unit/cm/p/empyrean-engine.grp diff --git a/mpq/unit/cm/protoss/empyrean.grp b/mpq/unit/cm/p/empyrean.grp similarity index 100% rename from mpq/unit/cm/protoss/empyrean.grp rename to mpq/unit/cm/p/empyrean.grp diff --git a/mpq/unit/cm/protoss/engram-damage.lof b/mpq/unit/cm/p/engram-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/engram-damage.lof rename to mpq/unit/cm/p/engram-damage.lof diff --git a/mpq/unit/cm/protoss/engram-shadow.grp b/mpq/unit/cm/p/engram-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/engram-shadow.grp rename to mpq/unit/cm/p/engram-shadow.grp diff --git a/mpq/unit/cm/protoss/engram.grp b/mpq/unit/cm/p/engram.grp similarity index 100% rename from mpq/unit/cm/protoss/engram.grp rename to mpq/unit/cm/p/engram.grp diff --git a/mpq/unit/cm/protoss/envoy-death.grp b/mpq/unit/cm/p/envoy-death.grp similarity index 100% rename from mpq/unit/cm/protoss/envoy-death.grp rename to mpq/unit/cm/p/envoy-death.grp diff --git a/mpq/unit/cm/protoss/epigraph-attack.lol b/mpq/unit/cm/p/epigraph-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/epigraph-attack.lol rename to mpq/unit/cm/p/epigraph-attack.lol diff --git a/mpq/unit/cm/protoss/epigraph-engine.grp b/mpq/unit/cm/p/epigraph-engine.grp similarity index 100% rename from mpq/unit/cm/protoss/epigraph-engine.grp rename to mpq/unit/cm/p/epigraph-engine.grp diff --git a/mpq/unit/cm/protoss/epigraph.grp b/mpq/unit/cm/p/epigraph.grp similarity index 100% rename from mpq/unit/cm/protoss/epigraph.grp rename to mpq/unit/cm/p/epigraph.grp diff --git a/mpq/unit/cm/protoss/exemplar-attack.lol b/mpq/unit/cm/p/exemplar-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/exemplar-attack.lol rename to mpq/unit/cm/p/exemplar-attack.lol diff --git a/mpq/unit/cm/protoss/exemplar-death.grp b/mpq/unit/cm/p/exemplar-death.grp similarity index 100% rename from mpq/unit/cm/protoss/exemplar-death.grp rename to mpq/unit/cm/p/exemplar-death.grp diff --git a/mpq/unit/cm/protoss/exemplar-engine.grp b/mpq/unit/cm/p/exemplar-engine.grp similarity index 100% rename from mpq/unit/cm/protoss/exemplar-engine.grp rename to mpq/unit/cm/p/exemplar-engine.grp diff --git a/mpq/unit/cm/protoss/exemplar-weapon.grp b/mpq/unit/cm/p/exemplar-weapon.grp similarity index 100% rename from mpq/unit/cm/protoss/exemplar-weapon.grp rename to mpq/unit/cm/p/exemplar-weapon.grp diff --git a/mpq/unit/cm/protoss/exemplar-weaponhit.grp b/mpq/unit/cm/p/exemplar-weaponhit.grp similarity index 100% rename from mpq/unit/cm/protoss/exemplar-weaponhit.grp rename to mpq/unit/cm/p/exemplar-weaponhit.grp diff --git a/mpq/unit/cm/protoss/exemplar.grp b/mpq/unit/cm/p/exemplar.grp similarity index 100% rename from mpq/unit/cm/protoss/exemplar.grp rename to mpq/unit/cm/p/exemplar.grp diff --git a/mpq/unit/cm/protoss/explosion-large.grp b/mpq/unit/cm/p/explosion-large.grp similarity index 100% rename from mpq/unit/cm/protoss/explosion-large.grp rename to mpq/unit/cm/p/explosion-large.grp diff --git a/mpq/unit/cm/protoss/explosion-medium.grp b/mpq/unit/cm/p/explosion-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/explosion-medium.grp rename to mpq/unit/cm/p/explosion-medium.grp diff --git a/mpq/unit/cm/protoss/explosion-small.grp b/mpq/unit/cm/p/explosion-small.grp similarity index 100% rename from mpq/unit/cm/protoss/explosion-small.grp rename to mpq/unit/cm/p/explosion-small.grp diff --git a/mpq/unit/cm/protoss/gladius-charge.grp b/mpq/unit/cm/p/gladius-charge.grp similarity index 100% rename from mpq/unit/cm/protoss/gladius-charge.grp rename to mpq/unit/cm/p/gladius-charge.grp diff --git a/mpq/unit/cm/protoss/gladius-engine.grp b/mpq/unit/cm/p/gladius-engine.grp similarity index 100% rename from mpq/unit/cm/protoss/gladius-engine.grp rename to mpq/unit/cm/p/gladius-engine.grp diff --git a/mpq/unit/cm/protoss/gladius-weapon.grp b/mpq/unit/cm/p/gladius-weapon.grp similarity index 100% rename from mpq/unit/cm/protoss/gladius-weapon.grp rename to mpq/unit/cm/p/gladius-weapon.grp diff --git a/mpq/unit/cm/protoss/gladius.grp b/mpq/unit/cm/p/gladius.grp similarity index 100% rename from mpq/unit/cm/protoss/gladius.grp rename to mpq/unit/cm/p/gladius.grp diff --git a/mpq/unit/cm/protoss/golem-death.grp b/mpq/unit/cm/p/golem-death.grp similarity index 100% rename from mpq/unit/cm/protoss/golem-death.grp rename to mpq/unit/cm/p/golem-death.grp diff --git a/mpq/unit/cm/protoss/golem-shadow.grp b/mpq/unit/cm/p/golem-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/golem-shadow.grp rename to mpq/unit/cm/p/golem-shadow.grp diff --git a/mpq/unit/cm/protoss/golem.grp b/mpq/unit/cm/p/golem.grp similarity index 100% rename from mpq/unit/cm/protoss/golem.grp rename to mpq/unit/cm/p/golem.grp diff --git a/mpq/unit/cm/protoss/grand-library-damage.lof b/mpq/unit/cm/p/grand-library-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/grand-library-damage.lof rename to mpq/unit/cm/p/grand-library-damage.lof diff --git a/mpq/unit/cm/protoss/grand-library-shadow.grp b/mpq/unit/cm/p/grand-library-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/grand-library-shadow.grp rename to mpq/unit/cm/p/grand-library-shadow.grp diff --git a/mpq/unit/cm/protoss/grand-library.grp b/mpq/unit/cm/p/grand-library.grp similarity index 100% rename from mpq/unit/cm/protoss/grand-library.grp rename to mpq/unit/cm/p/grand-library.grp diff --git a/mpq/unit/cm/protoss/herald-glow.grp b/mpq/unit/cm/p/herald-glow.grp similarity index 100% rename from mpq/unit/cm/protoss/herald-glow.grp rename to mpq/unit/cm/p/herald-glow.grp diff --git a/mpq/unit/cm/protoss/herald-shadow.grp b/mpq/unit/cm/p/herald-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/herald-shadow.grp rename to mpq/unit/cm/p/herald-shadow.grp diff --git a/mpq/unit/cm/protoss/herald.grp b/mpq/unit/cm/p/herald.grp similarity index 100% rename from mpq/unit/cm/protoss/herald.grp rename to mpq/unit/cm/p/herald.grp diff --git a/mpq/unit/cm/protoss/hierophant-death.grp b/mpq/unit/cm/p/hierophant-death.grp similarity index 100% rename from mpq/unit/cm/protoss/hierophant-death.grp rename to mpq/unit/cm/p/hierophant-death.grp diff --git a/mpq/unit/cm/protoss/hierophant-shadow.grp b/mpq/unit/cm/p/hierophant-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/hierophant-shadow.grp rename to mpq/unit/cm/p/hierophant-shadow.grp diff --git a/mpq/unit/cm/protoss/hierophant.grp b/mpq/unit/cm/p/hierophant.grp similarity index 100% rename from mpq/unit/cm/protoss/hierophant.grp rename to mpq/unit/cm/p/hierophant.grp diff --git a/mpq/unit/cm/protoss/idol-attack.lol b/mpq/unit/cm/p/idol-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/idol-attack.lol rename to mpq/unit/cm/p/idol-attack.lol diff --git a/mpq/unit/cm/protoss/idol-death.grp b/mpq/unit/cm/p/idol-death.grp similarity index 100% rename from mpq/unit/cm/protoss/idol-death.grp rename to mpq/unit/cm/p/idol-death.grp diff --git a/mpq/unit/cm/protoss/idol-shadow.grp b/mpq/unit/cm/p/idol-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/idol-shadow.grp rename to mpq/unit/cm/p/idol-shadow.grp diff --git a/mpq/unit/cm/protoss/idol-weaponhit.grp b/mpq/unit/cm/p/idol-weaponhit.grp similarity index 100% rename from mpq/unit/cm/protoss/idol-weaponhit.grp rename to mpq/unit/cm/p/idol-weaponhit.grp diff --git a/mpq/unit/cm/protoss/idol.grp b/mpq/unit/cm/p/idol.grp similarity index 100% rename from mpq/unit/cm/protoss/idol.grp rename to mpq/unit/cm/p/idol.grp diff --git a/mpq/unit/cm/protoss/khaydarin-formation-damage.lof b/mpq/unit/cm/p/khaydarin-formation-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/khaydarin-formation-damage.lof rename to mpq/unit/cm/p/khaydarin-formation-damage.lof diff --git a/mpq/unit/cm/protoss/lanifect-death.grp b/mpq/unit/cm/p/lanifect-death.grp similarity index 100% rename from mpq/unit/cm/protoss/lanifect-death.grp rename to mpq/unit/cm/p/lanifect-death.grp diff --git a/mpq/unit/cm/protoss/lanifect-engines.grp b/mpq/unit/cm/p/lanifect-engines.grp similarity index 100% rename from mpq/unit/cm/protoss/lanifect-engines.grp rename to mpq/unit/cm/p/lanifect-engines.grp diff --git a/mpq/unit/cm/protoss/lanifect.grp b/mpq/unit/cm/p/lanifect.grp similarity index 100% rename from mpq/unit/cm/protoss/lanifect.grp rename to mpq/unit/cm/p/lanifect.grp diff --git a/mpq/unit/cm/protoss/legionnaire-blade-vortex-L.grp b/mpq/unit/cm/p/legionnaire-blade-vortex-L.grp similarity index 100% rename from mpq/unit/cm/protoss/legionnaire-blade-vortex-L.grp rename to mpq/unit/cm/p/legionnaire-blade-vortex-L.grp diff --git a/mpq/unit/cm/protoss/legionnaire-blade-vortex-M.grp b/mpq/unit/cm/p/legionnaire-blade-vortex-M.grp similarity index 100% rename from mpq/unit/cm/protoss/legionnaire-blade-vortex-M.grp rename to mpq/unit/cm/p/legionnaire-blade-vortex-M.grp diff --git a/mpq/unit/cm/protoss/legionnaire-blade-vortex-S.grp b/mpq/unit/cm/p/legionnaire-blade-vortex-S.grp similarity index 100% rename from mpq/unit/cm/protoss/legionnaire-blade-vortex-S.grp rename to mpq/unit/cm/p/legionnaire-blade-vortex-S.grp diff --git a/mpq/unit/cm/protoss/legionnaire-blade-vortex-XL.grp b/mpq/unit/cm/p/legionnaire-blade-vortex-XL.grp similarity index 100% rename from mpq/unit/cm/protoss/legionnaire-blade-vortex-XL.grp rename to mpq/unit/cm/p/legionnaire-blade-vortex-XL.grp diff --git a/mpq/unit/cm/protoss/legionnaire-remains.grp b/mpq/unit/cm/p/legionnaire-remains.grp similarity index 100% rename from mpq/unit/cm/protoss/legionnaire-remains.grp rename to mpq/unit/cm/p/legionnaire-remains.grp diff --git a/mpq/unit/cm/protoss/legionnaire-shadow.grp b/mpq/unit/cm/p/legionnaire-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/legionnaire-shadow.grp rename to mpq/unit/cm/p/legionnaire-shadow.grp diff --git a/mpq/unit/cm/protoss/legionnaire.grp b/mpq/unit/cm/p/legionnaire.grp similarity index 100% rename from mpq/unit/cm/protoss/legionnaire.grp rename to mpq/unit/cm/p/legionnaire.grp diff --git a/mpq/unit/cm/protoss/maelstrom-weapon.grp b/mpq/unit/cm/p/maelstrom-weapon.grp similarity index 100% rename from mpq/unit/cm/protoss/maelstrom-weapon.grp rename to mpq/unit/cm/p/maelstrom-weapon.grp diff --git a/mpq/unit/cm/protoss/magister-stellar-enforcement-L.grp b/mpq/unit/cm/p/magister-stellar-enforcement-L.grp similarity index 100% rename from mpq/unit/cm/protoss/magister-stellar-enforcement-L.grp rename to mpq/unit/cm/p/magister-stellar-enforcement-L.grp diff --git a/mpq/unit/cm/protoss/magister-stellar-enforcement-M.grp b/mpq/unit/cm/p/magister-stellar-enforcement-M.grp similarity index 100% rename from mpq/unit/cm/protoss/magister-stellar-enforcement-M.grp rename to mpq/unit/cm/p/magister-stellar-enforcement-M.grp diff --git a/mpq/unit/cm/protoss/magister-stellar-enforcement-S.grp b/mpq/unit/cm/p/magister-stellar-enforcement-S.grp similarity index 100% rename from mpq/unit/cm/protoss/magister-stellar-enforcement-S.grp rename to mpq/unit/cm/p/magister-stellar-enforcement-S.grp diff --git a/mpq/unit/cm/protoss/magister-stellar-enforcement-X.grp b/mpq/unit/cm/p/magister-stellar-enforcement-X.grp similarity index 100% rename from mpq/unit/cm/protoss/magister-stellar-enforcement-X.grp rename to mpq/unit/cm/p/magister-stellar-enforcement-X.grp diff --git a/mpq/unit/cm/protoss/magister-weaponhit.grp b/mpq/unit/cm/p/magister-weaponhit.grp similarity index 100% rename from mpq/unit/cm/protoss/magister-weaponhit.grp rename to mpq/unit/cm/p/magister-weaponhit.grp diff --git a/mpq/unit/cm/protoss/magister.grp b/mpq/unit/cm/p/magister.grp similarity index 100% rename from mpq/unit/cm/protoss/magister.grp rename to mpq/unit/cm/p/magister.grp diff --git a/mpq/unit/cm/protoss/manifold-death.grp b/mpq/unit/cm/p/manifold-death.grp similarity index 100% rename from mpq/unit/cm/protoss/manifold-death.grp rename to mpq/unit/cm/p/manifold-death.grp diff --git a/mpq/unit/cm/protoss/manifold-shadow.grp b/mpq/unit/cm/p/manifold-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/manifold-shadow.grp rename to mpq/unit/cm/p/manifold-shadow.grp diff --git a/mpq/unit/cm/protoss/manifold.grp b/mpq/unit/cm/p/manifold.grp similarity index 100% rename from mpq/unit/cm/protoss/manifold.grp rename to mpq/unit/cm/p/manifold.grp diff --git a/mpq/unit/cm/protoss/matrix-attack.lol b/mpq/unit/cm/p/matrix-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/matrix-attack.lol rename to mpq/unit/cm/p/matrix-attack.lol diff --git a/mpq/unit/cm/p/matrix-damage.lof b/mpq/unit/cm/p/matrix-damage.lof new file mode 100644 index 00000000..b657b672 Binary files /dev/null and b/mpq/unit/cm/p/matrix-damage.lof differ diff --git a/mpq/unit/cm/protoss/matrix-shadow.grp b/mpq/unit/cm/p/matrix-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/matrix-shadow.grp rename to mpq/unit/cm/p/matrix-shadow.grp diff --git a/mpq/unit/cm/protoss/matrix.grp b/mpq/unit/cm/p/matrix.grp similarity index 100% rename from mpq/unit/cm/protoss/matrix.grp rename to mpq/unit/cm/p/matrix.grp diff --git a/mpq/unit/cm/protoss/mind-tyrant-stun-large.grp b/mpq/unit/cm/p/mind-tyrant-stun-large.grp similarity index 100% rename from mpq/unit/cm/protoss/mind-tyrant-stun-large.grp rename to mpq/unit/cm/p/mind-tyrant-stun-large.grp diff --git a/mpq/unit/cm/protoss/mind-tyrant-stun-medium.grp b/mpq/unit/cm/p/mind-tyrant-stun-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/mind-tyrant-stun-medium.grp rename to mpq/unit/cm/p/mind-tyrant-stun-medium.grp diff --git a/mpq/unit/cm/protoss/mind-tyrant-stun-small.grp b/mpq/unit/cm/p/mind-tyrant-stun-small.grp similarity index 100% rename from mpq/unit/cm/protoss/mind-tyrant-stun-small.grp rename to mpq/unit/cm/p/mind-tyrant-stun-small.grp diff --git a/mpq/unit/cm/protoss/mind-tyrant-stun-xlarge.grp b/mpq/unit/cm/p/mind-tyrant-stun-xlarge.grp similarity index 100% rename from mpq/unit/cm/protoss/mind-tyrant-stun-xlarge.grp rename to mpq/unit/cm/p/mind-tyrant-stun-xlarge.grp diff --git a/mpq/unit/cm/protoss/mind-tyrant-tyranny-cast-overlay.grp b/mpq/unit/cm/p/mind-tyrant-tyranny-cast-overlay.grp similarity index 100% rename from mpq/unit/cm/protoss/mind-tyrant-tyranny-cast-overlay.grp rename to mpq/unit/cm/p/mind-tyrant-tyranny-cast-overlay.grp diff --git a/mpq/unit/cm/protoss/monogram.grp b/mpq/unit/cm/p/monogram.grp similarity index 100% rename from mpq/unit/cm/protoss/monogram.grp rename to mpq/unit/cm/p/monogram.grp diff --git a/mpq/unit/cm/protoss/monument-of-sin-damage.lof b/mpq/unit/cm/p/monument-of-sin-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/monument-of-sin-damage.lof rename to mpq/unit/cm/p/monument-of-sin-damage.lof diff --git a/mpq/unit/cm/protoss/monument-of-sin-shadow.grp b/mpq/unit/cm/p/monument-of-sin-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/monument-of-sin-shadow.grp rename to mpq/unit/cm/p/monument-of-sin-shadow.grp diff --git a/mpq/unit/cm/protoss/monument-of-sin.grp b/mpq/unit/cm/p/monument-of-sin.grp similarity index 100% rename from mpq/unit/cm/protoss/monument-of-sin.grp rename to mpq/unit/cm/p/monument-of-sin.grp diff --git a/mpq/unit/cm/protoss/optecton-attack.lol b/mpq/unit/cm/p/optecton-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/optecton-attack.lol rename to mpq/unit/cm/p/optecton-attack.lol diff --git a/mpq/unit/cm/protoss/optecton-muzzle.grp b/mpq/unit/cm/p/optecton-muzzle.grp similarity index 100% rename from mpq/unit/cm/protoss/optecton-muzzle.grp rename to mpq/unit/cm/p/optecton-muzzle.grp diff --git a/mpq/unit/cm/protoss/optecton-shadow.grp b/mpq/unit/cm/p/optecton-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/optecton-shadow.grp rename to mpq/unit/cm/p/optecton-shadow.grp diff --git a/mpq/unit/cm/protoss/optecton.grp b/mpq/unit/cm/p/optecton.grp similarity index 100% rename from mpq/unit/cm/protoss/optecton.grp rename to mpq/unit/cm/p/optecton.grp diff --git a/mpq/unit/cm/protoss/oscilliant-shadow.grp b/mpq/unit/cm/p/oscilliant-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/oscilliant-shadow.grp rename to mpq/unit/cm/p/oscilliant-shadow.grp diff --git a/mpq/unit/cm/protoss/oscilliant.grp b/mpq/unit/cm/p/oscilliant.grp similarity index 100% rename from mpq/unit/cm/protoss/oscilliant.grp rename to mpq/unit/cm/p/oscilliant.grp diff --git a/mpq/unit/cm/protoss/p-laser-large.grp b/mpq/unit/cm/p/p-laser-large.grp similarity index 100% rename from mpq/unit/cm/protoss/p-laser-large.grp rename to mpq/unit/cm/p/p-laser-large.grp diff --git a/mpq/unit/cm/protoss/panoptus-attack.lol b/mpq/unit/cm/p/panoptus-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/panoptus-attack.lol rename to mpq/unit/cm/p/panoptus-attack.lol diff --git a/mpq/unit/cm/protoss/panoptus.grp b/mpq/unit/cm/p/panoptus.grp similarity index 100% rename from mpq/unit/cm/protoss/panoptus.grp rename to mpq/unit/cm/p/panoptus.grp diff --git a/mpq/unit/cm/protoss/pariah-attack.grp b/mpq/unit/cm/p/pariah-attack.grp similarity index 100% rename from mpq/unit/cm/protoss/pariah-attack.grp rename to mpq/unit/cm/p/pariah-attack.grp diff --git a/mpq/unit/cm/protoss/pariah-attack.lol b/mpq/unit/cm/p/pariah-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/pariah-attack.lol rename to mpq/unit/cm/p/pariah-attack.lol diff --git a/mpq/unit/cm/protoss/pariah-shadow.grp b/mpq/unit/cm/p/pariah-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/pariah-shadow.grp rename to mpq/unit/cm/p/pariah-shadow.grp diff --git a/mpq/unit/cm/protoss/pariah.grp b/mpq/unit/cm/p/pariah.grp similarity index 100% rename from mpq/unit/cm/protoss/pariah.grp rename to mpq/unit/cm/p/pariah.grp diff --git a/mpq/unit/cm/protoss/patriarch-shadow.grp b/mpq/unit/cm/p/patriarch-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/patriarch-shadow.grp rename to mpq/unit/cm/p/patriarch-shadow.grp diff --git a/mpq/unit/cm/protoss/patriarch.grp b/mpq/unit/cm/p/patriarch.grp similarity index 100% rename from mpq/unit/cm/protoss/patriarch.grp rename to mpq/unit/cm/p/patriarch.grp diff --git a/mpq/unit/cm/protoss/pennant-damage.lof b/mpq/unit/cm/p/pennant-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/pennant-damage.lof rename to mpq/unit/cm/p/pennant-damage.lof diff --git a/mpq/unit/cm/protoss/pennant-shadow.grp b/mpq/unit/cm/p/pennant-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/pennant-shadow.grp rename to mpq/unit/cm/p/pennant-shadow.grp diff --git a/mpq/unit/cm/protoss/pennant.grp b/mpq/unit/cm/p/pennant.grp similarity index 100% rename from mpq/unit/cm/protoss/pennant.grp rename to mpq/unit/cm/p/pennant.grp diff --git a/mpq/unit/cm/protoss/phaselink-large.grp b/mpq/unit/cm/p/phaselink-large.grp similarity index 100% rename from mpq/unit/cm/protoss/phaselink-large.grp rename to mpq/unit/cm/p/phaselink-large.grp diff --git a/mpq/unit/cm/protoss/phaselink-medium.grp b/mpq/unit/cm/p/phaselink-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/phaselink-medium.grp rename to mpq/unit/cm/p/phaselink-medium.grp diff --git a/mpq/unit/cm/protoss/phaselink-small.grp b/mpq/unit/cm/p/phaselink-small.grp similarity index 100% rename from mpq/unit/cm/protoss/phaselink-small.grp rename to mpq/unit/cm/p/phaselink-small.grp diff --git a/mpq/unit/cm/protoss/photon-blasters-green.grp b/mpq/unit/cm/p/photon-blasters-green.grp similarity index 100% rename from mpq/unit/cm/protoss/photon-blasters-green.grp rename to mpq/unit/cm/p/photon-blasters-green.grp diff --git a/mpq/unit/cm/protoss/photon-blasters-white.grp b/mpq/unit/cm/p/photon-blasters-white.grp similarity index 100% rename from mpq/unit/cm/protoss/photon-blasters-white.grp rename to mpq/unit/cm/p/photon-blasters-white.grp diff --git a/mpq/unit/cm/protoss/photoncannon-attack.lol b/mpq/unit/cm/p/photoncannon-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/photoncannon-attack.lol rename to mpq/unit/cm/p/photoncannon-attack.lol diff --git a/mpq/unit/cm/protoss/positron-attack.lol b/mpq/unit/cm/p/positron-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/positron-attack.lol rename to mpq/unit/cm/p/positron-attack.lol diff --git a/mpq/unit/cm/protoss/positron-projectile.grp b/mpq/unit/cm/p/positron-projectile.grp similarity index 100% rename from mpq/unit/cm/protoss/positron-projectile.grp rename to mpq/unit/cm/p/positron-projectile.grp diff --git a/mpq/unit/cm/protoss/positron-shadow.grp b/mpq/unit/cm/p/positron-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/positron-shadow.grp rename to mpq/unit/cm/p/positron-shadow.grp diff --git a/mpq/unit/cm/protoss/positron.grp b/mpq/unit/cm/p/positron.grp similarity index 100% rename from mpq/unit/cm/protoss/positron.grp rename to mpq/unit/cm/p/positron.grp diff --git a/mpq/unit/cm/protoss/potentate-shadow.grp b/mpq/unit/cm/p/potentate-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/potentate-shadow.grp rename to mpq/unit/cm/p/potentate-shadow.grp diff --git a/mpq/unit/cm/protoss/potentate.grp b/mpq/unit/cm/p/potentate.grp similarity index 100% rename from mpq/unit/cm/protoss/potentate.grp rename to mpq/unit/cm/p/potentate.grp diff --git a/mpq/unit/cm/protoss/prostrationstage-damage.lof b/mpq/unit/cm/p/prostrationstage-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/prostrationstage-damage.lof rename to mpq/unit/cm/p/prostrationstage-damage.lof diff --git a/mpq/unit/cm/protoss/prostrationstage-shadow.grp b/mpq/unit/cm/p/prostrationstage-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/prostrationstage-shadow.grp rename to mpq/unit/cm/p/prostrationstage-shadow.grp diff --git a/mpq/unit/cm/protoss/prostrationstage.grp b/mpq/unit/cm/p/prostrationstage.grp similarity index 100% rename from mpq/unit/cm/protoss/prostrationstage.grp rename to mpq/unit/cm/p/prostrationstage.grp diff --git a/mpq/unit/cm/protoss/repentantchorus-large.grp b/mpq/unit/cm/p/repentantchorus-large.grp similarity index 100% rename from mpq/unit/cm/protoss/repentantchorus-large.grp rename to mpq/unit/cm/p/repentantchorus-large.grp diff --git a/mpq/unit/cm/protoss/repentantchorus-medium.grp b/mpq/unit/cm/p/repentantchorus-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/repentantchorus-medium.grp rename to mpq/unit/cm/p/repentantchorus-medium.grp diff --git a/mpq/unit/cm/protoss/repentantchorus-small.grp b/mpq/unit/cm/p/repentantchorus-small.grp similarity index 100% rename from mpq/unit/cm/protoss/repentantchorus-small.grp rename to mpq/unit/cm/p/repentantchorus-small.grp diff --git a/mpq/unit/cm/protoss/roguegallery-damage.lof b/mpq/unit/cm/p/roguegallery-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/roguegallery-damage.lof rename to mpq/unit/cm/p/roguegallery-damage.lof diff --git a/mpq/unit/cm/protoss/roguegallery-shadow.grp b/mpq/unit/cm/p/roguegallery-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/roguegallery-shadow.grp rename to mpq/unit/cm/p/roguegallery-shadow.grp diff --git a/mpq/unit/cm/protoss/roguegallery.grp b/mpq/unit/cm/p/roguegallery.grp similarity index 100% rename from mpq/unit/cm/protoss/roguegallery.grp rename to mpq/unit/cm/p/roguegallery.grp diff --git a/mpq/unit/cm/protoss/rubble-unit-medium.grp b/mpq/unit/cm/p/rubble-unit-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/rubble-unit-medium.grp rename to mpq/unit/cm/p/rubble-unit-medium.grp diff --git a/mpq/unit/cm/protoss/rubble-unit-small.grp b/mpq/unit/cm/p/rubble-unit-small.grp similarity index 100% rename from mpq/unit/cm/protoss/rubble-unit-small.grp rename to mpq/unit/cm/p/rubble-unit-small.grp diff --git a/mpq/unit/cm/protoss/sanctumofsorrow-damage.lof b/mpq/unit/cm/p/sanctumofsorrow-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/sanctumofsorrow-damage.lof rename to mpq/unit/cm/p/sanctumofsorrow-damage.lof diff --git a/mpq/unit/cm/protoss/sanctumofsorrow-shadow.grp b/mpq/unit/cm/p/sanctumofsorrow-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/sanctumofsorrow-shadow.grp rename to mpq/unit/cm/p/sanctumofsorrow-shadow.grp diff --git a/mpq/unit/cm/protoss/sanctumofsorrow.grp b/mpq/unit/cm/p/sanctumofsorrow.grp similarity index 100% rename from mpq/unit/cm/protoss/sanctumofsorrow.grp rename to mpq/unit/cm/p/sanctumofsorrow.grp diff --git a/mpq/unit/cm/protoss/scribe-death.grp b/mpq/unit/cm/p/scribe-death.grp similarity index 100% rename from mpq/unit/cm/protoss/scribe-death.grp rename to mpq/unit/cm/p/scribe-death.grp diff --git a/mpq/unit/cm/protoss/scribe.loo b/mpq/unit/cm/p/scribe.loo similarity index 100% rename from mpq/unit/cm/protoss/scribe.loo rename to mpq/unit/cm/p/scribe.loo diff --git a/mpq/unit/cm/protoss/sequestered-icon-damage.lof b/mpq/unit/cm/p/sequestered-icon-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/sequestered-icon-damage.lof rename to mpq/unit/cm/p/sequestered-icon-damage.lof diff --git a/mpq/unit/cm/protoss/sequestered-icon-shadow.grp b/mpq/unit/cm/p/sequestered-icon-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/sequestered-icon-shadow.grp rename to mpq/unit/cm/p/sequestered-icon-shadow.grp diff --git a/mpq/unit/cm/protoss/sequestered-icon.grp b/mpq/unit/cm/p/sequestered-icon.grp similarity index 100% rename from mpq/unit/cm/protoss/sequestered-icon.grp rename to mpq/unit/cm/p/sequestered-icon.grp diff --git a/mpq/unit/cm/protoss/servitor.grp b/mpq/unit/cm/p/servitor.grp similarity index 100% rename from mpq/unit/cm/protoss/servitor.grp rename to mpq/unit/cm/p/servitor.grp diff --git a/mpq/unit/cm/protoss/shield-hit-large.los b/mpq/unit/cm/p/shield-hit-large.los similarity index 100% rename from mpq/unit/cm/protoss/shield-hit-large.los rename to mpq/unit/cm/p/shield-hit-large.los diff --git a/mpq/unit/cm/protoss/shield-hit-medium.los b/mpq/unit/cm/p/shield-hit-medium.los similarity index 100% rename from mpq/unit/cm/protoss/shield-hit-medium.los rename to mpq/unit/cm/p/shield-hit-medium.los diff --git a/mpq/unit/cm/protoss/shield-hit-small.los b/mpq/unit/cm/p/shield-hit-small.los similarity index 100% rename from mpq/unit/cm/protoss/shield-hit-small.los rename to mpq/unit/cm/p/shield-hit-small.los diff --git a/mpq/unit/cm/protoss/shield-recharge-medium.grp b/mpq/unit/cm/p/shield-recharge-medium.grp similarity index 100% rename from mpq/unit/cm/protoss/shield-recharge-medium.grp rename to mpq/unit/cm/p/shield-recharge-medium.grp diff --git a/mpq/unit/cm/protoss/shield-recharge-xlarge.grp b/mpq/unit/cm/p/shield-recharge-xlarge.grp similarity index 100% rename from mpq/unit/cm/protoss/shield-recharge-xlarge.grp rename to mpq/unit/cm/p/shield-recharge-xlarge.grp diff --git a/mpq/unit/cm/protoss/simulacrum-death.grp b/mpq/unit/cm/p/simulacrum-death.grp similarity index 100% rename from mpq/unit/cm/protoss/simulacrum-death.grp rename to mpq/unit/cm/p/simulacrum-death.grp diff --git a/mpq/unit/cm/protoss/simulacrum-shadow.grp b/mpq/unit/cm/p/simulacrum-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/simulacrum-shadow.grp rename to mpq/unit/cm/p/simulacrum-shadow.grp diff --git a/mpq/unit/cm/protoss/simulacrum.grp b/mpq/unit/cm/p/simulacrum.grp similarity index 100% rename from mpq/unit/cm/protoss/simulacrum.grp rename to mpq/unit/cm/p/simulacrum.grp diff --git a/mpq/unit/cm/protoss/starsovereign-attack.lol b/mpq/unit/cm/p/starsovereign-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/starsovereign-attack.lol rename to mpq/unit/cm/p/starsovereign-attack.lol diff --git a/mpq/unit/cm/protoss/starsovereign-behavior.lol b/mpq/unit/cm/p/starsovereign-behavior.lol similarity index 100% rename from mpq/unit/cm/protoss/starsovereign-behavior.lol rename to mpq/unit/cm/p/starsovereign-behavior.lol diff --git a/mpq/unit/cm/protoss/starsovereign-death.grp b/mpq/unit/cm/p/starsovereign-death.grp similarity index 100% rename from mpq/unit/cm/protoss/starsovereign-death.grp rename to mpq/unit/cm/p/starsovereign-death.grp diff --git a/mpq/unit/cm/protoss/starsovereign-engine.grp b/mpq/unit/cm/p/starsovereign-engine.grp similarity index 100% rename from mpq/unit/cm/protoss/starsovereign-engine.grp rename to mpq/unit/cm/p/starsovereign-engine.grp diff --git a/mpq/unit/cm/protoss/starsovereign.grp b/mpq/unit/cm/p/starsovereign.grp similarity index 100% rename from mpq/unit/cm/protoss/starsovereign.grp rename to mpq/unit/cm/p/starsovereign.grp diff --git a/mpq/unit/cm/protoss/stasis-cell-damage.lof b/mpq/unit/cm/p/stasis-cell-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/stasis-cell-damage.lof rename to mpq/unit/cm/p/stasis-cell-damage.lof diff --git a/mpq/unit/cm/protoss/strident-stratum-damage.lof b/mpq/unit/cm/p/strident-stratum-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/strident-stratum-damage.lof rename to mpq/unit/cm/p/strident-stratum-damage.lof diff --git a/mpq/unit/cm/protoss/strident-stratum-shadow.grp b/mpq/unit/cm/p/strident-stratum-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/strident-stratum-shadow.grp rename to mpq/unit/cm/p/strident-stratum-shadow.grp diff --git a/mpq/unit/cm/protoss/strident-stratum.grp b/mpq/unit/cm/p/strident-stratum.grp similarity index 100% rename from mpq/unit/cm/protoss/strident-stratum.grp rename to mpq/unit/cm/p/strident-stratum.grp diff --git a/mpq/unit/cm/protoss/sycophant-shadow.grp b/mpq/unit/cm/p/sycophant-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/sycophant-shadow.grp rename to mpq/unit/cm/p/sycophant-shadow.grp diff --git a/mpq/unit/cm/protoss/sycophant.grp b/mpq/unit/cm/p/sycophant.grp similarity index 100% rename from mpq/unit/cm/protoss/sycophant.grp rename to mpq/unit/cm/p/sycophant.grp diff --git a/mpq/unit/cm/protoss/synthetic-synod-damage.lof b/mpq/unit/cm/p/synthetic-synod-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/synthetic-synod-damage.lof rename to mpq/unit/cm/p/synthetic-synod-damage.lof diff --git a/mpq/unit/cm/protoss/synthetic-synod-shadow.grp b/mpq/unit/cm/p/synthetic-synod-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/synthetic-synod-shadow.grp rename to mpq/unit/cm/p/synthetic-synod-shadow.grp diff --git a/mpq/unit/cm/protoss/synthetic-synod.grp b/mpq/unit/cm/p/synthetic-synod.grp similarity index 100% rename from mpq/unit/cm/protoss/synthetic-synod.grp rename to mpq/unit/cm/p/synthetic-synod.grp diff --git a/mpq/unit/cm/protoss/temple-damage.lof b/mpq/unit/cm/p/temple-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/temple-damage.lof rename to mpq/unit/cm/p/temple-damage.lof diff --git a/mpq/unit/cm/protoss/texture-fade.grp b/mpq/unit/cm/p/texture-fade.grp similarity index 100% rename from mpq/unit/cm/protoss/texture-fade.grp rename to mpq/unit/cm/p/texture-fade.grp diff --git a/mpq/unit/cm/protoss/tyranny-overlay.grp b/mpq/unit/cm/p/tyranny-overlay.grp similarity index 100% rename from mpq/unit/cm/protoss/tyranny-overlay.grp rename to mpq/unit/cm/p/tyranny-overlay.grp diff --git a/mpq/unit/cm/protoss/unar-attack.lol b/mpq/unit/cm/p/unar-attack.lol similarity index 100% rename from mpq/unit/cm/protoss/unar-attack.lol rename to mpq/unit/cm/p/unar-attack.lol diff --git a/mpq/unit/cm/protoss/unar-orbital.grp b/mpq/unit/cm/p/unar-orbital.grp similarity index 100% rename from mpq/unit/cm/protoss/unar-orbital.grp rename to mpq/unit/cm/p/unar-orbital.grp diff --git a/mpq/unit/cm/protoss/unar-shadow.grp b/mpq/unit/cm/p/unar-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/unar-shadow.grp rename to mpq/unit/cm/p/unar-shadow.grp diff --git a/mpq/unit/cm/protoss/unar.grp b/mpq/unit/cm/p/unar.grp similarity index 100% rename from mpq/unit/cm/protoss/unar.grp rename to mpq/unit/cm/p/unar.grp diff --git a/mpq/unit/cm/protoss/unitary-union-damage.lof b/mpq/unit/cm/p/unitary-union-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/unitary-union-damage.lof rename to mpq/unit/cm/p/unitary-union-damage.lof diff --git a/mpq/unit/cm/protoss/unitary-union-shadow.grp b/mpq/unit/cm/p/unitary-union-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/unitary-union-shadow.grp rename to mpq/unit/cm/p/unitary-union-shadow.grp diff --git a/mpq/unit/cm/protoss/unitary-union.grp b/mpq/unit/cm/p/unitary-union.grp similarity index 100% rename from mpq/unit/cm/protoss/unitary-union.grp rename to mpq/unit/cm/p/unitary-union.grp diff --git a/mpq/unit/cm/protoss/vagrant-shade.grp b/mpq/unit/cm/p/vagrant-shade.grp similarity index 100% rename from mpq/unit/cm/protoss/vagrant-shade.grp rename to mpq/unit/cm/p/vagrant-shade.grp diff --git a/mpq/unit/cm/protoss/vagrant-shadow.grp b/mpq/unit/cm/p/vagrant-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/vagrant-shadow.grp rename to mpq/unit/cm/p/vagrant-shadow.grp diff --git a/mpq/unit/cm/protoss/vagrant.grp b/mpq/unit/cm/p/vagrant.grp similarity index 100% rename from mpq/unit/cm/protoss/vagrant.grp rename to mpq/unit/cm/p/vagrant.grp diff --git a/mpq/unit/cm/protoss/vassal-death.grp b/mpq/unit/cm/p/vassal-death.grp similarity index 100% rename from mpq/unit/cm/protoss/vassal-death.grp rename to mpq/unit/cm/p/vassal-death.grp diff --git a/mpq/unit/cm/protoss/vassal-engine.grp b/mpq/unit/cm/p/vassal-engine.grp similarity index 100% rename from mpq/unit/cm/protoss/vassal-engine.grp rename to mpq/unit/cm/p/vassal-engine.grp diff --git a/mpq/unit/cm/protoss/vassal.grp b/mpq/unit/cm/p/vassal.grp similarity index 100% rename from mpq/unit/cm/protoss/vassal.grp rename to mpq/unit/cm/p/vassal.grp diff --git a/mpq/unit/cm/protoss/vibrance.grp b/mpq/unit/cm/p/vibrance.grp similarity index 100% rename from mpq/unit/cm/protoss/vibrance.grp rename to mpq/unit/cm/p/vibrance.grp diff --git a/mpq/unit/cm/protoss/warp-gate-damage.lof b/mpq/unit/cm/p/warp-gate-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/warp-gate-damage.lof rename to mpq/unit/cm/p/warp-gate-damage.lof diff --git a/mpq/unit/cm/protoss/warpanchor-underlay.grp b/mpq/unit/cm/p/warpanchor-underlay.grp similarity index 100% rename from mpq/unit/cm/protoss/warpanchor-underlay.grp rename to mpq/unit/cm/p/warpanchor-underlay.grp diff --git a/mpq/unit/cm/protoss/witness-death.grp b/mpq/unit/cm/p/witness-death.grp similarity index 100% rename from mpq/unit/cm/protoss/witness-death.grp rename to mpq/unit/cm/p/witness-death.grp diff --git a/mpq/unit/cm/protoss/xelnaga-temple-damage.lof b/mpq/unit/cm/p/xelnaga-temple-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/xelnaga-temple-damage.lof rename to mpq/unit/cm/p/xelnaga-temple-damage.lof diff --git a/mpq/unit/cm/protoss/xenolith-damage.lof b/mpq/unit/cm/p/xenolith-damage.lof similarity index 100% rename from mpq/unit/cm/protoss/xenolith-damage.lof rename to mpq/unit/cm/p/xenolith-damage.lof diff --git a/mpq/unit/cm/protoss/xenolith-shadow.grp b/mpq/unit/cm/p/xenolith-shadow.grp similarity index 100% rename from mpq/unit/cm/protoss/xenolith-shadow.grp rename to mpq/unit/cm/p/xenolith-shadow.grp diff --git a/mpq/unit/cm/protoss/xenolith.grp b/mpq/unit/cm/p/xenolith.grp similarity index 100% rename from mpq/unit/cm/protoss/xenolith.grp rename to mpq/unit/cm/p/xenolith.grp diff --git a/mpq/unit/cm/protoss/zealot-remains.grp b/mpq/unit/cm/p/zealot-remains.grp similarity index 100% rename from mpq/unit/cm/protoss/zealot-remains.grp rename to mpq/unit/cm/p/zealot-remains.grp diff --git a/mpq/unit/cm/protoss/matrix-damage.lof b/mpq/unit/cm/protoss/matrix-damage.lof deleted file mode 100644 index a4eb5664..00000000 Binary files a/mpq/unit/cm/protoss/matrix-damage.lof and /dev/null differ diff --git a/mpq/unit/cm/terran/aion-attack.lol b/mpq/unit/cm/t/aion-attack.lol similarity index 100% rename from mpq/unit/cm/terran/aion-attack.lol rename to mpq/unit/cm/t/aion-attack.lol diff --git a/mpq/unit/cm/terran/aion.grp b/mpq/unit/cm/t/aion.grp similarity index 100% rename from mpq/unit/cm/terran/aion.grp rename to mpq/unit/cm/t/aion.grp diff --git a/mpq/unit/cm/terran/ambassador-shadow.grp b/mpq/unit/cm/t/ambassador-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/ambassador-shadow.grp rename to mpq/unit/cm/t/ambassador-shadow.grp diff --git a/mpq/unit/cm/terran/ambassador.grp b/mpq/unit/cm/t/ambassador.grp similarity index 100% rename from mpq/unit/cm/terran/ambassador.grp rename to mpq/unit/cm/t/ambassador.grp diff --git a/mpq/unit/cm/terran/amphitheater-damage.lof b/mpq/unit/cm/t/amphitheater-damage.lof similarity index 100% rename from mpq/unit/cm/terran/amphitheater-damage.lof rename to mpq/unit/cm/t/amphitheater-damage.lof diff --git a/mpq/unit/cm/terran/amphitheater-shadow.grp b/mpq/unit/cm/t/amphitheater-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/amphitheater-shadow.grp rename to mpq/unit/cm/t/amphitheater-shadow.grp diff --git a/mpq/unit/cm/terran/amphitheater.grp b/mpq/unit/cm/t/amphitheater.grp similarity index 100% rename from mpq/unit/cm/terran/amphitheater.grp rename to mpq/unit/cm/t/amphitheater.grp diff --git a/mpq/unit/cm/terran/anchor-grounded-shadow.grp b/mpq/unit/cm/t/anchor-grounded-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/anchor-grounded-shadow.grp rename to mpq/unit/cm/t/anchor-grounded-shadow.grp diff --git a/mpq/unit/cm/terran/anchor-grounded.grp b/mpq/unit/cm/t/anchor-grounded.grp similarity index 100% rename from mpq/unit/cm/terran/anchor-grounded.grp rename to mpq/unit/cm/t/anchor-grounded.grp diff --git a/mpq/unit/cm/terran/ancile-death.grp b/mpq/unit/cm/t/ancile-death.grp similarity index 100% rename from mpq/unit/cm/terran/ancile-death.grp rename to mpq/unit/cm/t/ancile-death.grp diff --git a/mpq/unit/cm/terran/ancile-engines.grp b/mpq/unit/cm/t/ancile-engines.grp similarity index 100% rename from mpq/unit/cm/terran/ancile-engines.grp rename to mpq/unit/cm/t/ancile-engines.grp diff --git a/mpq/unit/cm/terran/ancile.grp b/mpq/unit/cm/t/ancile.grp similarity index 100% rename from mpq/unit/cm/terran/ancile.grp rename to mpq/unit/cm/t/ancile.grp diff --git a/mpq/unit/cm/terran/antichthon.grp b/mpq/unit/cm/t/antichthon.grp similarity index 100% rename from mpq/unit/cm/terran/antichthon.grp rename to mpq/unit/cm/t/antichthon.grp diff --git a/mpq/unit/cm/terran/anticthon-birth.grp b/mpq/unit/cm/t/anticthon-birth.grp similarity index 100% rename from mpq/unit/cm/terran/anticthon-birth.grp rename to mpq/unit/cm/t/anticthon-birth.grp diff --git a/mpq/unit/cm/terran/anticthon-shadow.grp b/mpq/unit/cm/t/anticthon-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/anticthon-shadow.grp rename to mpq/unit/cm/t/anticthon-shadow.grp diff --git a/mpq/unit/cm/terran/anticthon.grp b/mpq/unit/cm/t/anticthon.grp similarity index 100% rename from mpq/unit/cm/terran/anticthon.grp rename to mpq/unit/cm/t/anticthon.grp diff --git a/mpq/unit/cm/terran/apostle-death.grp b/mpq/unit/cm/t/apostle-death.grp similarity index 100% rename from mpq/unit/cm/terran/apostle-death.grp rename to mpq/unit/cm/t/apostle-death.grp diff --git a/mpq/unit/cm/t/apostle-shadow.grp b/mpq/unit/cm/t/apostle-shadow.grp new file mode 100644 index 00000000..8de02149 Binary files /dev/null and b/mpq/unit/cm/t/apostle-shadow.grp differ diff --git a/mpq/unit/cm/t/apostle.grp b/mpq/unit/cm/t/apostle.grp new file mode 100644 index 00000000..3ac4276f Binary files /dev/null and b/mpq/unit/cm/t/apostle.grp differ diff --git a/mpq/unit/cm/terran/apothecary-damage.lof b/mpq/unit/cm/t/apothecary-damage.lof similarity index 100% rename from mpq/unit/cm/terran/apothecary-damage.lof rename to mpq/unit/cm/t/apothecary-damage.lof diff --git a/mpq/unit/cm/terran/apothecary-shadow.grp b/mpq/unit/cm/t/apothecary-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/apothecary-shadow.grp rename to mpq/unit/cm/t/apothecary-shadow.grp diff --git a/mpq/unit/cm/terran/apothecary.grp b/mpq/unit/cm/t/apothecary.grp similarity index 100% rename from mpq/unit/cm/terran/apothecary.grp rename to mpq/unit/cm/t/apothecary.grp diff --git a/mpq/unit/cm/terran/aspirant-criticality-effect.grp b/mpq/unit/cm/t/aspirant-criticality-effect.grp similarity index 100% rename from mpq/unit/cm/terran/aspirant-criticality-effect.grp rename to mpq/unit/cm/t/aspirant-criticality-effect.grp diff --git a/mpq/unit/cm/terran/aspirant-death.grp b/mpq/unit/cm/t/aspirant-death.grp similarity index 100% rename from mpq/unit/cm/terran/aspirant-death.grp rename to mpq/unit/cm/t/aspirant-death.grp diff --git a/mpq/unit/cm/terran/aspirant-shad.grp b/mpq/unit/cm/t/aspirant-shad.grp similarity index 100% rename from mpq/unit/cm/terran/aspirant-shad.grp rename to mpq/unit/cm/t/aspirant-shad.grp diff --git a/mpq/unit/cm/terran/autocrat-controlled-opposition.grp b/mpq/unit/cm/t/autocrat-controlled-opposition.grp similarity index 100% rename from mpq/unit/cm/terran/autocrat-controlled-opposition.grp rename to mpq/unit/cm/t/autocrat-controlled-opposition.grp diff --git a/mpq/unit/cm/t/autocrat-shadow.grp b/mpq/unit/cm/t/autocrat-shadow.grp new file mode 100644 index 00000000..3b9b7f4e Binary files /dev/null and b/mpq/unit/cm/t/autocrat-shadow.grp differ diff --git a/mpq/unit/cm/t/autocrat.grp b/mpq/unit/cm/t/autocrat.grp new file mode 100644 index 00000000..f54503b7 Binary files /dev/null and b/mpq/unit/cm/t/autocrat.grp differ diff --git a/mpq/unit/cm/terran/azazel-engine.grp b/mpq/unit/cm/t/azazel-engine.grp similarity index 100% rename from mpq/unit/cm/terran/azazel-engine.grp rename to mpq/unit/cm/t/azazel-engine.grp diff --git a/mpq/unit/cm/terran/azazel.grp b/mpq/unit/cm/t/azazel.grp similarity index 100% rename from mpq/unit/cm/terran/azazel.grp rename to mpq/unit/cm/t/azazel.grp diff --git a/mpq/unit/cm/terran/biotic-bastion-damage.lof b/mpq/unit/cm/t/biotic-bastion-damage.lof similarity index 100% rename from mpq/unit/cm/terran/biotic-bastion-damage.lof rename to mpq/unit/cm/t/biotic-bastion-damage.lof diff --git a/mpq/unit/cm/terran/biotic-bastion-shadow.grp b/mpq/unit/cm/t/biotic-bastion-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/biotic-bastion-shadow.grp rename to mpq/unit/cm/t/biotic-bastion-shadow.grp diff --git a/mpq/unit/cm/terran/biotic-bastion.grp b/mpq/unit/cm/t/biotic-bastion.grp similarity index 100% rename from mpq/unit/cm/terran/biotic-bastion.grp rename to mpq/unit/cm/t/biotic-bastion.grp diff --git a/mpq/unit/cm/terran/blackjack-damaged.grp b/mpq/unit/cm/t/blackjack-damaged.grp similarity index 100% rename from mpq/unit/cm/terran/blackjack-damaged.grp rename to mpq/unit/cm/t/blackjack-damaged.grp diff --git a/mpq/unit/cm/terran/blackjack-remains.grp b/mpq/unit/cm/t/blackjack-remains.grp similarity index 100% rename from mpq/unit/cm/terran/blackjack-remains.grp rename to mpq/unit/cm/t/blackjack-remains.grp diff --git a/mpq/unit/cm/terran/blackjack-shadow.grp b/mpq/unit/cm/t/blackjack-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/blackjack-shadow.grp rename to mpq/unit/cm/t/blackjack-shadow.grp diff --git a/mpq/unit/cm/terran/blackjack.grp b/mpq/unit/cm/t/blackjack.grp similarity index 100% rename from mpq/unit/cm/terran/blackjack.grp rename to mpq/unit/cm/t/blackjack.grp diff --git a/mpq/unit/cm/terran/bunker.lod b/mpq/unit/cm/t/bunker.lod similarity index 100% rename from mpq/unit/cm/terran/bunker.lod rename to mpq/unit/cm/t/bunker.lod diff --git a/mpq/unit/cm/terran/bunker.lou b/mpq/unit/cm/t/bunker.lou similarity index 100% rename from mpq/unit/cm/terran/bunker.lou rename to mpq/unit/cm/t/bunker.lou diff --git a/mpq/unit/cm/terran/burst-lasers-hit-cyan.grp b/mpq/unit/cm/t/burst-lasers-hit-cyan.grp similarity index 100% rename from mpq/unit/cm/terran/burst-lasers-hit-cyan.grp rename to mpq/unit/cm/t/burst-lasers-hit-cyan.grp diff --git a/mpq/unit/cm/terran/burst-lasers-hit-green.grp b/mpq/unit/cm/t/burst-lasers-hit-green.grp similarity index 100% rename from mpq/unit/cm/terran/burst-lasers-hit-green.grp rename to mpq/unit/cm/t/burst-lasers-hit-green.grp diff --git a/mpq/unit/cm/terran/burst-lasers-red-small.grp b/mpq/unit/cm/t/burst-lasers-red-small.grp similarity index 100% rename from mpq/unit/cm/terran/burst-lasers-red-small.grp rename to mpq/unit/cm/t/burst-lasers-red-small.grp diff --git a/mpq/unit/cm/terran/burst-lasers-red.grp b/mpq/unit/cm/t/burst-lasers-red.grp similarity index 100% rename from mpq/unit/cm/terran/burst-lasers-red.grp rename to mpq/unit/cm/t/burst-lasers-red.grp diff --git a/mpq/unit/cm/terran/captaincy-damage.lof b/mpq/unit/cm/t/captaincy-damage.lof similarity index 100% rename from mpq/unit/cm/terran/captaincy-damage.lof rename to mpq/unit/cm/t/captaincy-damage.lof diff --git a/mpq/unit/cm/terran/captaincy-shadow.grp b/mpq/unit/cm/t/captaincy-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/captaincy-shadow.grp rename to mpq/unit/cm/t/captaincy-shadow.grp diff --git a/mpq/unit/cm/terran/captaincy.grp b/mpq/unit/cm/t/captaincy.grp similarity index 100% rename from mpq/unit/cm/terran/captaincy.grp rename to mpq/unit/cm/t/captaincy.grp diff --git a/mpq/unit/cm/terran/cataphract-attack.lol b/mpq/unit/cm/t/cataphract-attack.lol similarity index 100% rename from mpq/unit/cm/terran/cataphract-attack.lol rename to mpq/unit/cm/t/cataphract-attack.lol diff --git a/mpq/unit/cm/terran/cataphract-shadow.grp b/mpq/unit/cm/t/cataphract-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/cataphract-shadow.grp rename to mpq/unit/cm/t/cataphract-shadow.grp diff --git a/mpq/unit/cm/terran/cataphract.grp b/mpq/unit/cm/t/cataphract.grp similarity index 100% rename from mpq/unit/cm/terran/cataphract.grp rename to mpq/unit/cm/t/cataphract.grp diff --git a/mpq/unit/cm/terran/centaur-attackmissile.lol b/mpq/unit/cm/t/centaur-attackmissile.lol similarity index 100% rename from mpq/unit/cm/terran/centaur-attackmissile.lol rename to mpq/unit/cm/t/centaur-attackmissile.lol diff --git a/mpq/unit/cm/terran/centaur-engine.grp b/mpq/unit/cm/t/centaur-engine.grp similarity index 100% rename from mpq/unit/cm/terran/centaur-engine.grp rename to mpq/unit/cm/t/centaur-engine.grp diff --git a/mpq/unit/cm/terran/centaur-missile.grp b/mpq/unit/cm/t/centaur-missile.grp similarity index 100% rename from mpq/unit/cm/terran/centaur-missile.grp rename to mpq/unit/cm/t/centaur-missile.grp diff --git a/mpq/unit/cm/terran/centaur.grp b/mpq/unit/cm/t/centaur.grp similarity index 100% rename from mpq/unit/cm/terran/centaur.grp rename to mpq/unit/cm/t/centaur.grp diff --git a/mpq/unit/cm/terran/cestus-damage.lof b/mpq/unit/cm/t/cestus-damage.lof similarity index 100% rename from mpq/unit/cm/terran/cestus-damage.lof rename to mpq/unit/cm/t/cestus-damage.lof diff --git a/mpq/unit/cm/terran/cestus-landing.lou b/mpq/unit/cm/t/cestus-landing.lou similarity index 100% rename from mpq/unit/cm/terran/cestus-landing.lou rename to mpq/unit/cm/t/cestus-landing.lou diff --git a/mpq/unit/cm/terran/cestus-liftoff.lod b/mpq/unit/cm/t/cestus-liftoff.lod similarity index 100% rename from mpq/unit/cm/terran/cestus-liftoff.lod rename to mpq/unit/cm/t/cestus-liftoff.lod diff --git a/mpq/unit/cm/terran/cestus-shadow.grp b/mpq/unit/cm/t/cestus-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/cestus-shadow.grp rename to mpq/unit/cm/t/cestus-shadow.grp diff --git a/mpq/unit/cm/terran/cestus.grp b/mpq/unit/cm/t/cestus.grp similarity index 100% rename from mpq/unit/cm/terran/cestus.grp rename to mpq/unit/cm/t/cestus.grp diff --git a/mpq/unit/cm/terran/claymore-attack.lol b/mpq/unit/cm/t/claymore-attack.lol similarity index 100% rename from mpq/unit/cm/terran/claymore-attack.lol rename to mpq/unit/cm/t/claymore-attack.lol diff --git a/mpq/unit/cm/terran/claymore.grp b/mpq/unit/cm/t/claymore.grp similarity index 100% rename from mpq/unit/cm/terran/claymore.grp rename to mpq/unit/cm/t/claymore.grp diff --git a/mpq/unit/cm/terran/controlled-demolition.grp b/mpq/unit/cm/t/controlled-demolition.grp similarity index 100% rename from mpq/unit/cm/terran/controlled-demolition.grp rename to mpq/unit/cm/t/controlled-demolition.grp diff --git a/mpq/unit/cm/terran/crashed-minotaur-damage.lof b/mpq/unit/cm/t/crashed-minotaur-damage.lof similarity index 100% rename from mpq/unit/cm/terran/crashed-minotaur-damage.lof rename to mpq/unit/cm/t/crashed-minotaur-damage.lof diff --git a/mpq/unit/cm/terran/cuirass-shadow.grp b/mpq/unit/cm/t/cuirass-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/cuirass-shadow.grp rename to mpq/unit/cm/t/cuirass-shadow.grp diff --git a/mpq/unit/cm/terran/cuirass-stonewall-protocol-overlay.grp b/mpq/unit/cm/t/cuirass-stonewall-protocol-overlay.grp similarity index 100% rename from mpq/unit/cm/terran/cuirass-stonewall-protocol-overlay.grp rename to mpq/unit/cm/t/cuirass-stonewall-protocol-overlay.grp diff --git a/mpq/unit/cm/terran/cuirass.grp b/mpq/unit/cm/t/cuirass.grp similarity index 100% rename from mpq/unit/cm/terran/cuirass.grp rename to mpq/unit/cm/t/cuirass.grp diff --git a/mpq/unit/cm/terran/cyclops-fragmentary-shells.grp b/mpq/unit/cm/t/cyclops-fragmentary-shells.grp similarity index 100% rename from mpq/unit/cm/terran/cyclops-fragmentary-shells.grp rename to mpq/unit/cm/t/cyclops-fragmentary-shells.grp diff --git a/mpq/unit/cm/terran/cyclops-remains.grp b/mpq/unit/cm/t/cyclops-remains.grp similarity index 100% rename from mpq/unit/cm/terran/cyclops-remains.grp rename to mpq/unit/cm/t/cyclops-remains.grp diff --git a/mpq/unit/cm/terran/cyclops-shadow.grp b/mpq/unit/cm/t/cyclops-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/cyclops-shadow.grp rename to mpq/unit/cm/t/cyclops-shadow.grp diff --git a/mpq/unit/cm/terran/cyclops-weaponhit.grp b/mpq/unit/cm/t/cyclops-weaponhit.grp similarity index 100% rename from mpq/unit/cm/terran/cyclops-weaponhit.grp rename to mpq/unit/cm/t/cyclops-weaponhit.grp diff --git a/mpq/unit/cm/terran/cyclops.grp b/mpq/unit/cm/t/cyclops.grp similarity index 100% rename from mpq/unit/cm/terran/cyclops.grp rename to mpq/unit/cm/t/cyclops.grp diff --git a/mpq/unit/cm/terran/cyprian-attack.lol b/mpq/unit/cm/t/cyprian-attack.lol similarity index 100% rename from mpq/unit/cm/terran/cyprian-attack.lol rename to mpq/unit/cm/t/cyprian-attack.lol diff --git a/mpq/unit/cm/terran/cyprian-rail.grp b/mpq/unit/cm/t/cyprian-rail.grp similarity index 100% rename from mpq/unit/cm/terran/cyprian-rail.grp rename to mpq/unit/cm/t/cyprian-rail.grp diff --git a/mpq/unit/cm/terran/cyprian-remains.grp b/mpq/unit/cm/t/cyprian-remains.grp similarity index 100% rename from mpq/unit/cm/terran/cyprian-remains.grp rename to mpq/unit/cm/t/cyprian-remains.grp diff --git a/mpq/unit/cm/terran/cyprian-shadow.grp b/mpq/unit/cm/t/cyprian-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/cyprian-shadow.grp rename to mpq/unit/cm/t/cyprian-shadow.grp diff --git a/mpq/unit/cm/terran/cyprian-weaponhit.grp b/mpq/unit/cm/t/cyprian-weaponhit.grp similarity index 100% rename from mpq/unit/cm/terran/cyprian-weaponhit.grp rename to mpq/unit/cm/t/cyprian-weaponhit.grp diff --git a/mpq/unit/cm/terran/cyprian.grp b/mpq/unit/cm/t/cyprian.grp similarity index 100% rename from mpq/unit/cm/terran/cyprian.grp rename to mpq/unit/cm/t/cyprian.grp diff --git a/mpq/unit/cm/terran/decaying-overlay.grp b/mpq/unit/cm/t/decaying-overlay.grp similarity index 100% rename from mpq/unit/cm/terran/decaying-overlay.grp rename to mpq/unit/cm/t/decaying-overlay.grp diff --git a/mpq/unit/cm/terran/diadem-attack.grp b/mpq/unit/cm/t/diadem-attack.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-attack.grp rename to mpq/unit/cm/t/diadem-attack.grp diff --git a/mpq/unit/cm/terran/diadem-attack.lol b/mpq/unit/cm/t/diadem-attack.lol similarity index 100% rename from mpq/unit/cm/terran/diadem-attack.lol rename to mpq/unit/cm/t/diadem-attack.lol diff --git a/mpq/unit/cm/terran/diadem-attackA1.grp b/mpq/unit/cm/t/diadem-attackA1.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-attackA1.grp rename to mpq/unit/cm/t/diadem-attackA1.grp diff --git a/mpq/unit/cm/terran/diadem-attackA2.grp b/mpq/unit/cm/t/diadem-attackA2.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-attackA2.grp rename to mpq/unit/cm/t/diadem-attackA2.grp diff --git a/mpq/unit/cm/terran/diadem-attackA3.grp b/mpq/unit/cm/t/diadem-attackA3.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-attackA3.grp rename to mpq/unit/cm/t/diadem-attackA3.grp diff --git a/mpq/unit/cm/terran/diadem-attackA4.grp b/mpq/unit/cm/t/diadem-attackA4.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-attackA4.grp rename to mpq/unit/cm/t/diadem-attackA4.grp diff --git a/mpq/unit/cm/terran/diadem-attackB.grp b/mpq/unit/cm/t/diadem-attackB.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-attackB.grp rename to mpq/unit/cm/t/diadem-attackB.grp diff --git a/mpq/unit/cm/terran/diadem-base.grp b/mpq/unit/cm/t/diadem-base.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-base.grp rename to mpq/unit/cm/t/diadem-base.grp diff --git a/mpq/unit/cm/terran/diadem-beacon.grp b/mpq/unit/cm/t/diadem-beacon.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-beacon.grp rename to mpq/unit/cm/t/diadem-beacon.grp diff --git a/mpq/unit/cm/terran/diadem-damage.lof b/mpq/unit/cm/t/diadem-damage.lof similarity index 100% rename from mpq/unit/cm/terran/diadem-damage.lof rename to mpq/unit/cm/t/diadem-damage.lof diff --git a/mpq/unit/cm/terran/diadem-dustoff.lod b/mpq/unit/cm/t/diadem-dustoff.lod similarity index 100% rename from mpq/unit/cm/terran/diadem-dustoff.lod rename to mpq/unit/cm/t/diadem-dustoff.lod diff --git a/mpq/unit/cm/terran/diadem-duston.lou b/mpq/unit/cm/t/diadem-duston.lou similarity index 100% rename from mpq/unit/cm/terran/diadem-duston.lou rename to mpq/unit/cm/t/diadem-duston.lou diff --git a/mpq/unit/cm/terran/diadem-ion-field.grp b/mpq/unit/cm/t/diadem-ion-field.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-ion-field.grp rename to mpq/unit/cm/t/diadem-ion-field.grp diff --git a/mpq/unit/cm/terran/diadem-mouseresponse.grp b/mpq/unit/cm/t/diadem-mouseresponse.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-mouseresponse.grp rename to mpq/unit/cm/t/diadem-mouseresponse.grp diff --git a/mpq/unit/cm/terran/diadem-overlay.grp b/mpq/unit/cm/t/diadem-overlay.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-overlay.grp rename to mpq/unit/cm/t/diadem-overlay.grp diff --git a/mpq/unit/cm/terran/diadem-overlay.lol b/mpq/unit/cm/t/diadem-overlay.lol similarity index 100% rename from mpq/unit/cm/terran/diadem-overlay.lol rename to mpq/unit/cm/t/diadem-overlay.lol diff --git a/mpq/unit/cm/terran/diadem-projectile.grp b/mpq/unit/cm/t/diadem-projectile.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-projectile.grp rename to mpq/unit/cm/t/diadem-projectile.grp diff --git a/mpq/unit/cm/terran/diadem-shadow.grp b/mpq/unit/cm/t/diadem-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-shadow.grp rename to mpq/unit/cm/t/diadem-shadow.grp diff --git a/mpq/unit/cm/terran/diadem-turret.grp b/mpq/unit/cm/t/diadem-turret.grp similarity index 100% rename from mpq/unit/cm/terran/diadem-turret.grp rename to mpq/unit/cm/t/diadem-turret.grp diff --git a/mpq/unit/cm/terran/dilettante-remains.grp b/mpq/unit/cm/t/dilettante-remains.grp similarity index 100% rename from mpq/unit/cm/terran/dilettante-remains.grp rename to mpq/unit/cm/t/dilettante-remains.grp diff --git a/mpq/unit/cm/terran/dilettante-shadow.grp b/mpq/unit/cm/t/dilettante-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/dilettante-shadow.grp rename to mpq/unit/cm/t/dilettante-shadow.grp diff --git a/mpq/unit/cm/terran/dilettante.grp b/mpq/unit/cm/t/dilettante.grp similarity index 100% rename from mpq/unit/cm/terran/dilettante.grp rename to mpq/unit/cm/t/dilettante.grp diff --git a/mpq/unit/cm/terran/dmatrix-back-yellow-large.grp b/mpq/unit/cm/t/dmatrix-back-yellow-large.grp similarity index 100% rename from mpq/unit/cm/terran/dmatrix-back-yellow-large.grp rename to mpq/unit/cm/t/dmatrix-back-yellow-large.grp diff --git a/mpq/unit/cm/terran/dmatrix-back-yellow-medium.grp b/mpq/unit/cm/t/dmatrix-back-yellow-medium.grp similarity index 100% rename from mpq/unit/cm/terran/dmatrix-back-yellow-medium.grp rename to mpq/unit/cm/t/dmatrix-back-yellow-medium.grp diff --git a/mpq/unit/cm/terran/dmatrix-back-yellow-small.grp b/mpq/unit/cm/t/dmatrix-back-yellow-small.grp similarity index 100% rename from mpq/unit/cm/terran/dmatrix-back-yellow-small.grp rename to mpq/unit/cm/t/dmatrix-back-yellow-small.grp diff --git a/mpq/unit/cm/terran/dmatrix-front-yellow-large.grp b/mpq/unit/cm/t/dmatrix-front-yellow-large.grp similarity index 100% rename from mpq/unit/cm/terran/dmatrix-front-yellow-large.grp rename to mpq/unit/cm/t/dmatrix-front-yellow-large.grp diff --git a/mpq/unit/cm/terran/dmatrix-front-yellow-medium.grp b/mpq/unit/cm/t/dmatrix-front-yellow-medium.grp similarity index 100% rename from mpq/unit/cm/terran/dmatrix-front-yellow-medium.grp rename to mpq/unit/cm/t/dmatrix-front-yellow-medium.grp diff --git a/mpq/unit/cm/terran/dmatrix-front-yellow-small.grp b/mpq/unit/cm/t/dmatrix-front-yellow-small.grp similarity index 100% rename from mpq/unit/cm/terran/dmatrix-front-yellow-small.grp rename to mpq/unit/cm/t/dmatrix-front-yellow-small.grp diff --git a/mpq/unit/cm/terran/durendal-shadow.grp b/mpq/unit/cm/t/durendal-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/durendal-shadow.grp rename to mpq/unit/cm/t/durendal-shadow.grp diff --git a/mpq/unit/cm/terran/durendal-weaponfire.grp b/mpq/unit/cm/t/durendal-weaponfire.grp similarity index 100% rename from mpq/unit/cm/terran/durendal-weaponfire.grp rename to mpq/unit/cm/t/durendal-weaponfire.grp diff --git a/mpq/unit/cm/terran/durendal.grp b/mpq/unit/cm/t/durendal.grp similarity index 100% rename from mpq/unit/cm/terran/durendal.grp rename to mpq/unit/cm/t/durendal.grp diff --git a/mpq/unit/cm/terran/emergency-detonation.grp b/mpq/unit/cm/t/emergency-detonation.grp similarity index 100% rename from mpq/unit/cm/terran/emergency-detonation.grp rename to mpq/unit/cm/t/emergency-detonation.grp diff --git a/mpq/unit/cm/terran/facade-damage.lof b/mpq/unit/cm/t/facade-damage.lof similarity index 100% rename from mpq/unit/cm/terran/facade-damage.lof rename to mpq/unit/cm/t/facade-damage.lof diff --git a/mpq/unit/cm/terran/facade-shadow.grp b/mpq/unit/cm/t/facade-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/facade-shadow.grp rename to mpq/unit/cm/t/facade-shadow.grp diff --git a/mpq/unit/cm/terran/facade.grp b/mpq/unit/cm/t/facade.grp similarity index 100% rename from mpq/unit/cm/terran/facade.grp rename to mpq/unit/cm/t/facade.grp diff --git a/mpq/unit/cm/terran/future-station-damage.lof b/mpq/unit/cm/t/future-station-damage.lof similarity index 100% rename from mpq/unit/cm/terran/future-station-damage.lof rename to mpq/unit/cm/t/future-station-damage.lof diff --git a/mpq/unit/cm/terran/future-station-shadow.grp b/mpq/unit/cm/t/future-station-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/future-station-shadow.grp rename to mpq/unit/cm/t/future-station-shadow.grp diff --git a/mpq/unit/cm/terran/future-station.grp b/mpq/unit/cm/t/future-station.grp similarity index 100% rename from mpq/unit/cm/terran/future-station.grp rename to mpq/unit/cm/t/future-station.grp diff --git a/mpq/unit/cm/terran/goliath-attack.lol b/mpq/unit/cm/t/goliath-attack.lol similarity index 100% rename from mpq/unit/cm/terran/goliath-attack.lol rename to mpq/unit/cm/t/goliath-attack.lol diff --git a/mpq/unit/cm/terran/goliath-remains.grp b/mpq/unit/cm/t/goliath-remains.grp similarity index 100% rename from mpq/unit/cm/terran/goliath-remains.grp rename to mpq/unit/cm/t/goliath-remains.grp diff --git a/mpq/unit/cm/terran/gorgon-engine.grp b/mpq/unit/cm/t/gorgon-engine.grp similarity index 100% rename from mpq/unit/cm/terran/gorgon-engine.grp rename to mpq/unit/cm/t/gorgon-engine.grp diff --git a/mpq/unit/cm/terran/gorgon-laser.grp b/mpq/unit/cm/t/gorgon-laser.grp similarity index 100% rename from mpq/unit/cm/terran/gorgon-laser.grp rename to mpq/unit/cm/t/gorgon-laser.grp diff --git a/mpq/unit/cm/terran/gorgon-petrification.grp b/mpq/unit/cm/t/gorgon-petrification.grp similarity index 100% rename from mpq/unit/cm/terran/gorgon-petrification.grp rename to mpq/unit/cm/t/gorgon-petrification.grp diff --git a/mpq/unit/cm/terran/gorgon.grp b/mpq/unit/cm/t/gorgon.grp similarity index 100% rename from mpq/unit/cm/terran/gorgon.grp rename to mpq/unit/cm/t/gorgon.grp diff --git a/mpq/unit/cm/terran/guildhall-damage.lof b/mpq/unit/cm/t/guildhall-damage.lof similarity index 100% rename from mpq/unit/cm/terran/guildhall-damage.lof rename to mpq/unit/cm/t/guildhall-damage.lof diff --git a/mpq/unit/cm/terran/guildhall-shadow.grp b/mpq/unit/cm/t/guildhall-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/guildhall-shadow.grp rename to mpq/unit/cm/t/guildhall-shadow.grp diff --git a/mpq/unit/cm/terran/guildhall.grp b/mpq/unit/cm/t/guildhall.grp similarity index 100% rename from mpq/unit/cm/terran/guildhall.grp rename to mpq/unit/cm/t/guildhall.grp diff --git a/mpq/unit/cm/terran/hadron-damage.lof b/mpq/unit/cm/t/hadron-damage.lof similarity index 100% rename from mpq/unit/cm/terran/hadron-damage.lof rename to mpq/unit/cm/t/hadron-damage.lof diff --git a/mpq/unit/cm/terran/hadron-shadow.grp b/mpq/unit/cm/t/hadron-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/hadron-shadow.grp rename to mpq/unit/cm/t/hadron-shadow.grp diff --git a/mpq/unit/cm/terran/hadron.grp b/mpq/unit/cm/t/hadron.grp similarity index 100% rename from mpq/unit/cm/terran/hadron.grp rename to mpq/unit/cm/t/hadron.grp diff --git a/mpq/unit/cm/terran/harakan-remnants.grp b/mpq/unit/cm/t/harakan-remnants.grp similarity index 100% rename from mpq/unit/cm/terran/harakan-remnants.grp rename to mpq/unit/cm/t/harakan-remnants.grp diff --git a/mpq/unit/cm/terran/heavy-missile-explosion-green.grp b/mpq/unit/cm/t/heavy-missile-explosion-green.grp similarity index 100% rename from mpq/unit/cm/terran/heavy-missile-explosion-green.grp rename to mpq/unit/cm/t/heavy-missile-explosion-green.grp diff --git a/mpq/unit/cm/terran/heavy-missile-explosion-orange.grp b/mpq/unit/cm/t/heavy-missile-explosion-orange.grp similarity index 100% rename from mpq/unit/cm/terran/heavy-missile-explosion-orange.grp rename to mpq/unit/cm/t/heavy-missile-explosion-orange.grp diff --git a/mpq/unit/cm/terran/heavy-missile.grp b/mpq/unit/cm/t/heavy-missile.grp similarity index 100% rename from mpq/unit/cm/terran/heavy-missile.grp rename to mpq/unit/cm/t/heavy-missile.grp diff --git a/mpq/unit/cm/terran/heir-attack.lol b/mpq/unit/cm/t/heir-attack.lol similarity index 100% rename from mpq/unit/cm/terran/heir-attack.lol rename to mpq/unit/cm/t/heir-attack.lol diff --git a/mpq/unit/cm/terran/heir-base.grp b/mpq/unit/cm/t/heir-base.grp similarity index 100% rename from mpq/unit/cm/terran/heir-base.grp rename to mpq/unit/cm/t/heir-base.grp diff --git a/mpq/unit/cm/terran/heir-remains.grp b/mpq/unit/cm/t/heir-remains.grp similarity index 100% rename from mpq/unit/cm/terran/heir-remains.grp rename to mpq/unit/cm/t/heir-remains.grp diff --git a/mpq/unit/cm/terran/heir-shadow.grp b/mpq/unit/cm/t/heir-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/heir-shadow.grp rename to mpq/unit/cm/t/heir-shadow.grp diff --git a/mpq/unit/cm/terran/heir-turret.grp b/mpq/unit/cm/t/heir-turret.grp similarity index 100% rename from mpq/unit/cm/terran/heir-turret.grp rename to mpq/unit/cm/t/heir-turret.grp diff --git a/mpq/unit/cm/terran/helix-bolt-blue.grp b/mpq/unit/cm/t/helix-bolt-blue.grp similarity index 100% rename from mpq/unit/cm/terran/helix-bolt-blue.grp rename to mpq/unit/cm/t/helix-bolt-blue.grp diff --git a/mpq/unit/cm/terran/helix-bolt.grp b/mpq/unit/cm/t/helix-bolt.grp similarity index 100% rename from mpq/unit/cm/terran/helix-bolt.grp rename to mpq/unit/cm/t/helix-bolt.grp diff --git a/mpq/unit/cm/terran/heracles-shadow.grp b/mpq/unit/cm/t/heracles-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/heracles-shadow.grp rename to mpq/unit/cm/t/heracles-shadow.grp diff --git a/mpq/unit/cm/terran/heracles.grp b/mpq/unit/cm/t/heracles.grp similarity index 100% rename from mpq/unit/cm/terran/heracles.grp rename to mpq/unit/cm/t/heracles.grp diff --git a/mpq/unit/cm/terran/hippogriff-attack1.lol b/mpq/unit/cm/t/hippogriff-attack1.lol similarity index 100% rename from mpq/unit/cm/terran/hippogriff-attack1.lol rename to mpq/unit/cm/t/hippogriff-attack1.lol diff --git a/mpq/unit/cm/terran/hippogriff-attack2.lol b/mpq/unit/cm/t/hippogriff-attack2.lol similarity index 100% rename from mpq/unit/cm/terran/hippogriff-attack2.lol rename to mpq/unit/cm/t/hippogriff-attack2.lol diff --git a/mpq/unit/cm/terran/hippogriff-engines.grp b/mpq/unit/cm/t/hippogriff-engines.grp similarity index 100% rename from mpq/unit/cm/terran/hippogriff-engines.grp rename to mpq/unit/cm/t/hippogriff-engines.grp diff --git a/mpq/unit/cm/terran/hippogriff.grp b/mpq/unit/cm/t/hippogriff.grp similarity index 100% rename from mpq/unit/cm/terran/hippogriff.grp rename to mpq/unit/cm/t/hippogriff.grp diff --git a/mpq/unit/cm/terran/horseman.grp b/mpq/unit/cm/t/horseman.grp similarity index 100% rename from mpq/unit/cm/terran/horseman.grp rename to mpq/unit/cm/t/horseman.grp diff --git a/mpq/unit/cm/terran/hypnagogue-remains.grp b/mpq/unit/cm/t/hypnagogue-remains.grp similarity index 100% rename from mpq/unit/cm/terran/hypnagogue-remains.grp rename to mpq/unit/cm/t/hypnagogue-remains.grp diff --git a/mpq/unit/cm/terran/hypnagogue-shadow.grp b/mpq/unit/cm/t/hypnagogue-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/hypnagogue-shadow.grp rename to mpq/unit/cm/t/hypnagogue-shadow.grp diff --git a/mpq/unit/cm/terran/hypnagogue.grp b/mpq/unit/cm/t/hypnagogue.grp similarity index 100% rename from mpq/unit/cm/terran/hypnagogue.grp rename to mpq/unit/cm/t/hypnagogue.grp diff --git a/mpq/unit/cm/terran/iron-council-damage.lof b/mpq/unit/cm/t/iron-council-damage.lof similarity index 100% rename from mpq/unit/cm/terran/iron-council-damage.lof rename to mpq/unit/cm/t/iron-council-damage.lof diff --git a/mpq/unit/cm/terran/iron-council-shadow.grp b/mpq/unit/cm/t/iron-council-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/iron-council-shadow.grp rename to mpq/unit/cm/t/iron-council-shadow.grp diff --git a/mpq/unit/cm/terran/iron-council.grp b/mpq/unit/cm/t/iron-council.grp similarity index 100% rename from mpq/unit/cm/terran/iron-council.grp rename to mpq/unit/cm/t/iron-council.grp diff --git a/mpq/unit/cm/terran/ironfoundry-damage.lof b/mpq/unit/cm/t/ironfoundry-damage.lof similarity index 100% rename from mpq/unit/cm/terran/ironfoundry-damage.lof rename to mpq/unit/cm/t/ironfoundry-damage.lof diff --git a/mpq/unit/cm/terran/ironfoundry-shadow.grp b/mpq/unit/cm/t/ironfoundry-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/ironfoundry-shadow.grp rename to mpq/unit/cm/t/ironfoundry-shadow.grp diff --git a/mpq/unit/cm/terran/ironfoundry.grp b/mpq/unit/cm/t/ironfoundry.grp similarity index 100% rename from mpq/unit/cm/terran/ironfoundry.grp rename to mpq/unit/cm/t/ironfoundry.grp diff --git a/mpq/unit/cm/terran/lazarus-proc-L.grp b/mpq/unit/cm/t/lazarus-proc-L.grp similarity index 100% rename from mpq/unit/cm/terran/lazarus-proc-L.grp rename to mpq/unit/cm/t/lazarus-proc-L.grp diff --git a/mpq/unit/cm/terran/lazarus-proc-M.grp b/mpq/unit/cm/t/lazarus-proc-M.grp similarity index 100% rename from mpq/unit/cm/terran/lazarus-proc-M.grp rename to mpq/unit/cm/t/lazarus-proc-M.grp diff --git a/mpq/unit/cm/terran/lazarus-proc-S.grp b/mpq/unit/cm/t/lazarus-proc-S.grp similarity index 100% rename from mpq/unit/cm/terran/lazarus-proc-S.grp rename to mpq/unit/cm/t/lazarus-proc-S.grp diff --git a/mpq/unit/cm/terran/lazarus-proc-XL.grp b/mpq/unit/cm/t/lazarus-proc-XL.grp similarity index 100% rename from mpq/unit/cm/terran/lazarus-proc-XL.grp rename to mpq/unit/cm/t/lazarus-proc-XL.grp diff --git a/mpq/unit/cm/terran/lodestone-attack.loa b/mpq/unit/cm/t/lodestone-attack.loa similarity index 100% rename from mpq/unit/cm/terran/lodestone-attack.loa rename to mpq/unit/cm/t/lodestone-attack.loa diff --git a/mpq/unit/cm/terran/lodestone-shadow.grp b/mpq/unit/cm/t/lodestone-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/lodestone-shadow.grp rename to mpq/unit/cm/t/lodestone-shadow.grp diff --git a/mpq/unit/cm/terran/lodestone.grp b/mpq/unit/cm/t/lodestone.grp similarity index 100% rename from mpq/unit/cm/terran/lodestone.grp rename to mpq/unit/cm/t/lodestone.grp diff --git a/mpq/unit/cm/terran/luminary.grp b/mpq/unit/cm/t/luminary.grp similarity index 100% rename from mpq/unit/cm/terran/luminary.grp rename to mpq/unit/cm/t/luminary.grp diff --git a/mpq/unit/cm/terran/madcap-shadow.grp b/mpq/unit/cm/t/madcap-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/madcap-shadow.grp rename to mpq/unit/cm/t/madcap-shadow.grp diff --git a/mpq/unit/cm/terran/madcap.grp b/mpq/unit/cm/t/madcap.grp similarity index 100% rename from mpq/unit/cm/terran/madcap.grp rename to mpq/unit/cm/t/madcap.grp diff --git a/mpq/unit/cm/terran/madrigal-base.grp b/mpq/unit/cm/t/madrigal-base.grp similarity index 100% rename from mpq/unit/cm/terran/madrigal-base.grp rename to mpq/unit/cm/t/madrigal-base.grp diff --git a/mpq/unit/cm/terran/madrigal-death.grp b/mpq/unit/cm/t/madrigal-death.grp similarity index 100% rename from mpq/unit/cm/terran/madrigal-death.grp rename to mpq/unit/cm/t/madrigal-death.grp diff --git a/mpq/unit/cm/terran/madrigal-dirge-proc.grp b/mpq/unit/cm/t/madrigal-dirge-proc.grp similarity index 100% rename from mpq/unit/cm/terran/madrigal-dirge-proc.grp rename to mpq/unit/cm/t/madrigal-dirge-proc.grp diff --git a/mpq/unit/cm/terran/madrigal-furia-remains.grp b/mpq/unit/cm/t/madrigal-furia-remains.grp similarity index 100% rename from mpq/unit/cm/terran/madrigal-furia-remains.grp rename to mpq/unit/cm/t/madrigal-furia-remains.grp diff --git a/mpq/unit/cm/terran/madrigal-missile.grp b/mpq/unit/cm/t/madrigal-missile.grp similarity index 100% rename from mpq/unit/cm/terran/madrigal-missile.grp rename to mpq/unit/cm/t/madrigal-missile.grp diff --git a/mpq/unit/cm/terran/madrigal-shadow.grp b/mpq/unit/cm/t/madrigal-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/madrigal-shadow.grp rename to mpq/unit/cm/t/madrigal-shadow.grp diff --git a/mpq/unit/cm/terran/madrigal-turret.grp b/mpq/unit/cm/t/madrigal-turret.grp similarity index 100% rename from mpq/unit/cm/terran/madrigal-turret.grp rename to mpq/unit/cm/t/madrigal-turret.grp diff --git a/mpq/unit/cm/terran/madrigal-turret.lol b/mpq/unit/cm/t/madrigal-turret.lol similarity index 100% rename from mpq/unit/cm/terran/madrigal-turret.lol rename to mpq/unit/cm/t/madrigal-turret.lol diff --git a/mpq/unit/cm/terran/magnetar-attack.lol b/mpq/unit/cm/t/magnetar-attack.lol similarity index 100% rename from mpq/unit/cm/terran/magnetar-attack.lol rename to mpq/unit/cm/t/magnetar-attack.lol diff --git a/mpq/unit/cm/terran/magnetar-engine.grp b/mpq/unit/cm/t/magnetar-engine.grp similarity index 100% rename from mpq/unit/cm/terran/magnetar-engine.grp rename to mpq/unit/cm/t/magnetar-engine.grp diff --git a/mpq/unit/cm/terran/magnetar-law-of-attraction-1.grp b/mpq/unit/cm/t/magnetar-law-of-attraction-1.grp similarity index 100% rename from mpq/unit/cm/terran/magnetar-law-of-attraction-1.grp rename to mpq/unit/cm/t/magnetar-law-of-attraction-1.grp diff --git a/mpq/unit/cm/terran/magnetar-law-of-attraction-2.grp b/mpq/unit/cm/t/magnetar-law-of-attraction-2.grp similarity index 100% rename from mpq/unit/cm/terran/magnetar-law-of-attraction-2.grp rename to mpq/unit/cm/t/magnetar-law-of-attraction-2.grp diff --git a/mpq/unit/cm/terran/magnetar-law-of-attraction-3.grp b/mpq/unit/cm/t/magnetar-law-of-attraction-3.grp similarity index 100% rename from mpq/unit/cm/terran/magnetar-law-of-attraction-3.grp rename to mpq/unit/cm/t/magnetar-law-of-attraction-3.grp diff --git a/mpq/unit/cm/terran/magnetar-yamato.lol b/mpq/unit/cm/t/magnetar-yamato.lol similarity index 100% rename from mpq/unit/cm/terran/magnetar-yamato.lol rename to mpq/unit/cm/t/magnetar-yamato.lol diff --git a/mpq/unit/cm/terran/magnetar.grp b/mpq/unit/cm/t/magnetar.grp similarity index 100% rename from mpq/unit/cm/terran/magnetar.grp rename to mpq/unit/cm/t/magnetar.grp diff --git a/mpq/unit/cm/terran/mantle-damage.lof b/mpq/unit/cm/t/mantle-damage.lof similarity index 100% rename from mpq/unit/cm/terran/mantle-damage.lof rename to mpq/unit/cm/t/mantle-damage.lof diff --git a/mpq/unit/cm/terran/mantle-shadow.grp b/mpq/unit/cm/t/mantle-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/mantle-shadow.grp rename to mpq/unit/cm/t/mantle-shadow.grp diff --git a/mpq/unit/cm/terran/mantle.grp b/mpq/unit/cm/t/mantle.grp similarity index 100% rename from mpq/unit/cm/terran/mantle.grp rename to mpq/unit/cm/t/mantle.grp diff --git a/mpq/unit/cm/terran/mason-remnants.grp b/mpq/unit/cm/t/mason-remnants.grp similarity index 100% rename from mpq/unit/cm/terran/mason-remnants.grp rename to mpq/unit/cm/t/mason-remnants.grp diff --git a/mpq/unit/cm/terran/matador-shadow.grp b/mpq/unit/cm/t/matador-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/matador-shadow.grp rename to mpq/unit/cm/t/matador-shadow.grp diff --git a/mpq/unit/cm/terran/matador-turret.grp b/mpq/unit/cm/t/matador-turret.grp similarity index 100% rename from mpq/unit/cm/terran/matador-turret.grp rename to mpq/unit/cm/t/matador-turret.grp diff --git a/mpq/unit/cm/t/matador-turret.lol b/mpq/unit/cm/t/matador-turret.lol new file mode 100644 index 00000000..eb157d14 Binary files /dev/null and b/mpq/unit/cm/t/matador-turret.lol differ diff --git a/mpq/unit/cm/terran/matador.grp b/mpq/unit/cm/t/matador.grp similarity index 100% rename from mpq/unit/cm/terran/matador.grp rename to mpq/unit/cm/t/matador.grp diff --git a/mpq/unit/cm/terran/maverick-stimpack-expire.grp b/mpq/unit/cm/t/maverick-stimpack-expire.grp similarity index 100% rename from mpq/unit/cm/terran/maverick-stimpack-expire.grp rename to mpq/unit/cm/t/maverick-stimpack-expire.grp diff --git a/mpq/unit/cm/terran/maverick-stimpack-inject.grp b/mpq/unit/cm/t/maverick-stimpack-inject.grp similarity index 100% rename from mpq/unit/cm/terran/maverick-stimpack-inject.grp rename to mpq/unit/cm/t/maverick-stimpack-inject.grp diff --git a/mpq/unit/cm/terran/maverick-stimpack-proc.grp b/mpq/unit/cm/t/maverick-stimpack-proc.grp similarity index 100% rename from mpq/unit/cm/terran/maverick-stimpack-proc.grp rename to mpq/unit/cm/t/maverick-stimpack-proc.grp diff --git a/mpq/unit/cm/terran/morningstar-field.grp b/mpq/unit/cm/t/morningstar-field.grp similarity index 100% rename from mpq/unit/cm/terran/morningstar-field.grp rename to mpq/unit/cm/t/morningstar-field.grp diff --git a/mpq/unit/cm/terran/naniteassembly-damage.lof b/mpq/unit/cm/t/naniteassembly-damage.lof similarity index 100% rename from mpq/unit/cm/terran/naniteassembly-damage.lof rename to mpq/unit/cm/t/naniteassembly-damage.lof diff --git a/mpq/unit/cm/terran/naniteassembly-shadow.grp b/mpq/unit/cm/t/naniteassembly-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/naniteassembly-shadow.grp rename to mpq/unit/cm/t/naniteassembly-shadow.grp diff --git a/mpq/unit/cm/terran/naniteassembly.grp b/mpq/unit/cm/t/naniteassembly.grp similarity index 100% rename from mpq/unit/cm/terran/naniteassembly.grp rename to mpq/unit/cm/t/naniteassembly.grp diff --git a/mpq/unit/cm/terran/oberon-engines.grp b/mpq/unit/cm/t/oberon-engines.grp similarity index 100% rename from mpq/unit/cm/terran/oberon-engines.grp rename to mpq/unit/cm/t/oberon-engines.grp diff --git a/mpq/unit/cm/terran/oberon.grp b/mpq/unit/cm/t/oberon.grp similarity index 100% rename from mpq/unit/cm/terran/oberon.grp rename to mpq/unit/cm/t/oberon.grp diff --git a/mpq/unit/cm/terran/ogun-shadow.grp b/mpq/unit/cm/t/ogun-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/ogun-shadow.grp rename to mpq/unit/cm/t/ogun-shadow.grp diff --git a/mpq/unit/cm/terran/ogun.grp b/mpq/unit/cm/t/ogun.grp similarity index 100% rename from mpq/unit/cm/terran/ogun.grp rename to mpq/unit/cm/t/ogun.grp diff --git a/mpq/unit/cm/terran/olympian-dishonorable-discharge-1.grp b/mpq/unit/cm/t/olympian-dishonorable-discharge-1.grp similarity index 100% rename from mpq/unit/cm/terran/olympian-dishonorable-discharge-1.grp rename to mpq/unit/cm/t/olympian-dishonorable-discharge-1.grp diff --git a/mpq/unit/cm/terran/olympian-shadow.grp b/mpq/unit/cm/t/olympian-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/olympian-shadow.grp rename to mpq/unit/cm/t/olympian-shadow.grp diff --git a/mpq/unit/cm/terran/olympian.grp b/mpq/unit/cm/t/olympian.grp similarity index 100% rename from mpq/unit/cm/terran/olympian.grp rename to mpq/unit/cm/t/olympian.grp diff --git a/mpq/unit/cm/terran/paladin-attack.lol b/mpq/unit/cm/t/paladin-attack.lol similarity index 100% rename from mpq/unit/cm/terran/paladin-attack.lol rename to mpq/unit/cm/t/paladin-attack.lol diff --git a/mpq/unit/cm/terran/paladin-shadow.grp b/mpq/unit/cm/t/paladin-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/paladin-shadow.grp rename to mpq/unit/cm/t/paladin-shadow.grp diff --git a/mpq/unit/cm/terran/paladin.grp b/mpq/unit/cm/t/paladin.grp similarity index 100% rename from mpq/unit/cm/terran/paladin.grp rename to mpq/unit/cm/t/paladin.grp diff --git a/mpq/unit/cm/terran/parthenon-damage.lof b/mpq/unit/cm/t/parthenon-damage.lof similarity index 100% rename from mpq/unit/cm/terran/parthenon-damage.lof rename to mpq/unit/cm/t/parthenon-damage.lof diff --git a/mpq/unit/cm/terran/parthenon-shadow.grp b/mpq/unit/cm/t/parthenon-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/parthenon-shadow.grp rename to mpq/unit/cm/t/parthenon-shadow.grp diff --git a/mpq/unit/cm/terran/parthenon.grp b/mpq/unit/cm/t/parthenon.grp similarity index 100% rename from mpq/unit/cm/terran/parthenon.grp rename to mpq/unit/cm/t/parthenon.grp diff --git a/mpq/unit/cm/terran/pazuzu.grp b/mpq/unit/cm/t/pazuzu.grp similarity index 100% rename from mpq/unit/cm/terran/pazuzu.grp rename to mpq/unit/cm/t/pazuzu.grp diff --git a/mpq/unit/cm/terran/pegasus-attacklaser.lol b/mpq/unit/cm/t/pegasus-attacklaser.lol similarity index 100% rename from mpq/unit/cm/terran/pegasus-attacklaser.lol rename to mpq/unit/cm/t/pegasus-attacklaser.lol diff --git a/mpq/unit/cm/terran/pegasus-attackmissile.lol b/mpq/unit/cm/t/pegasus-attackmissile.lol similarity index 100% rename from mpq/unit/cm/terran/pegasus-attackmissile.lol rename to mpq/unit/cm/t/pegasus-attackmissile.lol diff --git a/mpq/unit/cm/terran/pegasus-engine.grp b/mpq/unit/cm/t/pegasus-engine.grp similarity index 100% rename from mpq/unit/cm/terran/pegasus-engine.grp rename to mpq/unit/cm/t/pegasus-engine.grp diff --git a/mpq/unit/cm/terran/pegasus-engine2.grp b/mpq/unit/cm/t/pegasus-engine2.grp similarity index 100% rename from mpq/unit/cm/terran/pegasus-engine2.grp rename to mpq/unit/cm/t/pegasus-engine2.grp diff --git a/mpq/unit/cm/terran/pegasus-missile.grp b/mpq/unit/cm/t/pegasus-missile.grp similarity index 100% rename from mpq/unit/cm/terran/pegasus-missile.grp rename to mpq/unit/cm/t/pegasus-missile.grp diff --git a/mpq/unit/cm/terran/pegasus.grp b/mpq/unit/cm/t/pegasus.grp similarity index 100% rename from mpq/unit/cm/terran/pegasus.grp rename to mpq/unit/cm/t/pegasus.grp diff --git a/mpq/unit/cm/terran/penumbra-attack.lol b/mpq/unit/cm/t/penumbra-attack.lol similarity index 100% rename from mpq/unit/cm/terran/penumbra-attack.lol rename to mpq/unit/cm/t/penumbra-attack.lol diff --git a/mpq/unit/cm/terran/penumbra-death-big.grp b/mpq/unit/cm/t/penumbra-death-big.grp similarity index 100% rename from mpq/unit/cm/terran/penumbra-death-big.grp rename to mpq/unit/cm/t/penumbra-death-big.grp diff --git a/mpq/unit/cm/terran/penumbra-shadow.grp b/mpq/unit/cm/t/penumbra-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/penumbra-shadow.grp rename to mpq/unit/cm/t/penumbra-shadow.grp diff --git a/mpq/unit/cm/terran/penumbra.grp b/mpq/unit/cm/t/penumbra.grp similarity index 100% rename from mpq/unit/cm/terran/penumbra.grp rename to mpq/unit/cm/t/penumbra.grp diff --git a/mpq/unit/cm/terran/phalanx-mortar.grp b/mpq/unit/cm/t/phalanx-mortar.grp similarity index 100% rename from mpq/unit/cm/terran/phalanx-mortar.grp rename to mpq/unit/cm/t/phalanx-mortar.grp diff --git a/mpq/unit/cm/terran/phalanx-siege-death.grp b/mpq/unit/cm/t/phalanx-siege-death.grp similarity index 100% rename from mpq/unit/cm/terran/phalanx-siege-death.grp rename to mpq/unit/cm/t/phalanx-siege-death.grp diff --git a/mpq/unit/cm/terran/phalanx-tank-death.grp b/mpq/unit/cm/t/phalanx-tank-death.grp similarity index 100% rename from mpq/unit/cm/terran/phalanx-tank-death.grp rename to mpq/unit/cm/t/phalanx-tank-death.grp diff --git a/mpq/unit/cm/terran/phobos-attack.lol b/mpq/unit/cm/t/phobos-attack.lol similarity index 100% rename from mpq/unit/cm/terran/phobos-attack.lol rename to mpq/unit/cm/t/phobos-attack.lol diff --git a/mpq/unit/cm/terran/phobos-engine.grp b/mpq/unit/cm/t/phobos-engine.grp similarity index 100% rename from mpq/unit/cm/terran/phobos-engine.grp rename to mpq/unit/cm/t/phobos-engine.grp diff --git a/mpq/unit/cm/terran/phobos-laser-impact.grp b/mpq/unit/cm/t/phobos-laser-impact.grp similarity index 100% rename from mpq/unit/cm/terran/phobos-laser-impact.grp rename to mpq/unit/cm/t/phobos-laser-impact.grp diff --git a/mpq/unit/cm/terran/phobos-laser.grp b/mpq/unit/cm/t/phobos-laser.grp similarity index 100% rename from mpq/unit/cm/terran/phobos-laser.grp rename to mpq/unit/cm/t/phobos-laser.grp diff --git a/mpq/unit/cm/terran/phobos-missile.grp b/mpq/unit/cm/t/phobos-missile.grp similarity index 100% rename from mpq/unit/cm/terran/phobos-missile.grp rename to mpq/unit/cm/t/phobos-missile.grp diff --git a/mpq/unit/cm/terran/phobos.grp b/mpq/unit/cm/t/phobos.grp similarity index 100% rename from mpq/unit/cm/terran/phobos.grp rename to mpq/unit/cm/t/phobos.grp diff --git a/mpq/unit/cm/terran/power-generator-damage.lof b/mpq/unit/cm/t/power-generator-damage.lof similarity index 100% rename from mpq/unit/cm/terran/power-generator-damage.lof rename to mpq/unit/cm/t/power-generator-damage.lof diff --git a/mpq/unit/cm/terran/psi-disrupter-damage.lof b/mpq/unit/cm/t/psi-disrupter-damage.lof similarity index 100% rename from mpq/unit/cm/terran/psi-disrupter-damage.lof rename to mpq/unit/cm/t/psi-disrupter-damage.lof diff --git a/mpq/unit/cm/terran/pythean-engine.grp b/mpq/unit/cm/t/pythean-engine.grp similarity index 100% rename from mpq/unit/cm/terran/pythean-engine.grp rename to mpq/unit/cm/t/pythean-engine.grp diff --git a/mpq/unit/cm/terran/pythean.grp b/mpq/unit/cm/t/pythean.grp similarity index 100% rename from mpq/unit/cm/terran/pythean.grp rename to mpq/unit/cm/t/pythean.grp diff --git a/mpq/unit/cm/terran/quarry-connector.grp b/mpq/unit/cm/t/quarry-connector.grp similarity index 100% rename from mpq/unit/cm/terran/quarry-connector.grp rename to mpq/unit/cm/t/quarry-connector.grp diff --git a/mpq/unit/cm/terran/quarry-damage.lof b/mpq/unit/cm/t/quarry-damage.lof similarity index 100% rename from mpq/unit/cm/terran/quarry-damage.lof rename to mpq/unit/cm/t/quarry-damage.lof diff --git a/mpq/unit/cm/terran/quarry-shadow.grp b/mpq/unit/cm/t/quarry-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/quarry-shadow.grp rename to mpq/unit/cm/t/quarry-shadow.grp diff --git a/mpq/unit/cm/terran/quarry.grp b/mpq/unit/cm/t/quarry.grp similarity index 100% rename from mpq/unit/cm/terran/quarry.grp rename to mpq/unit/cm/t/quarry.grp diff --git a/mpq/unit/cm/terran/ramesses-attack.lol b/mpq/unit/cm/t/ramesses-attack.lol similarity index 100% rename from mpq/unit/cm/terran/ramesses-attack.lol rename to mpq/unit/cm/t/ramesses-attack.lol diff --git a/mpq/unit/cm/terran/ramesses-shadow.grp b/mpq/unit/cm/t/ramesses-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/ramesses-shadow.grp rename to mpq/unit/cm/t/ramesses-shadow.grp diff --git a/mpq/unit/cm/terran/ramesses.grp b/mpq/unit/cm/t/ramesses.grp similarity index 100% rename from mpq/unit/cm/terran/ramesses.grp rename to mpq/unit/cm/t/ramesses.grp diff --git a/mpq/unit/cm/terran/rotary-connector.grp b/mpq/unit/cm/t/rotary-connector.grp similarity index 100% rename from mpq/unit/cm/terran/rotary-connector.grp rename to mpq/unit/cm/t/rotary-connector.grp diff --git a/mpq/unit/cm/terran/rotary-damage.lof b/mpq/unit/cm/t/rotary-damage.lof similarity index 100% rename from mpq/unit/cm/terran/rotary-damage.lof rename to mpq/unit/cm/t/rotary-damage.lof diff --git a/mpq/unit/cm/terran/rotary-shadow.grp b/mpq/unit/cm/t/rotary-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/rotary-shadow.grp rename to mpq/unit/cm/t/rotary-shadow.grp diff --git a/mpq/unit/cm/terran/rotary.grp b/mpq/unit/cm/t/rotary.grp similarity index 100% rename from mpq/unit/cm/terran/rotary.grp rename to mpq/unit/cm/t/rotary.grp diff --git a/mpq/unit/cm/terran/rubble-unit-medium.grp b/mpq/unit/cm/t/rubble-unit-medium.grp similarity index 100% rename from mpq/unit/cm/terran/rubble-unit-medium.grp rename to mpq/unit/cm/t/rubble-unit-medium.grp diff --git a/mpq/unit/cm/terran/rubble-unit-small.grp b/mpq/unit/cm/t/rubble-unit-small.grp similarity index 100% rename from mpq/unit/cm/terran/rubble-unit-small.grp rename to mpq/unit/cm/t/rubble-unit-small.grp diff --git a/mpq/unit/cm/terran/salamander-death.grp b/mpq/unit/cm/t/salamander-death.grp similarity index 100% rename from mpq/unit/cm/terran/salamander-death.grp rename to mpq/unit/cm/t/salamander-death.grp diff --git a/mpq/unit/cm/terran/salamander-engine.grp b/mpq/unit/cm/t/salamander-engine.grp similarity index 100% rename from mpq/unit/cm/terran/salamander-engine.grp rename to mpq/unit/cm/t/salamander-engine.grp diff --git a/mpq/unit/cm/terran/salamander-missile-impact.grp b/mpq/unit/cm/t/salamander-missile-impact.grp similarity index 100% rename from mpq/unit/cm/terran/salamander-missile-impact.grp rename to mpq/unit/cm/t/salamander-missile-impact.grp diff --git a/mpq/unit/cm/terran/salamander-missile.grp b/mpq/unit/cm/t/salamander-missile.grp similarity index 100% rename from mpq/unit/cm/terran/salamander-missile.grp rename to mpq/unit/cm/t/salamander-missile.grp diff --git a/mpq/unit/cm/terran/salamander-rocket-trail.grp b/mpq/unit/cm/t/salamander-rocket-trail.grp similarity index 100% rename from mpq/unit/cm/terran/salamander-rocket-trail.grp rename to mpq/unit/cm/t/salamander-rocket-trail.grp diff --git a/mpq/unit/cm/terran/salamander-weaponhit.grp b/mpq/unit/cm/t/salamander-weaponhit.grp similarity index 100% rename from mpq/unit/cm/terran/salamander-weaponhit.grp rename to mpq/unit/cm/t/salamander-weaponhit.grp diff --git a/mpq/unit/cm/terran/salamander.grp b/mpq/unit/cm/t/salamander.grp similarity index 100% rename from mpq/unit/cm/terran/salamander.grp rename to mpq/unit/cm/t/salamander.grp diff --git a/mpq/unit/cm/terran/salvage-disable-large.grp b/mpq/unit/cm/t/salvage-disable-large.grp similarity index 100% rename from mpq/unit/cm/terran/salvage-disable-large.grp rename to mpq/unit/cm/t/salvage-disable-large.grp diff --git a/mpq/unit/cm/terran/salvage-disable-medium.grp b/mpq/unit/cm/t/salvage-disable-medium.grp similarity index 100% rename from mpq/unit/cm/terran/salvage-disable-medium.grp rename to mpq/unit/cm/t/salvage-disable-medium.grp diff --git a/mpq/unit/cm/terran/salvage-disable-small.grp b/mpq/unit/cm/t/salvage-disable-small.grp similarity index 100% rename from mpq/unit/cm/terran/salvage-disable-small.grp rename to mpq/unit/cm/t/salvage-disable-small.grp diff --git a/mpq/unit/cm/terran/salvage-zap.grp b/mpq/unit/cm/t/salvage-zap.grp similarity index 100% rename from mpq/unit/cm/terran/salvage-zap.grp rename to mpq/unit/cm/t/salvage-zap.grp diff --git a/mpq/unit/cm/terran/savant-death.grp b/mpq/unit/cm/t/savant-death.grp similarity index 100% rename from mpq/unit/cm/terran/savant-death.grp rename to mpq/unit/cm/t/savant-death.grp diff --git a/mpq/unit/cm/terran/savant-entropy-attack.lol b/mpq/unit/cm/t/savant-entropy-attack.lol similarity index 100% rename from mpq/unit/cm/terran/savant-entropy-attack.lol rename to mpq/unit/cm/t/savant-entropy-attack.lol diff --git a/mpq/unit/cm/terran/savant-entropy-shadow.grp b/mpq/unit/cm/t/savant-entropy-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/savant-entropy-shadow.grp rename to mpq/unit/cm/t/savant-entropy-shadow.grp diff --git a/mpq/unit/cm/terran/savant-entropy.grp b/mpq/unit/cm/t/savant-entropy.grp similarity index 100% rename from mpq/unit/cm/terran/savant-entropy.grp rename to mpq/unit/cm/t/savant-entropy.grp diff --git a/mpq/unit/cm/terran/savant-form-switch.grp b/mpq/unit/cm/t/savant-form-switch.grp similarity index 100% rename from mpq/unit/cm/terran/savant-form-switch.grp rename to mpq/unit/cm/t/savant-form-switch.grp diff --git a/mpq/unit/cm/terran/savant-shadow.grp b/mpq/unit/cm/t/savant-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/savant-shadow.grp rename to mpq/unit/cm/t/savant-shadow.grp diff --git a/mpq/unit/cm/terran/savant-siphon-attack.lol b/mpq/unit/cm/t/savant-siphon-attack.lol similarity index 100% rename from mpq/unit/cm/terran/savant-siphon-attack.lol rename to mpq/unit/cm/t/savant-siphon-attack.lol diff --git a/mpq/unit/cm/terran/savant-siphon-shadow.grp b/mpq/unit/cm/t/savant-siphon-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/savant-siphon-shadow.grp rename to mpq/unit/cm/t/savant-siphon-shadow.grp diff --git a/mpq/unit/cm/terran/savant-siphon.grp b/mpq/unit/cm/t/savant-siphon.grp similarity index 100% rename from mpq/unit/cm/terran/savant-siphon.grp rename to mpq/unit/cm/t/savant-siphon.grp diff --git a/mpq/unit/cm/terran/savant-weaponhit.grp b/mpq/unit/cm/t/savant-weaponhit.grp similarity index 100% rename from mpq/unit/cm/terran/savant-weaponhit.grp rename to mpq/unit/cm/t/savant-weaponhit.grp diff --git a/mpq/unit/cm/terran/savant.grp b/mpq/unit/cm/t/savant.grp similarity index 100% rename from mpq/unit/cm/terran/savant.grp rename to mpq/unit/cm/t/savant.grp diff --git a/mpq/unit/cm/terran/scrapyard-damage.lof b/mpq/unit/cm/t/scrapyard-damage.lof similarity index 100% rename from mpq/unit/cm/terran/scrapyard-damage.lof rename to mpq/unit/cm/t/scrapyard-damage.lof diff --git a/mpq/unit/cm/terran/scrapyard-shadow.grp b/mpq/unit/cm/t/scrapyard-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/scrapyard-shadow.grp rename to mpq/unit/cm/t/scrapyard-shadow.grp diff --git a/mpq/unit/cm/terran/scrapyard.grp b/mpq/unit/cm/t/scrapyard.grp similarity index 100% rename from mpq/unit/cm/terran/scrapyard.grp rename to mpq/unit/cm/t/scrapyard.grp diff --git a/mpq/unit/cm/terran/sentinel-attack.lol b/mpq/unit/cm/t/sentinel-attack.lol similarity index 100% rename from mpq/unit/cm/terran/sentinel-attack.lol rename to mpq/unit/cm/t/sentinel-attack.lol diff --git a/mpq/unit/cm/terran/sentinel-base.grp b/mpq/unit/cm/t/sentinel-base.grp similarity index 100% rename from mpq/unit/cm/terran/sentinel-base.grp rename to mpq/unit/cm/t/sentinel-base.grp diff --git a/mpq/unit/cm/terran/sentinel-rail.grp b/mpq/unit/cm/t/sentinel-rail.grp similarity index 100% rename from mpq/unit/cm/terran/sentinel-rail.grp rename to mpq/unit/cm/t/sentinel-rail.grp diff --git a/mpq/unit/cm/terran/sentinel-shadow.grp b/mpq/unit/cm/t/sentinel-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/sentinel-shadow.grp rename to mpq/unit/cm/t/sentinel-shadow.grp diff --git a/mpq/unit/cm/terran/sentinel-turret.grp b/mpq/unit/cm/t/sentinel-turret.grp similarity index 100% rename from mpq/unit/cm/terran/sentinel-turret.grp rename to mpq/unit/cm/t/sentinel-turret.grp diff --git a/mpq/unit/cm/terran/sevenstep-shadow.grp b/mpq/unit/cm/t/sevenstep-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/sevenstep-shadow.grp rename to mpq/unit/cm/t/sevenstep-shadow.grp diff --git a/mpq/unit/cm/terran/sevenstep.grp b/mpq/unit/cm/t/sevenstep.grp similarity index 100% rename from mpq/unit/cm/terran/sevenstep.grp rename to mpq/unit/cm/t/sevenstep.grp diff --git a/mpq/unit/cm/terran/shaman-remains.grp b/mpq/unit/cm/t/shaman-remains.grp similarity index 100% rename from mpq/unit/cm/terran/shaman-remains.grp rename to mpq/unit/cm/t/shaman-remains.grp diff --git a/mpq/unit/cm/terran/shaman-shadow.grp b/mpq/unit/cm/t/shaman-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/shaman-shadow.grp rename to mpq/unit/cm/t/shaman-shadow.grp diff --git a/mpq/unit/cm/terran/shaman.grp b/mpq/unit/cm/t/shaman.grp similarity index 100% rename from mpq/unit/cm/terran/shaman.grp rename to mpq/unit/cm/t/shaman.grp diff --git a/mpq/unit/cm/terran/sieve-damage.lof b/mpq/unit/cm/t/sieve-damage.lof similarity index 100% rename from mpq/unit/cm/terran/sieve-damage.lof rename to mpq/unit/cm/t/sieve-damage.lof diff --git a/mpq/unit/cm/terran/sieve-gas.los b/mpq/unit/cm/t/sieve-gas.los similarity index 100% rename from mpq/unit/cm/terran/sieve-gas.los rename to mpq/unit/cm/t/sieve-gas.los diff --git a/mpq/unit/cm/terran/sieve-shadow.grp b/mpq/unit/cm/t/sieve-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/sieve-shadow.grp rename to mpq/unit/cm/t/sieve-shadow.grp diff --git a/mpq/unit/cm/terran/sieve.grp b/mpq/unit/cm/t/sieve.grp similarity index 100% rename from mpq/unit/cm/terran/sieve.grp rename to mpq/unit/cm/t/sieve.grp diff --git a/mpq/unit/cm/terran/silvertongue-shadow.grp b/mpq/unit/cm/t/silvertongue-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/silvertongue-shadow.grp rename to mpq/unit/cm/t/silvertongue-shadow.grp diff --git a/mpq/unit/cm/terran/silvertongue.grp b/mpq/unit/cm/t/silvertongue.grp similarity index 100% rename from mpq/unit/cm/terran/silvertongue.grp rename to mpq/unit/cm/t/silvertongue.grp diff --git a/mpq/unit/cm/terran/siren-shadow.grp b/mpq/unit/cm/t/siren-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/siren-shadow.grp rename to mpq/unit/cm/t/siren-shadow.grp diff --git a/mpq/unit/cm/terran/siren.grp b/mpq/unit/cm/t/siren.grp similarity index 100% rename from mpq/unit/cm/terran/siren.grp rename to mpq/unit/cm/t/siren.grp diff --git a/mpq/unit/cm/terran/spoke-shell.grp b/mpq/unit/cm/t/spoke-shell.grp similarity index 100% rename from mpq/unit/cm/terran/spoke-shell.grp rename to mpq/unit/cm/t/spoke-shell.grp diff --git a/mpq/unit/cm/terran/starpad-damage.lof b/mpq/unit/cm/t/starpad-damage.lof similarity index 100% rename from mpq/unit/cm/terran/starpad-damage.lof rename to mpq/unit/cm/t/starpad-damage.lof diff --git a/mpq/unit/cm/terran/starpad-landing.lou b/mpq/unit/cm/t/starpad-landing.lou similarity index 100% rename from mpq/unit/cm/terran/starpad-landing.lou rename to mpq/unit/cm/t/starpad-landing.lou diff --git a/mpq/unit/cm/terran/starpad-liftoff.lod b/mpq/unit/cm/t/starpad-liftoff.lod similarity index 100% rename from mpq/unit/cm/terran/starpad-liftoff.lod rename to mpq/unit/cm/t/starpad-liftoff.lod diff --git a/mpq/unit/cm/terran/starpad-overlay.grp b/mpq/unit/cm/t/starpad-overlay.grp similarity index 100% rename from mpq/unit/cm/terran/starpad-overlay.grp rename to mpq/unit/cm/t/starpad-overlay.grp diff --git a/mpq/unit/cm/terran/starpad-shadow.grp b/mpq/unit/cm/t/starpad-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/starpad-shadow.grp rename to mpq/unit/cm/t/starpad-shadow.grp diff --git a/mpq/unit/cm/terran/starpad.grp b/mpq/unit/cm/t/starpad.grp similarity index 100% rename from mpq/unit/cm/terran/starpad.grp rename to mpq/unit/cm/t/starpad.grp diff --git a/mpq/unit/cm/terran/striga-attack.lol b/mpq/unit/cm/t/striga-attack.lol similarity index 100% rename from mpq/unit/cm/terran/striga-attack.lol rename to mpq/unit/cm/t/striga-attack.lol diff --git a/mpq/unit/cm/terran/striga-shadow.grp b/mpq/unit/cm/t/striga-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/striga-shadow.grp rename to mpq/unit/cm/t/striga-shadow.grp diff --git a/mpq/unit/cm/terran/striga.grp b/mpq/unit/cm/t/striga.grp similarity index 100% rename from mpq/unit/cm/terran/striga.grp rename to mpq/unit/cm/t/striga.grp diff --git a/mpq/unit/cm/terran/sundog-attack.lol b/mpq/unit/cm/t/sundog-attack.lol similarity index 100% rename from mpq/unit/cm/terran/sundog-attack.lol rename to mpq/unit/cm/t/sundog-attack.lol diff --git a/mpq/unit/cm/terran/sundog-engine.grp b/mpq/unit/cm/t/sundog-engine.grp similarity index 100% rename from mpq/unit/cm/terran/sundog-engine.grp rename to mpq/unit/cm/t/sundog-engine.grp diff --git a/mpq/unit/cm/terran/sundog.grp b/mpq/unit/cm/t/sundog.grp similarity index 100% rename from mpq/unit/cm/terran/sundog.grp rename to mpq/unit/cm/t/sundog.grp diff --git a/mpq/unit/cm/terran/talos-engine.grp b/mpq/unit/cm/t/talos-engine.grp similarity index 100% rename from mpq/unit/cm/terran/talos-engine.grp rename to mpq/unit/cm/t/talos-engine.grp diff --git a/mpq/unit/cm/terran/talos-resource.loo b/mpq/unit/cm/t/talos-resource.loo similarity index 100% rename from mpq/unit/cm/terran/talos-resource.loo rename to mpq/unit/cm/t/talos-resource.loo diff --git a/mpq/unit/cm/terran/talos.grp b/mpq/unit/cm/t/talos.grp similarity index 100% rename from mpq/unit/cm/terran/talos.grp rename to mpq/unit/cm/t/talos.grp diff --git a/mpq/unit/cm/terran/tencendur-flag.grp b/mpq/unit/cm/t/tencendur-flag.grp similarity index 100% rename from mpq/unit/cm/terran/tencendur-flag.grp rename to mpq/unit/cm/t/tencendur-flag.grp diff --git a/mpq/unit/cm/terran/tencendur-overlay-bg.grp b/mpq/unit/cm/t/tencendur-overlay-bg.grp similarity index 100% rename from mpq/unit/cm/terran/tencendur-overlay-bg.grp rename to mpq/unit/cm/t/tencendur-overlay-bg.grp diff --git a/mpq/unit/cm/terran/tencendur-overlay-ob.grp b/mpq/unit/cm/t/tencendur-overlay-ob.grp similarity index 100% rename from mpq/unit/cm/terran/tencendur-overlay-ob.grp rename to mpq/unit/cm/t/tencendur-overlay-ob.grp diff --git a/mpq/unit/cm/terran/tencendur-shadow.grp b/mpq/unit/cm/t/tencendur-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/tencendur-shadow.grp rename to mpq/unit/cm/t/tencendur-shadow.grp diff --git a/mpq/unit/cm/terran/tencendur.grp b/mpq/unit/cm/t/tencendur.grp similarity index 100% rename from mpq/unit/cm/terran/tencendur.grp rename to mpq/unit/cm/t/tencendur.grp diff --git a/mpq/unit/cm/terran/tinkererstower-damage.lof b/mpq/unit/cm/t/tinkererstower-damage.lof similarity index 100% rename from mpq/unit/cm/terran/tinkererstower-damage.lof rename to mpq/unit/cm/t/tinkererstower-damage.lof diff --git a/mpq/unit/cm/terran/tinkererstower-shadow.grp b/mpq/unit/cm/t/tinkererstower-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/tinkererstower-shadow.grp rename to mpq/unit/cm/t/tinkererstower-shadow.grp diff --git a/mpq/unit/cm/terran/tinkererstower.grp b/mpq/unit/cm/t/tinkererstower.grp similarity index 100% rename from mpq/unit/cm/terran/tinkererstower.grp rename to mpq/unit/cm/t/tinkererstower.grp diff --git a/mpq/unit/cm/terran/treasury-damage.lof b/mpq/unit/cm/t/treasury-damage.lof similarity index 100% rename from mpq/unit/cm/terran/treasury-damage.lof rename to mpq/unit/cm/t/treasury-damage.lof diff --git a/mpq/unit/cm/terran/treasury-shadow.grp b/mpq/unit/cm/t/treasury-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/treasury-shadow.grp rename to mpq/unit/cm/t/treasury-shadow.grp diff --git a/mpq/unit/cm/terran/treasury.grp b/mpq/unit/cm/t/treasury.grp similarity index 100% rename from mpq/unit/cm/terran/treasury.grp rename to mpq/unit/cm/t/treasury.grp diff --git a/mpq/unit/cm/terran/triton-ability.lol b/mpq/unit/cm/t/triton-ability.lol similarity index 100% rename from mpq/unit/cm/terran/triton-ability.lol rename to mpq/unit/cm/t/triton-ability.lol diff --git a/mpq/unit/cm/terran/triton-attack.lol b/mpq/unit/cm/t/triton-attack.lol similarity index 100% rename from mpq/unit/cm/terran/triton-attack.lol rename to mpq/unit/cm/t/triton-attack.lol diff --git a/mpq/unit/cm/terran/triton-base.grp b/mpq/unit/cm/t/triton-base.grp similarity index 100% rename from mpq/unit/cm/terran/triton-base.grp rename to mpq/unit/cm/t/triton-base.grp diff --git a/mpq/unit/cm/terran/triton-shadow.grp b/mpq/unit/cm/t/triton-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/triton-shadow.grp rename to mpq/unit/cm/t/triton-shadow.grp diff --git a/mpq/unit/cm/terran/triton-turret.grp b/mpq/unit/cm/t/triton-turret.grp similarity index 100% rename from mpq/unit/cm/terran/triton-turret.grp rename to mpq/unit/cm/t/triton-turret.grp diff --git a/mpq/unit/cm/terran/trojan-death.grp b/mpq/unit/cm/t/trojan-death.grp similarity index 100% rename from mpq/unit/cm/terran/trojan-death.grp rename to mpq/unit/cm/t/trojan-death.grp diff --git a/mpq/unit/cm/terran/vestry-connector.grp b/mpq/unit/cm/t/vestry-connector.grp similarity index 100% rename from mpq/unit/cm/terran/vestry-connector.grp rename to mpq/unit/cm/t/vestry-connector.grp diff --git a/mpq/unit/cm/terran/vestry-damage.lof b/mpq/unit/cm/t/vestry-damage.lof similarity index 100% rename from mpq/unit/cm/terran/vestry-damage.lof rename to mpq/unit/cm/t/vestry-damage.lof diff --git a/mpq/unit/cm/terran/vestry-shadow.grp b/mpq/unit/cm/t/vestry-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/vestry-shadow.grp rename to mpq/unit/cm/t/vestry-shadow.grp diff --git a/mpq/unit/cm/terran/vestry.grp b/mpq/unit/cm/t/vestry.grp similarity index 100% rename from mpq/unit/cm/terran/vestry.grp rename to mpq/unit/cm/t/vestry.grp diff --git a/mpq/unit/cm/terran/vulture-attack.lol b/mpq/unit/cm/t/vulture-attack.lol similarity index 100% rename from mpq/unit/cm/terran/vulture-attack.lol rename to mpq/unit/cm/t/vulture-attack.lol diff --git a/mpq/unit/cm/terran/vulture-engine.grp b/mpq/unit/cm/t/vulture-engine.grp similarity index 100% rename from mpq/unit/cm/terran/vulture-engine.grp rename to mpq/unit/cm/t/vulture-engine.grp diff --git a/mpq/unit/cm/terran/vulture-remains.grp b/mpq/unit/cm/t/vulture-remains.grp similarity index 100% rename from mpq/unit/cm/terran/vulture-remains.grp rename to mpq/unit/cm/t/vulture-remains.grp diff --git a/mpq/unit/cm/terran/watchdog.lod b/mpq/unit/cm/t/watchdog.lod similarity index 100% rename from mpq/unit/cm/terran/watchdog.lod rename to mpq/unit/cm/t/watchdog.lod diff --git a/mpq/unit/cm/terran/watchdog.lou b/mpq/unit/cm/t/watchdog.lou similarity index 100% rename from mpq/unit/cm/terran/watchdog.lou rename to mpq/unit/cm/t/watchdog.lou diff --git a/mpq/unit/cm/terran/wellbore-damage.lof b/mpq/unit/cm/t/wellbore-damage.lof similarity index 100% rename from mpq/unit/cm/terran/wellbore-damage.lof rename to mpq/unit/cm/t/wellbore-damage.lof diff --git a/mpq/unit/cm/terran/wellbore-overlay.grp b/mpq/unit/cm/t/wellbore-overlay.grp similarity index 100% rename from mpq/unit/cm/terran/wellbore-overlay.grp rename to mpq/unit/cm/t/wellbore-overlay.grp diff --git a/mpq/unit/cm/terran/wellbore-puff.los b/mpq/unit/cm/t/wellbore-puff.los similarity index 100% rename from mpq/unit/cm/terran/wellbore-puff.los rename to mpq/unit/cm/t/wellbore-puff.los diff --git a/mpq/unit/cm/terran/wellbore-shadow.grp b/mpq/unit/cm/t/wellbore-shadow.grp similarity index 100% rename from mpq/unit/cm/terran/wellbore-shadow.grp rename to mpq/unit/cm/t/wellbore-shadow.grp diff --git a/mpq/unit/cm/terran/wellbore.grp b/mpq/unit/cm/t/wellbore.grp similarity index 100% rename from mpq/unit/cm/terran/wellbore.grp rename to mpq/unit/cm/t/wellbore.grp diff --git a/mpq/unit/cm/terran/wraith-attacklaser.lol b/mpq/unit/cm/t/wraith-attacklaser.lol similarity index 100% rename from mpq/unit/cm/terran/wraith-attacklaser.lol rename to mpq/unit/cm/t/wraith-attacklaser.lol diff --git a/mpq/unit/cm/terran/wraith-death.grp b/mpq/unit/cm/t/wraith-death.grp similarity index 100% rename from mpq/unit/cm/terran/wraith-death.grp rename to mpq/unit/cm/t/wraith-death.grp diff --git a/mpq/unit/cm/terran/wraith-remains.grp b/mpq/unit/cm/t/wraith-remains.grp similarity index 100% rename from mpq/unit/cm/terran/wraith-remains.grp rename to mpq/unit/cm/t/wraith-remains.grp diff --git a/mpq/unit/cm/terran/wyvern-engines.grp b/mpq/unit/cm/t/wyvern-engines.grp similarity index 100% rename from mpq/unit/cm/terran/wyvern-engines.grp rename to mpq/unit/cm/t/wyvern-engines.grp diff --git a/mpq/unit/cm/terran/wyvern-turret.grp b/mpq/unit/cm/t/wyvern-turret.grp similarity index 100% rename from mpq/unit/cm/terran/wyvern-turret.grp rename to mpq/unit/cm/t/wyvern-turret.grp diff --git a/mpq/unit/cm/terran/wyvern.grp b/mpq/unit/cm/t/wyvern.grp similarity index 100% rename from mpq/unit/cm/terran/wyvern.grp rename to mpq/unit/cm/t/wyvern.grp diff --git a/mpq/unit/cm/terran/apostle-shadow.grp b/mpq/unit/cm/terran/apostle-shadow.grp deleted file mode 100644 index e0a9f342..00000000 Binary files a/mpq/unit/cm/terran/apostle-shadow.grp and /dev/null differ diff --git a/mpq/unit/cm/terran/apostle.grp b/mpq/unit/cm/terran/apostle.grp deleted file mode 100644 index 7ab757e0..00000000 Binary files a/mpq/unit/cm/terran/apostle.grp and /dev/null differ diff --git a/mpq/unit/cm/terran/autocrat-shadow.grp b/mpq/unit/cm/terran/autocrat-shadow.grp deleted file mode 100644 index 1b7fddd4..00000000 Binary files a/mpq/unit/cm/terran/autocrat-shadow.grp and /dev/null differ diff --git a/mpq/unit/cm/terran/autocrat.grp b/mpq/unit/cm/terran/autocrat.grp deleted file mode 100644 index 50d55ab5..00000000 Binary files a/mpq/unit/cm/terran/autocrat.grp and /dev/null differ diff --git a/mpq/unit/cm/zerg/agrileth-birth.grp b/mpq/unit/cm/z/agrileth-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/agrileth-birth.grp rename to mpq/unit/cm/z/agrileth-birth.grp diff --git a/mpq/unit/cm/zerg/agrileth-remains.grp b/mpq/unit/cm/z/agrileth-remains.grp similarity index 100% rename from mpq/unit/cm/zerg/agrileth-remains.grp rename to mpq/unit/cm/z/agrileth-remains.grp diff --git a/mpq/unit/cm/zerg/agrileth-shadow.grp b/mpq/unit/cm/z/agrileth-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/agrileth-shadow.grp rename to mpq/unit/cm/z/agrileth-shadow.grp diff --git a/mpq/unit/cm/zerg/agrileth.grp b/mpq/unit/cm/z/agrileth.grp similarity index 100% rename from mpq/unit/cm/zerg/agrileth.grp rename to mpq/unit/cm/z/agrileth.grp diff --git a/mpq/unit/cm/zerg/akistrokor-birth.grp b/mpq/unit/cm/z/akistrokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/akistrokor-birth.grp rename to mpq/unit/cm/z/akistrokor-birth.grp diff --git a/mpq/unit/cm/zerg/akistrokor.grp b/mpq/unit/cm/z/akistrokor.grp similarity index 100% rename from mpq/unit/cm/zerg/akistrokor.grp rename to mpq/unit/cm/z/akistrokor.grp diff --git a/mpq/unit/cm/zerg/alaszil-arbor-damage.lof b/mpq/unit/cm/z/alaszil-arbor-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/alaszil-arbor-damage.lof rename to mpq/unit/cm/z/alaszil-arbor-damage.lof diff --git a/mpq/unit/cm/zerg/alaszil-arbor-shadow.grp b/mpq/unit/cm/z/alaszil-arbor-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/alaszil-arbor-shadow.grp rename to mpq/unit/cm/z/alaszil-arbor-shadow.grp diff --git a/mpq/unit/cm/zerg/alaszil-arbor.grp b/mpq/unit/cm/z/alaszil-arbor.grp similarity index 100% rename from mpq/unit/cm/zerg/alaszil-arbor.grp rename to mpq/unit/cm/z/alaszil-arbor.grp diff --git a/mpq/unit/cm/zerg/alaszileth-birth.grp b/mpq/unit/cm/z/alaszileth-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/alaszileth-birth.grp rename to mpq/unit/cm/z/alaszileth-birth.grp diff --git a/mpq/unit/cm/zerg/alaszileth.grp b/mpq/unit/cm/z/alaszileth.grp similarity index 100% rename from mpq/unit/cm/zerg/alaszileth.grp rename to mpq/unit/cm/z/alaszileth.grp diff --git a/mpq/unit/cm/zerg/algoztalisk-birth-flying.grp b/mpq/unit/cm/z/algoztalisk-birth-flying.grp similarity index 100% rename from mpq/unit/cm/zerg/algoztalisk-birth-flying.grp rename to mpq/unit/cm/z/algoztalisk-birth-flying.grp diff --git a/mpq/unit/cm/zerg/algoztalisk-birth.grp b/mpq/unit/cm/z/algoztalisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/algoztalisk-birth.grp rename to mpq/unit/cm/z/algoztalisk-birth.grp diff --git a/mpq/unit/cm/zerg/algoztalisk.grp b/mpq/unit/cm/z/algoztalisk.grp similarity index 100% rename from mpq/unit/cm/zerg/algoztalisk.grp rename to mpq/unit/cm/z/algoztalisk.grp diff --git a/mpq/unit/cm/zerg/alkaj-chasm-damage.lof b/mpq/unit/cm/z/alkaj-chasm-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/alkaj-chasm-damage.lof rename to mpq/unit/cm/z/alkaj-chasm-damage.lof diff --git a/mpq/unit/cm/zerg/alkaj-chasm-shadow.grp b/mpq/unit/cm/z/alkaj-chasm-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/alkaj-chasm-shadow.grp rename to mpq/unit/cm/z/alkaj-chasm-shadow.grp diff --git a/mpq/unit/cm/zerg/alkaj-chasm.grp b/mpq/unit/cm/z/alkaj-chasm.grp similarity index 100% rename from mpq/unit/cm/zerg/alkaj-chasm.grp rename to mpq/unit/cm/z/alkaj-chasm.grp diff --git a/mpq/unit/cm/zerg/alkajelisk-birth-flying.grp b/mpq/unit/cm/z/alkajelisk-birth-flying.grp similarity index 100% rename from mpq/unit/cm/zerg/alkajelisk-birth-flying.grp rename to mpq/unit/cm/z/alkajelisk-birth-flying.grp diff --git a/mpq/unit/cm/zerg/alkajelisk-birth.grp b/mpq/unit/cm/z/alkajelisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/alkajelisk-birth.grp rename to mpq/unit/cm/z/alkajelisk-birth.grp diff --git a/mpq/unit/cm/zerg/alkajelisk.grp b/mpq/unit/cm/z/alkajelisk.grp similarity index 100% rename from mpq/unit/cm/zerg/alkajelisk.grp rename to mpq/unit/cm/z/alkajelisk.grp diff --git a/mpq/unit/cm/zerg/almakis-antre-damage.lof b/mpq/unit/cm/z/almakis-antre-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/almakis-antre-damage.lof rename to mpq/unit/cm/z/almakis-antre-damage.lof diff --git a/mpq/unit/cm/zerg/almakis-antre-shadow.grp b/mpq/unit/cm/z/almakis-antre-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/almakis-antre-shadow.grp rename to mpq/unit/cm/z/almakis-antre-shadow.grp diff --git a/mpq/unit/cm/zerg/almakis-antre.grp b/mpq/unit/cm/z/almakis-antre.grp similarity index 100% rename from mpq/unit/cm/zerg/almakis-antre.grp rename to mpq/unit/cm/z/almakis-antre.grp diff --git a/mpq/unit/cm/zerg/almaksalisk-attack.lol b/mpq/unit/cm/z/almaksalisk-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/almaksalisk-attack.lol rename to mpq/unit/cm/z/almaksalisk-attack.lol diff --git a/mpq/unit/cm/zerg/almaksalisk-birth.grp b/mpq/unit/cm/z/almaksalisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/almaksalisk-birth.grp rename to mpq/unit/cm/z/almaksalisk-birth.grp diff --git a/mpq/unit/cm/zerg/almaksalisk-mutate.grp b/mpq/unit/cm/z/almaksalisk-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/almaksalisk-mutate.grp rename to mpq/unit/cm/z/almaksalisk-mutate.grp diff --git a/mpq/unit/cm/zerg/almaksalisk.grp b/mpq/unit/cm/z/almaksalisk.grp similarity index 100% rename from mpq/unit/cm/zerg/almaksalisk.grp rename to mpq/unit/cm/z/almaksalisk.grp diff --git a/mpq/unit/cm/zerg/atrixilisk-attack.lol b/mpq/unit/cm/z/atrixilisk-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/atrixilisk-attack.lol rename to mpq/unit/cm/z/atrixilisk-attack.lol diff --git a/mpq/unit/cm/zerg/axitrilisk-birth-single.grp b/mpq/unit/cm/z/axitrilisk-birth-single.grp similarity index 100% rename from mpq/unit/cm/zerg/axitrilisk-birth-single.grp rename to mpq/unit/cm/z/axitrilisk-birth-single.grp diff --git a/mpq/unit/cm/zerg/axitrilisk-birth.grp b/mpq/unit/cm/z/axitrilisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/axitrilisk-birth.grp rename to mpq/unit/cm/z/axitrilisk-birth.grp diff --git a/mpq/unit/cm/zerg/axitrilisk-old-birth.grp b/mpq/unit/cm/z/axitrilisk-old-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/axitrilisk-old-birth.grp rename to mpq/unit/cm/z/axitrilisk-old-birth.grp diff --git a/mpq/unit/cm/zerg/axitrilisk-old-shadow.grp b/mpq/unit/cm/z/axitrilisk-old-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/axitrilisk-old-shadow.grp rename to mpq/unit/cm/z/axitrilisk-old-shadow.grp diff --git a/mpq/unit/cm/zerg/axitrilisk-old.grp b/mpq/unit/cm/z/axitrilisk-old.grp similarity index 100% rename from mpq/unit/cm/zerg/axitrilisk-old.grp rename to mpq/unit/cm/z/axitrilisk-old.grp diff --git a/mpq/unit/cm/zerg/axitrilisk-remnants.grp b/mpq/unit/cm/z/axitrilisk-remnants.grp similarity index 100% rename from mpq/unit/cm/zerg/axitrilisk-remnants.grp rename to mpq/unit/cm/z/axitrilisk-remnants.grp diff --git a/mpq/unit/cm/zerg/axitrilisk-shadow.grp b/mpq/unit/cm/z/axitrilisk-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/axitrilisk-shadow.grp rename to mpq/unit/cm/z/axitrilisk-shadow.grp diff --git a/mpq/unit/cm/zerg/axitrilisk.grp b/mpq/unit/cm/z/axitrilisk.grp similarity index 100% rename from mpq/unit/cm/zerg/axitrilisk.grp rename to mpq/unit/cm/z/axitrilisk.grp diff --git a/mpq/unit/cm/zerg/axtoth-axis-damage.lof b/mpq/unit/cm/z/axtoth-axis-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/axtoth-axis-damage.lof rename to mpq/unit/cm/z/axtoth-axis-damage.lof diff --git a/mpq/unit/cm/zerg/axtoth-axis-shadow.grp b/mpq/unit/cm/z/axtoth-axis-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/axtoth-axis-shadow.grp rename to mpq/unit/cm/z/axtoth-axis-shadow.grp diff --git a/mpq/unit/cm/zerg/axtoth-axis.grp b/mpq/unit/cm/z/axtoth-axis.grp similarity index 100% rename from mpq/unit/cm/zerg/axtoth-axis.grp rename to mpq/unit/cm/z/axtoth-axis.grp diff --git a/mpq/unit/cm/zerg/bactalisk-acid.grp b/mpq/unit/cm/z/bactalisk-acid.grp similarity index 100% rename from mpq/unit/cm/zerg/bactalisk-acid.grp rename to mpq/unit/cm/z/bactalisk-acid.grp diff --git a/mpq/unit/cm/zerg/bactalisk-attack.lol b/mpq/unit/cm/z/bactalisk-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/bactalisk-attack.lol rename to mpq/unit/cm/z/bactalisk-attack.lol diff --git a/mpq/unit/cm/zerg/bactalisk-attack2.lol b/mpq/unit/cm/z/bactalisk-attack2.lol similarity index 100% rename from mpq/unit/cm/zerg/bactalisk-attack2.lol rename to mpq/unit/cm/z/bactalisk-attack2.lol diff --git a/mpq/unit/cm/zerg/bactalisk-birth.grp b/mpq/unit/cm/z/bactalisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/bactalisk-birth.grp rename to mpq/unit/cm/z/bactalisk-birth.grp diff --git a/mpq/unit/cm/zerg/bactalisk-death.grp b/mpq/unit/cm/z/bactalisk-death.grp similarity index 100% rename from mpq/unit/cm/zerg/bactalisk-death.grp rename to mpq/unit/cm/z/bactalisk-death.grp diff --git a/mpq/unit/cm/zerg/bactalisk-shadow.grp b/mpq/unit/cm/z/bactalisk-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/bactalisk-shadow.grp rename to mpq/unit/cm/z/bactalisk-shadow.grp diff --git a/mpq/unit/cm/zerg/bactalisk.grp b/mpq/unit/cm/z/bactalisk.grp similarity index 100% rename from mpq/unit/cm/zerg/bactalisk.grp rename to mpq/unit/cm/z/bactalisk.grp diff --git a/mpq/unit/cm/zerg/carapace-swarm-small.grp b/mpq/unit/cm/z/carapace-swarm-small.grp similarity index 100% rename from mpq/unit/cm/zerg/carapace-swarm-small.grp rename to mpq/unit/cm/z/carapace-swarm-small.grp diff --git a/mpq/unit/cm/zerg/cherbrathalor-attack.lol b/mpq/unit/cm/z/cherbrathalor-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/cherbrathalor-attack.lol rename to mpq/unit/cm/z/cherbrathalor-attack.lol diff --git a/mpq/unit/cm/zerg/cherbrathalor-birth.grp b/mpq/unit/cm/z/cherbrathalor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/cherbrathalor-birth.grp rename to mpq/unit/cm/z/cherbrathalor-birth.grp diff --git a/mpq/unit/cm/zerg/cherbrathalor-shadow.grp b/mpq/unit/cm/z/cherbrathalor-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/cherbrathalor-shadow.grp rename to mpq/unit/cm/z/cherbrathalor-shadow.grp diff --git a/mpq/unit/cm/zerg/cherbrathalor.grp b/mpq/unit/cm/z/cherbrathalor.grp similarity index 100% rename from mpq/unit/cm/zerg/cherbrathalor.grp rename to mpq/unit/cm/z/cherbrathalor.grp diff --git a/mpq/unit/cm/zerg/chokralgant-chaszal.grp b/mpq/unit/cm/z/chokralgant-chaszal.grp similarity index 100% rename from mpq/unit/cm/zerg/chokralgant-chaszal.grp rename to mpq/unit/cm/z/chokralgant-chaszal.grp diff --git a/mpq/unit/cm/zerg/chrysalis-damage.lof b/mpq/unit/cm/z/chrysalis-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/chrysalis-damage.lof rename to mpq/unit/cm/z/chrysalis-damage.lof diff --git a/mpq/unit/cm/zerg/cikralisk-attack.lol b/mpq/unit/cm/z/cikralisk-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/cikralisk-attack.lol rename to mpq/unit/cm/z/cikralisk-attack.lol diff --git a/mpq/unit/cm/zerg/cikralisk-birth.grp b/mpq/unit/cm/z/cikralisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/cikralisk-birth.grp rename to mpq/unit/cm/z/cikralisk-birth.grp diff --git a/mpq/unit/cm/zerg/cikralisk-mutate.grp b/mpq/unit/cm/z/cikralisk-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/cikralisk-mutate.grp rename to mpq/unit/cm/z/cikralisk-mutate.grp diff --git a/mpq/unit/cm/zerg/cikralisk-shadow.grp b/mpq/unit/cm/z/cikralisk-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/cikralisk-shadow.grp rename to mpq/unit/cm/z/cikralisk-shadow.grp diff --git a/mpq/unit/cm/zerg/cikralisk.grp b/mpq/unit/cm/z/cikralisk.grp similarity index 100% rename from mpq/unit/cm/zerg/cikralisk.grp rename to mpq/unit/cm/z/cikralisk.grp diff --git a/mpq/unit/cm/zerg/corrosive-touch-explosion-medium.grp b/mpq/unit/cm/z/corrosive-touch-explosion-medium.grp similarity index 100% rename from mpq/unit/cm/zerg/corrosive-touch-explosion-medium.grp rename to mpq/unit/cm/z/corrosive-touch-explosion-medium.grp diff --git a/mpq/unit/cm/zerg/corrosive-touch-explosion-small.grp b/mpq/unit/cm/z/corrosive-touch-explosion-small.grp similarity index 100% rename from mpq/unit/cm/zerg/corrosive-touch-explosion-small.grp rename to mpq/unit/cm/z/corrosive-touch-explosion-small.grp diff --git a/mpq/unit/cm/zerg/eskigant-damage.lof b/mpq/unit/cm/z/eskigant-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/eskigant-damage.lof rename to mpq/unit/cm/z/eskigant-damage.lof diff --git a/mpq/unit/cm/zerg/eskigant-gas.los b/mpq/unit/cm/z/eskigant-gas.los similarity index 100% rename from mpq/unit/cm/zerg/eskigant-gas.los rename to mpq/unit/cm/z/eskigant-gas.los diff --git a/mpq/unit/cm/zerg/eskigant-shadow.grp b/mpq/unit/cm/z/eskigant-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/eskigant-shadow.grp rename to mpq/unit/cm/z/eskigant-shadow.grp diff --git a/mpq/unit/cm/zerg/eskigant.grp b/mpq/unit/cm/z/eskigant.grp similarity index 100% rename from mpq/unit/cm/zerg/eskigant.grp rename to mpq/unit/cm/z/eskigant.grp diff --git a/mpq/unit/cm/zerg/evigrilisk-birth.grp b/mpq/unit/cm/z/evigrilisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/evigrilisk-birth.grp rename to mpq/unit/cm/z/evigrilisk-birth.grp diff --git a/mpq/unit/cm/zerg/evigrilisk-mutate.grp b/mpq/unit/cm/z/evigrilisk-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/evigrilisk-mutate.grp rename to mpq/unit/cm/z/evigrilisk-mutate.grp diff --git a/mpq/unit/cm/zerg/evigrilisk-remains.grp b/mpq/unit/cm/z/evigrilisk-remains.grp similarity index 100% rename from mpq/unit/cm/zerg/evigrilisk-remains.grp rename to mpq/unit/cm/z/evigrilisk-remains.grp diff --git a/mpq/unit/cm/zerg/evigrilisk-shadow.grp b/mpq/unit/cm/z/evigrilisk-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/evigrilisk-shadow.grp rename to mpq/unit/cm/z/evigrilisk-shadow.grp diff --git a/mpq/unit/cm/zerg/evigrilisk.grp b/mpq/unit/cm/z/evigrilisk.grp similarity index 100% rename from mpq/unit/cm/zerg/evigrilisk.grp rename to mpq/unit/cm/z/evigrilisk.grp diff --git a/mpq/unit/cm/zerg/ezigrisant-damage.lof b/mpq/unit/cm/z/ezigrisant-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/ezigrisant-damage.lof rename to mpq/unit/cm/z/ezigrisant-damage.lof diff --git a/mpq/unit/cm/zerg/ezigrisant-puff.los b/mpq/unit/cm/z/ezigrisant-puff.los similarity index 100% rename from mpq/unit/cm/zerg/ezigrisant-puff.los rename to mpq/unit/cm/z/ezigrisant-puff.los diff --git a/mpq/unit/cm/zerg/ezigrisant-shadow.grp b/mpq/unit/cm/z/ezigrisant-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/ezigrisant-shadow.grp rename to mpq/unit/cm/z/ezigrisant-shadow.grp diff --git a/mpq/unit/cm/zerg/ezigrisant.grp b/mpq/unit/cm/z/ezigrisant.grp similarity index 100% rename from mpq/unit/cm/zerg/ezigrisant.grp rename to mpq/unit/cm/z/ezigrisant.grp diff --git a/mpq/unit/cm/zerg/geszithalor-birth.grp b/mpq/unit/cm/z/geszithalor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/geszithalor-birth.grp rename to mpq/unit/cm/z/geszithalor-birth.grp diff --git a/mpq/unit/cm/zerg/geszithalor-mutate.grp b/mpq/unit/cm/z/geszithalor-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/geszithalor-mutate.grp rename to mpq/unit/cm/z/geszithalor-mutate.grp diff --git a/mpq/unit/cm/zerg/geszkath-grotto-damage.lof b/mpq/unit/cm/z/geszkath-grotto-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/geszkath-grotto-damage.lof rename to mpq/unit/cm/z/geszkath-grotto-damage.lof diff --git a/mpq/unit/cm/zerg/geszkath-grotto-shadow.grp b/mpq/unit/cm/z/geszkath-grotto-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/geszkath-grotto-shadow.grp rename to mpq/unit/cm/z/geszkath-grotto-shadow.grp diff --git a/mpq/unit/cm/zerg/geszkath-grotto.grp b/mpq/unit/cm/z/geszkath-grotto.grp similarity index 100% rename from mpq/unit/cm/zerg/geszkath-grotto.grp rename to mpq/unit/cm/z/geszkath-grotto.grp diff --git a/mpq/unit/cm/zerg/ghitorokor-birth.grp b/mpq/unit/cm/z/ghitorokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/ghitorokor-birth.grp rename to mpq/unit/cm/z/ghitorokor-birth.grp diff --git a/mpq/unit/cm/zerg/ghitorokor.grp b/mpq/unit/cm/z/ghitorokor.grp similarity index 100% rename from mpq/unit/cm/zerg/ghitorokor.grp rename to mpq/unit/cm/z/ghitorokor.grp diff --git a/mpq/unit/cm/zerg/gorgral-swamp-damage.lof b/mpq/unit/cm/z/gorgral-swamp-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/gorgral-swamp-damage.lof rename to mpq/unit/cm/z/gorgral-swamp-damage.lof diff --git a/mpq/unit/cm/zerg/gorgral-swamp-shadow.grp b/mpq/unit/cm/z/gorgral-swamp-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/gorgral-swamp-shadow.grp rename to mpq/unit/cm/z/gorgral-swamp-shadow.grp diff --git a/mpq/unit/cm/zerg/gorgral-swamp.grp b/mpq/unit/cm/z/gorgral-swamp.grp similarity index 100% rename from mpq/unit/cm/zerg/gorgral-swamp.grp rename to mpq/unit/cm/z/gorgral-swamp.grp diff --git a/mpq/unit/cm/zerg/gorgrokor-birth.grp b/mpq/unit/cm/z/gorgrokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/gorgrokor-birth.grp rename to mpq/unit/cm/z/gorgrokor-birth.grp diff --git a/mpq/unit/cm/zerg/gorgrokor-death.grp b/mpq/unit/cm/z/gorgrokor-death.grp similarity index 100% rename from mpq/unit/cm/zerg/gorgrokor-death.grp rename to mpq/unit/cm/z/gorgrokor-death.grp diff --git a/mpq/unit/cm/zerg/gorgrokor-mutate.grp b/mpq/unit/cm/z/gorgrokor-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/gorgrokor-mutate.grp rename to mpq/unit/cm/z/gorgrokor-mutate.grp diff --git a/mpq/unit/cm/zerg/gorgrokor.grp b/mpq/unit/cm/z/gorgrokor.grp similarity index 100% rename from mpq/unit/cm/zerg/gorgrokor.grp rename to mpq/unit/cm/z/gorgrokor.grp diff --git a/mpq/unit/cm/zerg/gosvileth-birth.grp b/mpq/unit/cm/z/gosvileth-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/gosvileth-birth.grp rename to mpq/unit/cm/z/gosvileth-birth.grp diff --git a/mpq/unit/cm/zerg/gosvileth.grp b/mpq/unit/cm/z/gosvileth.grp similarity index 100% rename from mpq/unit/cm/zerg/gosvileth.grp rename to mpq/unit/cm/z/gosvileth.grp diff --git a/mpq/unit/cm/zerg/gosvileth.log b/mpq/unit/cm/z/gosvileth.log similarity index 100% rename from mpq/unit/cm/zerg/gosvileth.log rename to mpq/unit/cm/z/gosvileth.log diff --git a/mpq/unit/cm/zerg/gosvileth.loo b/mpq/unit/cm/z/gosvileth.loo similarity index 100% rename from mpq/unit/cm/zerg/gosvileth.loo rename to mpq/unit/cm/z/gosvileth.loo diff --git a/mpq/unit/cm/zerg/infested-large.grp b/mpq/unit/cm/z/infested-large.grp similarity index 100% rename from mpq/unit/cm/zerg/infested-large.grp rename to mpq/unit/cm/z/infested-large.grp diff --git a/mpq/unit/cm/zerg/infested-medium.grp b/mpq/unit/cm/z/infested-medium.grp similarity index 100% rename from mpq/unit/cm/zerg/infested-medium.grp rename to mpq/unit/cm/z/infested-medium.grp diff --git a/mpq/unit/cm/zerg/infested-small.grp b/mpq/unit/cm/z/infested-small.grp similarity index 100% rename from mpq/unit/cm/zerg/infested-small.grp rename to mpq/unit/cm/z/infested-small.grp diff --git a/mpq/unit/cm/zerg/infestedtemplar-shadow.grp b/mpq/unit/cm/z/infestedtemplar-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/infestedtemplar-shadow.grp rename to mpq/unit/cm/z/infestedtemplar-shadow.grp diff --git a/mpq/unit/cm/zerg/infestedtemplar.grp b/mpq/unit/cm/z/infestedtemplar.grp similarity index 100% rename from mpq/unit/cm/zerg/infestedtemplar.grp rename to mpq/unit/cm/z/infestedtemplar.grp diff --git a/mpq/unit/cm/zerg/irol-iris-damage.lof b/mpq/unit/cm/z/irol-iris-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/irol-iris-damage.lof rename to mpq/unit/cm/z/irol-iris-damage.lof diff --git a/mpq/unit/cm/zerg/irol-iris-shadow.grp b/mpq/unit/cm/z/irol-iris-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/irol-iris-shadow.grp rename to mpq/unit/cm/z/irol-iris-shadow.grp diff --git a/mpq/unit/cm/zerg/irol-iris.grp b/mpq/unit/cm/z/irol-iris.grp similarity index 100% rename from mpq/unit/cm/zerg/irol-iris.grp rename to mpq/unit/cm/z/irol-iris.grp diff --git a/mpq/unit/cm/zerg/iroleth-birth.grp b/mpq/unit/cm/z/iroleth-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/iroleth-birth.grp rename to mpq/unit/cm/z/iroleth-birth.grp diff --git a/mpq/unit/cm/zerg/iroleth.grp b/mpq/unit/cm/z/iroleth.grp similarity index 100% rename from mpq/unit/cm/zerg/iroleth.grp rename to mpq/unit/cm/z/iroleth.grp diff --git a/mpq/unit/cm/zerg/izirokor-attack.lol b/mpq/unit/cm/z/izirokor-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/izirokor-attack.lol rename to mpq/unit/cm/z/izirokor-attack.lol diff --git a/mpq/unit/cm/zerg/izirokor-birth.grp b/mpq/unit/cm/z/izirokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/izirokor-birth.grp rename to mpq/unit/cm/z/izirokor-birth.grp diff --git a/mpq/unit/cm/zerg/izirokor-mutate.grp b/mpq/unit/cm/z/izirokor-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/izirokor-mutate.grp rename to mpq/unit/cm/z/izirokor-mutate.grp diff --git a/mpq/unit/cm/zerg/izirokor-projectile.grp b/mpq/unit/cm/z/izirokor-projectile.grp similarity index 100% rename from mpq/unit/cm/zerg/izirokor-projectile.grp rename to mpq/unit/cm/z/izirokor-projectile.grp diff --git a/mpq/unit/cm/zerg/izirokor-remains.grp b/mpq/unit/cm/z/izirokor-remains.grp similarity index 100% rename from mpq/unit/cm/zerg/izirokor-remains.grp rename to mpq/unit/cm/z/izirokor-remains.grp diff --git a/mpq/unit/cm/zerg/izirokor-shadow.grp b/mpq/unit/cm/z/izirokor-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/izirokor-shadow.grp rename to mpq/unit/cm/z/izirokor-shadow.grp diff --git a/mpq/unit/cm/zerg/izirokor.grp b/mpq/unit/cm/z/izirokor.grp similarity index 100% rename from mpq/unit/cm/zerg/izirokor.grp rename to mpq/unit/cm/z/izirokor.grp diff --git a/mpq/unit/cm/zerg/izkag-iteth-damage.lof b/mpq/unit/cm/z/izkag-iteth-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/izkag-iteth-damage.lof rename to mpq/unit/cm/z/izkag-iteth-damage.lof diff --git a/mpq/unit/cm/zerg/izkag-iteth-shadow.grp b/mpq/unit/cm/z/izkag-iteth-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/izkag-iteth-shadow.grp rename to mpq/unit/cm/z/izkag-iteth-shadow.grp diff --git a/mpq/unit/cm/zerg/izkag-iteth.grp b/mpq/unit/cm/z/izkag-iteth.grp similarity index 100% rename from mpq/unit/cm/zerg/izkag-iteth.grp rename to mpq/unit/cm/z/izkag-iteth.grp diff --git a/mpq/unit/cm/zerg/kagralisk-birth.grp b/mpq/unit/cm/z/kagralisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/kagralisk-birth.grp rename to mpq/unit/cm/z/kagralisk-birth.grp diff --git a/mpq/unit/cm/zerg/kagralisk-mutate.grp b/mpq/unit/cm/z/kagralisk-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/kagralisk-mutate.grp rename to mpq/unit/cm/z/kagralisk-mutate.grp diff --git a/mpq/unit/cm/zerg/kagralisk-remains.grp b/mpq/unit/cm/z/kagralisk-remains.grp similarity index 100% rename from mpq/unit/cm/zerg/kagralisk-remains.grp rename to mpq/unit/cm/z/kagralisk-remains.grp diff --git a/mpq/unit/cm/zerg/kagralisk-shadow.grp b/mpq/unit/cm/z/kagralisk-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/kagralisk-shadow.grp rename to mpq/unit/cm/z/kagralisk-shadow.grp diff --git a/mpq/unit/cm/zerg/kagralisk-venom.grp b/mpq/unit/cm/z/kagralisk-venom.grp similarity index 100% rename from mpq/unit/cm/zerg/kagralisk-venom.grp rename to mpq/unit/cm/z/kagralisk-venom.grp diff --git a/mpq/unit/cm/zerg/kagralisk-weaponhit.grp b/mpq/unit/cm/z/kagralisk-weaponhit.grp similarity index 100% rename from mpq/unit/cm/zerg/kagralisk-weaponhit.grp rename to mpq/unit/cm/z/kagralisk-weaponhit.grp diff --git a/mpq/unit/cm/zerg/kagralisk.grp b/mpq/unit/cm/z/kagralisk.grp similarity index 100% rename from mpq/unit/cm/zerg/kagralisk.grp rename to mpq/unit/cm/z/kagralisk.grp diff --git a/mpq/unit/cm/zerg/kalkalisk-attack.lol b/mpq/unit/cm/z/kalkalisk-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/kalkalisk-attack.lol rename to mpq/unit/cm/z/kalkalisk-attack.lol diff --git a/mpq/unit/cm/zerg/kalkalisk-birth-flying.grp b/mpq/unit/cm/z/kalkalisk-birth-flying.grp similarity index 100% rename from mpq/unit/cm/zerg/kalkalisk-birth-flying.grp rename to mpq/unit/cm/z/kalkalisk-birth-flying.grp diff --git a/mpq/unit/cm/zerg/kalkalisk-birth.grp b/mpq/unit/cm/z/kalkalisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/kalkalisk-birth.grp rename to mpq/unit/cm/z/kalkalisk-birth.grp diff --git a/mpq/unit/cm/zerg/kalkalisk-mutate.grp b/mpq/unit/cm/z/kalkalisk-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/kalkalisk-mutate.grp rename to mpq/unit/cm/z/kalkalisk-mutate.grp diff --git a/mpq/unit/cm/zerg/kalkalisk-spore.grp b/mpq/unit/cm/z/kalkalisk-spore.grp similarity index 100% rename from mpq/unit/cm/zerg/kalkalisk-spore.grp rename to mpq/unit/cm/z/kalkalisk-spore.grp diff --git a/mpq/unit/cm/zerg/kalkalisk.grp b/mpq/unit/cm/z/kalkalisk.grp similarity index 100% rename from mpq/unit/cm/zerg/kalkalisk.grp rename to mpq/unit/cm/z/kalkalisk.grp diff --git a/mpq/unit/cm/zerg/kalkiir-lake-damage.lof b/mpq/unit/cm/z/kalkiir-lake-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/kalkiir-lake-damage.lof rename to mpq/unit/cm/z/kalkiir-lake-damage.lof diff --git a/mpq/unit/cm/zerg/kalkiir-lake-shadow.grp b/mpq/unit/cm/z/kalkiir-lake-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/kalkiir-lake-shadow.grp rename to mpq/unit/cm/z/kalkiir-lake-shadow.grp diff --git a/mpq/unit/cm/zerg/kalkiir-lake.grp b/mpq/unit/cm/z/kalkiir-lake.grp similarity index 100% rename from mpq/unit/cm/zerg/kalkiir-lake.grp rename to mpq/unit/cm/z/kalkiir-lake.grp diff --git a/mpq/unit/cm/zerg/kazitrith-cesiant-shadow.grp b/mpq/unit/cm/z/kazitrith-cesiant-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/kazitrith-cesiant-shadow.grp rename to mpq/unit/cm/z/kazitrith-cesiant-shadow.grp diff --git a/mpq/unit/cm/zerg/kazitrith-cesiant.grp b/mpq/unit/cm/z/kazitrith-cesiant.grp similarity index 100% rename from mpq/unit/cm/zerg/kazitrith-cesiant.grp rename to mpq/unit/cm/z/kazitrith-cesiant.grp diff --git a/mpq/unit/cm/zerg/keskathalor-attack.lol b/mpq/unit/cm/z/keskathalor-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/keskathalor-attack.lol rename to mpq/unit/cm/z/keskathalor-attack.lol diff --git a/mpq/unit/cm/zerg/keskathalor-birth.grp b/mpq/unit/cm/z/keskathalor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/keskathalor-birth.grp rename to mpq/unit/cm/z/keskathalor-birth.grp diff --git a/mpq/unit/cm/zerg/keskathalor-shadow.grp b/mpq/unit/cm/z/keskathalor-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/keskathalor-shadow.grp rename to mpq/unit/cm/z/keskathalor-shadow.grp diff --git a/mpq/unit/cm/zerg/keskathalor.grp b/mpq/unit/cm/z/keskathalor.grp similarity index 100% rename from mpq/unit/cm/zerg/keskathalor.grp rename to mpq/unit/cm/z/keskathalor.grp diff --git a/mpq/unit/cm/zerg/kethraj-keep-damage.lof b/mpq/unit/cm/z/kethraj-keep-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/kethraj-keep-damage.lof rename to mpq/unit/cm/z/kethraj-keep-damage.lof diff --git a/mpq/unit/cm/zerg/kethraj-keep-shadow.grp b/mpq/unit/cm/z/kethraj-keep-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/kethraj-keep-shadow.grp rename to mpq/unit/cm/z/kethraj-keep-shadow.grp diff --git a/mpq/unit/cm/zerg/kethraj-keep.grp b/mpq/unit/cm/z/kethraj-keep.grp similarity index 100% rename from mpq/unit/cm/zerg/kethraj-keep.grp rename to mpq/unit/cm/z/kethraj-keep.grp diff --git a/mpq/unit/cm/zerg/kethrostalor-attack.lol b/mpq/unit/cm/z/kethrostalor-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/kethrostalor-attack.lol rename to mpq/unit/cm/z/kethrostalor-attack.lol diff --git a/mpq/unit/cm/zerg/kethrostalor-birth.grp b/mpq/unit/cm/z/kethrostalor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/kethrostalor-birth.grp rename to mpq/unit/cm/z/kethrostalor-birth.grp diff --git a/mpq/unit/cm/zerg/kethrostalor-shadow.grp b/mpq/unit/cm/z/kethrostalor-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/kethrostalor-shadow.grp rename to mpq/unit/cm/z/kethrostalor-shadow.grp diff --git a/mpq/unit/cm/zerg/kethrostalor.grp b/mpq/unit/cm/z/kethrostalor.grp similarity index 100% rename from mpq/unit/cm/zerg/kethrostalor.grp rename to mpq/unit/cm/z/kethrostalor.grp diff --git a/mpq/unit/cm/zerg/konvilisk-attack.lol b/mpq/unit/cm/z/konvilisk-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/konvilisk-attack.lol rename to mpq/unit/cm/z/konvilisk-attack.lol diff --git a/mpq/unit/cm/zerg/konvilisk-birth.grp b/mpq/unit/cm/z/konvilisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/konvilisk-birth.grp rename to mpq/unit/cm/z/konvilisk-birth.grp diff --git a/mpq/unit/cm/zerg/konvilisk-death.grp b/mpq/unit/cm/z/konvilisk-death.grp similarity index 100% rename from mpq/unit/cm/zerg/konvilisk-death.grp rename to mpq/unit/cm/z/konvilisk-death.grp diff --git a/mpq/unit/cm/zerg/konvilisk-shadow.grp b/mpq/unit/cm/z/konvilisk-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/konvilisk-shadow.grp rename to mpq/unit/cm/z/konvilisk-shadow.grp diff --git a/mpq/unit/cm/zerg/konvilisk.grp b/mpq/unit/cm/z/konvilisk.grp similarity index 100% rename from mpq/unit/cm/zerg/konvilisk.grp rename to mpq/unit/cm/z/konvilisk.grp diff --git a/mpq/unit/cm/zerg/lakizilisk-death.grp b/mpq/unit/cm/z/lakizilisk-death.grp similarity index 100% rename from mpq/unit/cm/zerg/lakizilisk-death.grp rename to mpq/unit/cm/z/lakizilisk-death.grp diff --git a/mpq/unit/cm/zerg/lakizilisk-mutate.grp b/mpq/unit/cm/z/lakizilisk-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/lakizilisk-mutate.grp rename to mpq/unit/cm/z/lakizilisk-mutate.grp diff --git a/mpq/unit/cm/zerg/larvosk-cesiant-damage.lof b/mpq/unit/cm/z/larvosk-cesiant-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/larvosk-cesiant-damage.lof rename to mpq/unit/cm/z/larvosk-cesiant-damage.lof diff --git a/mpq/unit/cm/zerg/larvosk-cesiant-shadow.grp b/mpq/unit/cm/z/larvosk-cesiant-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/larvosk-cesiant-shadow.grp rename to mpq/unit/cm/z/larvosk-cesiant-shadow.grp diff --git a/mpq/unit/cm/zerg/larvosk-cesiant.grp b/mpq/unit/cm/z/larvosk-cesiant.grp similarity index 100% rename from mpq/unit/cm/zerg/larvosk-cesiant.grp rename to mpq/unit/cm/z/larvosk-cesiant.grp diff --git a/mpq/unit/cm/zerg/liiralisk-attack.lol b/mpq/unit/cm/z/liiralisk-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/liiralisk-attack.lol rename to mpq/unit/cm/z/liiralisk-attack.lol diff --git a/mpq/unit/cm/zerg/liiralisk-birth.grp b/mpq/unit/cm/z/liiralisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/liiralisk-birth.grp rename to mpq/unit/cm/z/liiralisk-birth.grp diff --git a/mpq/unit/cm/zerg/liiralisk-glave.grp b/mpq/unit/cm/z/liiralisk-glave.grp similarity index 100% rename from mpq/unit/cm/zerg/liiralisk-glave.grp rename to mpq/unit/cm/z/liiralisk-glave.grp diff --git a/mpq/unit/cm/zerg/liiralisk-shadow.grp b/mpq/unit/cm/z/liiralisk-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/liiralisk-shadow.grp rename to mpq/unit/cm/z/liiralisk-shadow.grp diff --git a/mpq/unit/cm/zerg/liiralisk.grp b/mpq/unit/cm/z/liiralisk.grp similarity index 100% rename from mpq/unit/cm/zerg/liiralisk.grp rename to mpq/unit/cm/z/liiralisk.grp diff --git a/mpq/unit/cm/zerg/malkothrokor-birth.grp b/mpq/unit/cm/z/malkothrokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/malkothrokor-birth.grp rename to mpq/unit/cm/z/malkothrokor-birth.grp diff --git a/mpq/unit/cm/zerg/malkothrokor-death.grp b/mpq/unit/cm/z/malkothrokor-death.grp similarity index 100% rename from mpq/unit/cm/zerg/malkothrokor-death.grp rename to mpq/unit/cm/z/malkothrokor-death.grp diff --git a/mpq/unit/cm/zerg/malkothrokor-shadow.grp b/mpq/unit/cm/z/malkothrokor-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/malkothrokor-shadow.grp rename to mpq/unit/cm/z/malkothrokor-shadow.grp diff --git a/mpq/unit/cm/zerg/malkothrokor.grp b/mpq/unit/cm/z/malkothrokor.grp similarity index 100% rename from mpq/unit/cm/zerg/malkothrokor.grp rename to mpq/unit/cm/z/malkothrokor.grp diff --git a/mpq/unit/cm/zerg/mortothrokor-birth.grp b/mpq/unit/cm/z/mortothrokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/mortothrokor-birth.grp rename to mpq/unit/cm/z/mortothrokor-birth.grp diff --git a/mpq/unit/cm/zerg/mortothrokor-passive.grp b/mpq/unit/cm/z/mortothrokor-passive.grp similarity index 100% rename from mpq/unit/cm/zerg/mortothrokor-passive.grp rename to mpq/unit/cm/z/mortothrokor-passive.grp diff --git a/mpq/unit/cm/zerg/mortothrokor-remnants.grp b/mpq/unit/cm/z/mortothrokor-remnants.grp similarity index 100% rename from mpq/unit/cm/zerg/mortothrokor-remnants.grp rename to mpq/unit/cm/z/mortothrokor-remnants.grp diff --git a/mpq/unit/cm/zerg/mortothrokor-shadow.grp b/mpq/unit/cm/z/mortothrokor-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/mortothrokor-shadow.grp rename to mpq/unit/cm/z/mortothrokor-shadow.grp diff --git a/mpq/unit/cm/zerg/mortothrokor.grp b/mpq/unit/cm/z/mortothrokor.grp similarity index 100% rename from mpq/unit/cm/zerg/mortothrokor.grp rename to mpq/unit/cm/z/mortothrokor.grp diff --git a/mpq/unit/cm/zerg/nathrokor-attack.lol b/mpq/unit/cm/z/nathrokor-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/nathrokor-attack.lol rename to mpq/unit/cm/z/nathrokor-attack.lol diff --git a/mpq/unit/cm/zerg/nathrokor-birth.grp b/mpq/unit/cm/z/nathrokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/nathrokor-birth.grp rename to mpq/unit/cm/z/nathrokor-birth.grp diff --git a/mpq/unit/cm/zerg/nathrokor-birth.lob b/mpq/unit/cm/z/nathrokor-birth.lob similarity index 100% rename from mpq/unit/cm/zerg/nathrokor-birth.lob rename to mpq/unit/cm/z/nathrokor-birth.lob diff --git a/mpq/unit/cm/zerg/nathrokor-death.grp b/mpq/unit/cm/z/nathrokor-death.grp similarity index 100% rename from mpq/unit/cm/zerg/nathrokor-death.grp rename to mpq/unit/cm/z/nathrokor-death.grp diff --git a/mpq/unit/cm/zerg/nathrokor-mutate.grp b/mpq/unit/cm/z/nathrokor-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/nathrokor-mutate.grp rename to mpq/unit/cm/z/nathrokor-mutate.grp diff --git a/mpq/unit/cm/zerg/nathrokor.grp b/mpq/unit/cm/z/nathrokor.grp similarity index 100% rename from mpq/unit/cm/zerg/nathrokor.grp rename to mpq/unit/cm/z/nathrokor.grp diff --git a/mpq/unit/cm/zerg/ocsal-cesiant-damage.lof b/mpq/unit/cm/z/ocsal-cesiant-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/ocsal-cesiant-damage.lof rename to mpq/unit/cm/z/ocsal-cesiant-damage.lof diff --git a/mpq/unit/cm/zerg/ocsal-cesiant-shadow.grp b/mpq/unit/cm/z/ocsal-cesiant-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/ocsal-cesiant-shadow.grp rename to mpq/unit/cm/z/ocsal-cesiant-shadow.grp diff --git a/mpq/unit/cm/zerg/ocsal-cesiant.grp b/mpq/unit/cm/z/ocsal-cesiant.grp similarity index 100% rename from mpq/unit/cm/zerg/ocsal-cesiant.grp rename to mpq/unit/cm/z/ocsal-cesiant.grp diff --git a/mpq/unit/cm/zerg/ocsal-larva.grp b/mpq/unit/cm/z/ocsal-larva.grp similarity index 100% rename from mpq/unit/cm/zerg/ocsal-larva.grp rename to mpq/unit/cm/z/ocsal-larva.grp diff --git a/mpq/unit/cm/zerg/ocsal-overlay.grp b/mpq/unit/cm/z/ocsal-overlay.grp similarity index 100% rename from mpq/unit/cm/zerg/ocsal-overlay.grp rename to mpq/unit/cm/z/ocsal-overlay.grp diff --git a/mpq/unit/cm/zerg/ogroszaleth-attack.lol b/mpq/unit/cm/z/ogroszaleth-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/ogroszaleth-attack.lol rename to mpq/unit/cm/z/ogroszaleth-attack.lol diff --git a/mpq/unit/cm/zerg/ogroszaleth-birth.grp b/mpq/unit/cm/z/ogroszaleth-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/ogroszaleth-birth.grp rename to mpq/unit/cm/z/ogroszaleth-birth.grp diff --git a/mpq/unit/cm/zerg/ogroszaleth-shadow.grp b/mpq/unit/cm/z/ogroszaleth-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/ogroszaleth-shadow.grp rename to mpq/unit/cm/z/ogroszaleth-shadow.grp diff --git a/mpq/unit/cm/zerg/ogroszaleth.grp b/mpq/unit/cm/z/ogroszaleth.grp similarity index 100% rename from mpq/unit/cm/zerg/ogroszaleth.grp rename to mpq/unit/cm/z/ogroszaleth.grp diff --git a/mpq/unit/cm/zerg/okrimnilisk-birth.grp b/mpq/unit/cm/z/okrimnilisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/okrimnilisk-birth.grp rename to mpq/unit/cm/z/okrimnilisk-birth.grp diff --git a/mpq/unit/cm/zerg/okrimnilisk.grp b/mpq/unit/cm/z/okrimnilisk.grp similarity index 100% rename from mpq/unit/cm/zerg/okrimnilisk.grp rename to mpq/unit/cm/z/okrimnilisk.grp diff --git a/mpq/unit/cm/zerg/othstol-oviform-damage.lof b/mpq/unit/cm/z/othstol-oviform-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/othstol-oviform-damage.lof rename to mpq/unit/cm/z/othstol-oviform-damage.lof diff --git a/mpq/unit/cm/zerg/othstol-oviform-shadow.grp b/mpq/unit/cm/z/othstol-oviform-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/othstol-oviform-shadow.grp rename to mpq/unit/cm/z/othstol-oviform-shadow.grp diff --git a/mpq/unit/cm/zerg/othstol-oviform.grp b/mpq/unit/cm/z/othstol-oviform.grp similarity index 100% rename from mpq/unit/cm/zerg/othstol-oviform.grp rename to mpq/unit/cm/z/othstol-oviform.grp diff --git a/mpq/unit/cm/zerg/othstoleth-birth.grp b/mpq/unit/cm/z/othstoleth-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/othstoleth-birth.grp rename to mpq/unit/cm/z/othstoleth-birth.grp diff --git a/mpq/unit/cm/zerg/othstoleth.grp b/mpq/unit/cm/z/othstoleth.grp similarity index 100% rename from mpq/unit/cm/zerg/othstoleth.grp rename to mpq/unit/cm/z/othstoleth.grp diff --git a/mpq/unit/cm/zerg/overmind-cocoon-damage.lof b/mpq/unit/cm/z/overmind-cocoon-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/overmind-cocoon-damage.lof rename to mpq/unit/cm/z/overmind-cocoon-damage.lof diff --git a/mpq/unit/cm/zerg/overmind-damage.lof b/mpq/unit/cm/z/overmind-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/overmind-damage.lof rename to mpq/unit/cm/z/overmind-damage.lof diff --git a/mpq/unit/cm/zerg/overmind-shadow.grp b/mpq/unit/cm/z/overmind-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/overmind-shadow.grp rename to mpq/unit/cm/z/overmind-shadow.grp diff --git a/mpq/unit/cm/zerg/overmind-shell-damage.lof b/mpq/unit/cm/z/overmind-shell-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/overmind-shell-damage.lof rename to mpq/unit/cm/z/overmind-shell-damage.lof diff --git a/mpq/unit/cm/zerg/overmind-shell-shadow.grp b/mpq/unit/cm/z/overmind-shell-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/overmind-shell-shadow.grp rename to mpq/unit/cm/z/overmind-shell-shadow.grp diff --git a/mpq/unit/cm/zerg/ovileth-death.grp b/mpq/unit/cm/z/ovileth-death.grp similarity index 100% rename from mpq/unit/cm/zerg/ovileth-death.grp rename to mpq/unit/cm/z/ovileth-death.grp diff --git a/mpq/unit/cm/zerg/plague-field.grp b/mpq/unit/cm/z/plague-field.grp similarity index 100% rename from mpq/unit/cm/zerg/plague-field.grp rename to mpq/unit/cm/z/plague-field.grp diff --git a/mpq/unit/cm/zerg/protathalor-birth.grp b/mpq/unit/cm/z/protathalor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/protathalor-birth.grp rename to mpq/unit/cm/z/protathalor-birth.grp diff --git a/mpq/unit/cm/zerg/protathalor-mutate.grp b/mpq/unit/cm/z/protathalor-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/protathalor-mutate.grp rename to mpq/unit/cm/z/protathalor-mutate.grp diff --git a/mpq/unit/cm/zerg/protathalor-shadow.grp b/mpq/unit/cm/z/protathalor-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/protathalor-shadow.grp rename to mpq/unit/cm/z/protathalor-shadow.grp diff --git a/mpq/unit/cm/zerg/protathalor.grp b/mpq/unit/cm/z/protathalor.grp similarity index 100% rename from mpq/unit/cm/zerg/protathalor.grp rename to mpq/unit/cm/z/protathalor.grp diff --git a/mpq/unit/cm/zerg/quazilisk-attack.grp b/mpq/unit/cm/z/quazilisk-attack.grp similarity index 100% rename from mpq/unit/cm/zerg/quazilisk-attack.grp rename to mpq/unit/cm/z/quazilisk-attack.grp diff --git a/mpq/unit/cm/zerg/quazilisk-birth.grp b/mpq/unit/cm/z/quazilisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/quazilisk-birth.grp rename to mpq/unit/cm/z/quazilisk-birth.grp diff --git a/mpq/unit/cm/zerg/quazilisk-mutate.grp b/mpq/unit/cm/z/quazilisk-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/quazilisk-mutate.grp rename to mpq/unit/cm/z/quazilisk-mutate.grp diff --git a/mpq/unit/cm/zerg/quazilisk-remains.grp b/mpq/unit/cm/z/quazilisk-remains.grp similarity index 100% rename from mpq/unit/cm/zerg/quazilisk-remains.grp rename to mpq/unit/cm/z/quazilisk-remains.grp diff --git a/mpq/unit/cm/zerg/quazilisk-shadow.grp b/mpq/unit/cm/z/quazilisk-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/quazilisk-shadow.grp rename to mpq/unit/cm/z/quazilisk-shadow.grp diff --git a/mpq/unit/cm/zerg/quazilisk.grp b/mpq/unit/cm/z/quazilisk.grp similarity index 100% rename from mpq/unit/cm/zerg/quazilisk.grp rename to mpq/unit/cm/z/quazilisk.grp diff --git a/mpq/unit/cm/zerg/rililisk.grp b/mpq/unit/cm/z/rililisk.grp similarity index 100% rename from mpq/unit/cm/zerg/rililisk.grp rename to mpq/unit/cm/z/rililisk.grp diff --git a/mpq/unit/cm/zerg/rilirokor-birth.grp b/mpq/unit/cm/z/rilirokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/rilirokor-birth.grp rename to mpq/unit/cm/z/rilirokor-birth.grp diff --git a/mpq/unit/cm/zerg/rubble-unit-medium.grp b/mpq/unit/cm/z/rubble-unit-medium.grp similarity index 100% rename from mpq/unit/cm/zerg/rubble-unit-medium.grp rename to mpq/unit/cm/z/rubble-unit-medium.grp diff --git a/mpq/unit/cm/zerg/rubble-unit-small.grp b/mpq/unit/cm/z/rubble-unit-small.grp similarity index 100% rename from mpq/unit/cm/zerg/rubble-unit-small.grp rename to mpq/unit/cm/z/rubble-unit-small.grp diff --git a/mpq/unit/cm/zerg/rubble-unit-tiny.grp b/mpq/unit/cm/z/rubble-unit-tiny.grp similarity index 100% rename from mpq/unit/cm/zerg/rubble-unit-tiny.grp rename to mpq/unit/cm/z/rubble-unit-tiny.grp diff --git a/mpq/unit/cm/zerg/sasyrvoleth-birth.grp b/mpq/unit/cm/z/sasyrvoleth-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/sasyrvoleth-birth.grp rename to mpq/unit/cm/z/sasyrvoleth-birth.grp diff --git a/mpq/unit/cm/zerg/sasyrvoleth.grp b/mpq/unit/cm/z/sasyrvoleth.grp similarity index 100% rename from mpq/unit/cm/zerg/sasyrvoleth.grp rename to mpq/unit/cm/z/sasyrvoleth.grp diff --git a/mpq/unit/cm/zerg/sire-damage.lof b/mpq/unit/cm/z/sire-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/sire-damage.lof rename to mpq/unit/cm/z/sire-damage.lof diff --git a/mpq/unit/cm/zerg/sire-shadow.grp b/mpq/unit/cm/z/sire-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/sire-shadow.grp rename to mpq/unit/cm/z/sire-shadow.grp diff --git a/mpq/unit/cm/zerg/sire.grp b/mpq/unit/cm/z/sire.grp similarity index 100% rename from mpq/unit/cm/zerg/sire.grp rename to mpq/unit/cm/z/sire.grp diff --git a/mpq/unit/cm/zerg/skibact-scab-shadow.grp b/mpq/unit/cm/z/skibact-scab-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/skibact-scab-shadow.grp rename to mpq/unit/cm/z/skibact-scab-shadow.grp diff --git a/mpq/unit/cm/zerg/skibact-scab.grp b/mpq/unit/cm/z/skibact-scab.grp similarity index 100% rename from mpq/unit/cm/zerg/skibact-scab.grp rename to mpq/unit/cm/z/skibact-scab.grp diff --git a/mpq/unit/cm/zerg/skithrokor-attack.lol b/mpq/unit/cm/z/skithrokor-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/skithrokor-attack.lol rename to mpq/unit/cm/z/skithrokor-attack.lol diff --git a/mpq/unit/cm/zerg/skithrokor-birth.grp b/mpq/unit/cm/z/skithrokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/skithrokor-birth.grp rename to mpq/unit/cm/z/skithrokor-birth.grp diff --git a/mpq/unit/cm/zerg/skithrokor-mutate.grp b/mpq/unit/cm/z/skithrokor-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/skithrokor-mutate.grp rename to mpq/unit/cm/z/skithrokor-mutate.grp diff --git a/mpq/unit/cm/zerg/skithrokor-spore.grp b/mpq/unit/cm/z/skithrokor-spore.grp similarity index 100% rename from mpq/unit/cm/zerg/skithrokor-spore.grp rename to mpq/unit/cm/z/skithrokor-spore.grp diff --git a/mpq/unit/cm/zerg/skithrokor.grp b/mpq/unit/cm/z/skithrokor.grp similarity index 100% rename from mpq/unit/cm/zerg/skithrokor.grp rename to mpq/unit/cm/z/skithrokor.grp diff --git a/mpq/unit/cm/zerg/skortrith-cesiant-shadow.grp b/mpq/unit/cm/z/skortrith-cesiant-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/skortrith-cesiant-shadow.grp rename to mpq/unit/cm/z/skortrith-cesiant-shadow.grp diff --git a/mpq/unit/cm/zerg/skortrith-cesiant.grp b/mpq/unit/cm/z/skortrith-cesiant.grp similarity index 100% rename from mpq/unit/cm/zerg/skortrith-cesiant.grp rename to mpq/unit/cm/z/skortrith-cesiant.grp diff --git a/mpq/unit/cm/zerg/sovroleth-birth.grp b/mpq/unit/cm/z/sovroleth-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/sovroleth-birth.grp rename to mpq/unit/cm/z/sovroleth-birth.grp diff --git a/mpq/unit/cm/zerg/sovroleth-birth.lob b/mpq/unit/cm/z/sovroleth-birth.lob similarity index 100% rename from mpq/unit/cm/zerg/sovroleth-birth.lob rename to mpq/unit/cm/z/sovroleth-birth.lob diff --git a/mpq/unit/cm/zerg/sovroleth.grp b/mpq/unit/cm/z/sovroleth.grp similarity index 100% rename from mpq/unit/cm/zerg/sovroleth.grp rename to mpq/unit/cm/z/sovroleth.grp diff --git a/mpq/unit/cm/zerg/spirtith-colony-attack.lol b/mpq/unit/cm/z/spirtith-colony-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/spirtith-colony-attack.lol rename to mpq/unit/cm/z/spirtith-colony-attack.lol diff --git a/mpq/unit/cm/zerg/spirtith-colony-damage.lof b/mpq/unit/cm/z/spirtith-colony-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/spirtith-colony-damage.lof rename to mpq/unit/cm/z/spirtith-colony-damage.lof diff --git a/mpq/unit/cm/zerg/spirtith-colony-shadow.grp b/mpq/unit/cm/z/spirtith-colony-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/spirtith-colony-shadow.grp rename to mpq/unit/cm/z/spirtith-colony-shadow.grp diff --git a/mpq/unit/cm/zerg/spirtith-colony.grp b/mpq/unit/cm/z/spirtith-colony.grp similarity index 100% rename from mpq/unit/cm/zerg/spirtith-colony.grp rename to mpq/unit/cm/z/spirtith-colony.grp diff --git a/mpq/unit/cm/zerg/spore-explosion-large.grp b/mpq/unit/cm/z/spore-explosion-large.grp similarity index 100% rename from mpq/unit/cm/zerg/spore-explosion-large.grp rename to mpq/unit/cm/z/spore-explosion-large.grp diff --git a/mpq/unit/cm/zerg/spore-hit-green-small.grp b/mpq/unit/cm/z/spore-hit-green-small.grp similarity index 100% rename from mpq/unit/cm/zerg/spore-hit-green-small.grp rename to mpq/unit/cm/z/spore-hit-green-small.grp diff --git a/mpq/unit/cm/zerg/spore-hit-orange-small.grp b/mpq/unit/cm/z/spore-hit-orange-small.grp similarity index 100% rename from mpq/unit/cm/zerg/spore-hit-orange-small.grp rename to mpq/unit/cm/z/spore-hit-orange-small.grp diff --git a/mpq/unit/cm/zerg/spore-hit-orange.grp b/mpq/unit/cm/z/spore-hit-orange.grp similarity index 100% rename from mpq/unit/cm/zerg/spore-hit-orange.grp rename to mpq/unit/cm/z/spore-hit-orange.grp diff --git a/mpq/unit/cm/zerg/spore-hit-yellow.grp b/mpq/unit/cm/z/spore-hit-yellow.grp similarity index 100% rename from mpq/unit/cm/zerg/spore-hit-yellow.grp rename to mpq/unit/cm/z/spore-hit-yellow.grp diff --git a/mpq/unit/cm/zerg/spores-overlay-orange-small.grp b/mpq/unit/cm/z/spores-overlay-orange-small.grp similarity index 100% rename from mpq/unit/cm/zerg/spores-overlay-orange-small.grp rename to mpq/unit/cm/z/spores-overlay-orange-small.grp diff --git a/mpq/unit/cm/zerg/spores-overlay-orange.grp b/mpq/unit/cm/z/spores-overlay-orange.grp similarity index 100% rename from mpq/unit/cm/zerg/spores-overlay-orange.grp rename to mpq/unit/cm/z/spores-overlay-orange.grp diff --git a/mpq/unit/cm/zerg/spores-overlay-yellow.grp b/mpq/unit/cm/z/spores-overlay-yellow.grp similarity index 100% rename from mpq/unit/cm/zerg/spores-overlay-yellow.grp rename to mpq/unit/cm/z/spores-overlay-yellow.grp diff --git a/mpq/unit/cm/zerg/spraith-colony-attack.lol b/mpq/unit/cm/z/spraith-colony-attack.lol similarity index 100% rename from mpq/unit/cm/zerg/spraith-colony-attack.lol rename to mpq/unit/cm/z/spraith-colony-attack.lol diff --git a/mpq/unit/cm/zerg/tendril-amitosis-overlay.grp b/mpq/unit/cm/z/tendril-amitosis-overlay.grp similarity index 100% rename from mpq/unit/cm/zerg/tendril-amitosis-overlay.grp rename to mpq/unit/cm/z/tendril-amitosis-overlay.grp diff --git a/mpq/unit/cm/zerg/tetcaerokor-birth.grp b/mpq/unit/cm/z/tetcaerokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/tetcaerokor-birth.grp rename to mpq/unit/cm/z/tetcaerokor-birth.grp diff --git a/mpq/unit/cm/zerg/tetcaerokor.grp b/mpq/unit/cm/z/tetcaerokor.grp similarity index 100% rename from mpq/unit/cm/zerg/tetcaerokor.grp rename to mpq/unit/cm/z/tetcaerokor.grp diff --git a/mpq/unit/cm/zerg/tethzorokor-birth.grp b/mpq/unit/cm/z/tethzorokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/tethzorokor-birth.grp rename to mpq/unit/cm/z/tethzorokor-birth.grp diff --git a/mpq/unit/cm/zerg/tethzorokor-shadow.grp b/mpq/unit/cm/z/tethzorokor-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/tethzorokor-shadow.grp rename to mpq/unit/cm/z/tethzorokor-shadow.grp diff --git a/mpq/unit/cm/zerg/tethzorokor.grp b/mpq/unit/cm/z/tethzorokor.grp similarity index 100% rename from mpq/unit/cm/zerg/tethzorokor.grp rename to mpq/unit/cm/z/tethzorokor.grp diff --git a/mpq/unit/cm/zerg/tosgrilisk-birth-flying.grp b/mpq/unit/cm/z/tosgrilisk-birth-flying.grp similarity index 100% rename from mpq/unit/cm/zerg/tosgrilisk-birth-flying.grp rename to mpq/unit/cm/z/tosgrilisk-birth-flying.grp diff --git a/mpq/unit/cm/zerg/tosgrilisk-birth.grp b/mpq/unit/cm/z/tosgrilisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/tosgrilisk-birth.grp rename to mpq/unit/cm/z/tosgrilisk-birth.grp diff --git a/mpq/unit/cm/zerg/tosgrilisk.grp b/mpq/unit/cm/z/tosgrilisk.grp similarity index 100% rename from mpq/unit/cm/zerg/tosgrilisk.grp rename to mpq/unit/cm/z/tosgrilisk.grp diff --git a/mpq/unit/cm/zerg/unit-rubble-medium.grp b/mpq/unit/cm/z/unit-rubble-medium.grp similarity index 100% rename from mpq/unit/cm/zerg/unit-rubble-medium.grp rename to mpq/unit/cm/z/unit-rubble-medium.grp diff --git a/mpq/unit/cm/zerg/unit-rubble-small.grp b/mpq/unit/cm/z/unit-rubble-small.grp similarity index 100% rename from mpq/unit/cm/zerg/unit-rubble-small.grp rename to mpq/unit/cm/z/unit-rubble-small.grp diff --git a/mpq/unit/cm/zerg/unit-rubble-tiny.grp b/mpq/unit/cm/z/unit-rubble-tiny.grp similarity index 100% rename from mpq/unit/cm/zerg/unit-rubble-tiny.grp rename to mpq/unit/cm/z/unit-rubble-tiny.grp diff --git a/mpq/unit/cm/zerg/venom-white.grp b/mpq/unit/cm/z/venom-white.grp similarity index 100% rename from mpq/unit/cm/zerg/venom-white.grp rename to mpq/unit/cm/z/venom-white.grp diff --git a/mpq/unit/cm/zerg/vilgoleth.grp b/mpq/unit/cm/z/vilgoleth.grp similarity index 100% rename from mpq/unit/cm/zerg/vilgoleth.grp rename to mpq/unit/cm/z/vilgoleth.grp diff --git a/mpq/unit/cm/zerg/vilgorokor-birth.grp b/mpq/unit/cm/z/vilgorokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/vilgorokor-birth.grp rename to mpq/unit/cm/z/vilgorokor-birth.grp diff --git a/mpq/unit/cm/zerg/vilgorokor-mutate.grp b/mpq/unit/cm/z/vilgorokor-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/vilgorokor-mutate.grp rename to mpq/unit/cm/z/vilgorokor-mutate.grp diff --git a/mpq/unit/cm/zerg/vilgorokor-shadow.grp b/mpq/unit/cm/z/vilgorokor-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/vilgorokor-shadow.grp rename to mpq/unit/cm/z/vilgorokor-shadow.grp diff --git a/mpq/unit/cm/zerg/vilgorokor.grp b/mpq/unit/cm/z/vilgorokor.grp similarity index 100% rename from mpq/unit/cm/zerg/vilgorokor.grp rename to mpq/unit/cm/z/vilgorokor.grp diff --git a/mpq/unit/cm/zerg/vornath-pond.grp b/mpq/unit/cm/z/vornath-pond.grp similarity index 100% rename from mpq/unit/cm/zerg/vornath-pond.grp rename to mpq/unit/cm/z/vornath-pond.grp diff --git a/mpq/unit/cm/zerg/vorvrokor-birth.grp b/mpq/unit/cm/z/vorvrokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/vorvrokor-birth.grp rename to mpq/unit/cm/z/vorvrokor-birth.grp diff --git a/mpq/unit/cm/zerg/vorvrokor-death.grp b/mpq/unit/cm/z/vorvrokor-death.grp similarity index 100% rename from mpq/unit/cm/zerg/vorvrokor-death.grp rename to mpq/unit/cm/z/vorvrokor-death.grp diff --git a/mpq/unit/cm/zerg/vorvrokor-shadow.grp b/mpq/unit/cm/z/vorvrokor-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/vorvrokor-shadow.grp rename to mpq/unit/cm/z/vorvrokor-shadow.grp diff --git a/mpq/unit/cm/zerg/vorvrokor.grp b/mpq/unit/cm/z/vorvrokor.grp similarity index 100% rename from mpq/unit/cm/zerg/vorvrokor.grp rename to mpq/unit/cm/z/vorvrokor.grp diff --git a/mpq/unit/cm/zerg/zarcavrokor-birth-flying.grp b/mpq/unit/cm/z/zarcavrokor-birth-flying.grp similarity index 100% rename from mpq/unit/cm/zerg/zarcavrokor-birth-flying.grp rename to mpq/unit/cm/z/zarcavrokor-birth-flying.grp diff --git a/mpq/unit/cm/zerg/zarcavrokor-birth.grp b/mpq/unit/cm/z/zarcavrokor-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/zarcavrokor-birth.grp rename to mpq/unit/cm/z/zarcavrokor-birth.grp diff --git a/mpq/unit/cm/zerg/zarcavrokor-bone.grp b/mpq/unit/cm/z/zarcavrokor-bone.grp similarity index 100% rename from mpq/unit/cm/zerg/zarcavrokor-bone.grp rename to mpq/unit/cm/z/zarcavrokor-bone.grp diff --git a/mpq/unit/cm/zerg/zarcavrokor.grp b/mpq/unit/cm/z/zarcavrokor.grp similarity index 100% rename from mpq/unit/cm/zerg/zarcavrokor.grp rename to mpq/unit/cm/z/zarcavrokor.grp diff --git a/mpq/unit/cm/zerg/zobriolisk-birth.grp b/mpq/unit/cm/z/zobriolisk-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/zobriolisk-birth.grp rename to mpq/unit/cm/z/zobriolisk-birth.grp diff --git a/mpq/unit/cm/zerg/zobriolisk-shadow.grp b/mpq/unit/cm/z/zobriolisk-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/zobriolisk-shadow.grp rename to mpq/unit/cm/z/zobriolisk-shadow.grp diff --git a/mpq/unit/cm/zerg/zobriolisk.grp b/mpq/unit/cm/z/zobriolisk.grp similarity index 100% rename from mpq/unit/cm/zerg/zobriolisk.grp rename to mpq/unit/cm/z/zobriolisk.grp diff --git a/mpq/unit/cm/zerg/zorkiz-shroud-damage.lof b/mpq/unit/cm/z/zorkiz-shroud-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/zorkiz-shroud-damage.lof rename to mpq/unit/cm/z/zorkiz-shroud-damage.lof diff --git a/mpq/unit/cm/zerg/zorkiz-shroud-shadow.grp b/mpq/unit/cm/z/zorkiz-shroud-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/zorkiz-shroud-shadow.grp rename to mpq/unit/cm/z/zorkiz-shroud-shadow.grp diff --git a/mpq/unit/cm/zerg/zorkiz-shroud.grp b/mpq/unit/cm/z/zorkiz-shroud.grp similarity index 100% rename from mpq/unit/cm/zerg/zorkiz-shroud.grp rename to mpq/unit/cm/z/zorkiz-shroud.grp diff --git a/mpq/unit/cm/zerg/zoryusthaleth-birth.grp b/mpq/unit/cm/z/zoryusthaleth-birth.grp similarity index 100% rename from mpq/unit/cm/zerg/zoryusthaleth-birth.grp rename to mpq/unit/cm/z/zoryusthaleth-birth.grp diff --git a/mpq/unit/cm/zerg/zoryusthaleth-mutate.grp b/mpq/unit/cm/z/zoryusthaleth-mutate.grp similarity index 100% rename from mpq/unit/cm/zerg/zoryusthaleth-mutate.grp rename to mpq/unit/cm/z/zoryusthaleth-mutate.grp diff --git a/mpq/unit/cm/zerg/zoryusthaleth-remains.grp b/mpq/unit/cm/z/zoryusthaleth-remains.grp similarity index 100% rename from mpq/unit/cm/zerg/zoryusthaleth-remains.grp rename to mpq/unit/cm/z/zoryusthaleth-remains.grp diff --git a/mpq/unit/cm/zerg/zoryusthaleth-shadow.grp b/mpq/unit/cm/z/zoryusthaleth-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/zoryusthaleth-shadow.grp rename to mpq/unit/cm/z/zoryusthaleth-shadow.grp diff --git a/mpq/unit/cm/zerg/zoryusthaleth.grp b/mpq/unit/cm/z/zoryusthaleth.grp similarity index 100% rename from mpq/unit/cm/zerg/zoryusthaleth.grp rename to mpq/unit/cm/z/zoryusthaleth.grp diff --git a/mpq/unit/cm/zerg/zozarc-gorge-damage.lof b/mpq/unit/cm/z/zozarc-gorge-damage.lof similarity index 100% rename from mpq/unit/cm/zerg/zozarc-gorge-damage.lof rename to mpq/unit/cm/z/zozarc-gorge-damage.lof diff --git a/mpq/unit/cm/zerg/zozarc-gorge-shadow.grp b/mpq/unit/cm/z/zozarc-gorge-shadow.grp similarity index 100% rename from mpq/unit/cm/zerg/zozarc-gorge-shadow.grp rename to mpq/unit/cm/z/zozarc-gorge-shadow.grp diff --git a/mpq/unit/cm/zerg/zozarc-gorge.grp b/mpq/unit/cm/z/zozarc-gorge.grp similarity index 100% rename from mpq/unit/cm/zerg/zozarc-gorge.grp rename to mpq/unit/cm/z/zozarc-gorge.grp diff --git a/mpq/unit/cmdbtns/cmdicons.grp b/mpq/unit/cmdbtns/cmdicons.grp index e1cf10af..8b79a3b7 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 b8005b7d..d0b0abf3 100644 Binary files a/mpq/unit/cmdbtns/uniticons.grp and b/mpq/unit/cmdbtns/uniticons.grp differ diff --git a/mpq/unit/wirefram/grpwire.grp b/mpq/unit/wirefram/grpwire.grp index 32ef92aa..ce80835d 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 64b3eb7a..4177121a 100644 Binary files a/mpq/unit/wirefram/wirefram.grp and b/mpq/unit/wirefram/wirefram.grp differ diff --git a/patchnotes.md b/patchnotes.md index a64c26f2..2d987565 100644 --- a/patchnotes.md +++ b/patchnotes.md @@ -1,5 +1,5 @@ -# 27 January 2026 -## Year 4, month 1, patch 2 +# 23 February 2026 +## Year 4, month 2, patch 1 ## Patch goals - Continue balancing for all races @@ -7,138 +7,150 @@ - Further improve audiovisuals - [Subscribe on ko-fi](https://ko-fi.com/pr0nogoandveeq7) to get a sneak peek of the incoming changes! +### *Notes in italics are from Pr0nogo* + # Core changes -## Random (c. Jesse) -- Now supports **Askosi**! -- Now displays the race assigned to players on map start -- It is now possible to select which races will be eligible for random selection via config! - -## User Interface (c. Jesse) -- Launch screen version string now displays build version -- CrownLink passwords are now shown in lobby, if applicable - ## Game Modes -- **Faction Wars:** - - Now randomizes player faction after 1 minute, if not set +- **Omnipresence:** + - Starting worker count increased from 6 to 8 + - Human players now begin with 2 **Pilgrim**s + - **Pilgrim**s are now trainable from the **Omnivale** ## Bugfixes -- **Desyncs:** - - Resolved desyncs related to construction and training speeds (c. Veeq7 & Jesse) - **Stability:** - - Fixed common Solarion crash (r. MuskyHusky) - - Fixed Grandstand cargo crash (r. ConcealedOrganic) + - Bandaged a crash that could occur when a Larvae dies while selected (r. shopkeeper dog) + - Bandaged a rare division by zero crash related to Psi Storm (r. ArbuzBudesh) +- **Desyncs:** + - Removed floating point math for: (c. Jesse, some a. Veeq7) + - Weapon cooldown changes + - Weapon & sight ranges + - Structure HP gain (e.g. **Askosi** teambuild cases) + - Lifesteal and shieldsteal + - Morningstar damage + - Clarion Phase Link distribution + - CPU unit / structure requests + - CPU micromanagement +- **Gameplay:** + - Fixed target acquisition range for air weapons (e.g. **Nathrokor**) + - Askosi constructing has been improved (a. DF) + - Hijacked units with more than 100 current HP are no longer set to 100 HP (r. shopkeeper dog) + - Improved attack responsivity for **Akreno** (r. jakulangski) + - Corrected **Phontis** attack damage (r. Hamster) + - Fixed **Apostle - Blood Tithe** range (r. Jesse) + - **Agonists** can no longer attack from mobile **Petracts** (r. Hamster) + - Fixed **Yblyleth** command card while burrowed (r. Vilius) + - Fixed damage reliability for **Quazrokors** (r. Alexhandr) + - **Quazrokors** can now correctly target air units (r. lolrsk8s) + - Resolved unit limit error for maps with more than 1700 preplaced units (c. DF) - **Audiovisual** - - Fixed vespene and supply icons for Askosi (c. Jesse) - - Fixed various text display issues related to unit training and cancel context + - Fixed missing animation error for **Axitrilisk** (r. Sosij) + - Fixed header too short error for large explosions (r. The Shambler) + - Fixed invalid shield overlay for **Rove** + - Corrected strings for being out of energy as Askosi (r. Sosij) + - Filled in wireframes for **Avatar** and **Phontis** (placeholder) + - Added missing **Multi-Attack III** passive button for **Starbound Manifold** (r. Concealed Organic) + - Lardfix: Civilian (Blackjack) portrait now plays talking animations (r. lolrsks8s) ## Audiovisuals -- New sprite for: - - **Zealot** (incl. Starbound variant; c. Solstice) - - **Rove** -- New unit responses for: - - **Striga** (c. OunceOfMilia) +- New model for: + - **Autocrat** +- Tweaked model for: + - **Apostle** +- New portraits for: (many c. jun3hong, some c. lolrsk8s) + - **TERRAN:** Maverick (Futurist & Upstart), Arhaun, Blackguard, Blackjack (Golden), Cleric (Futurist), Cyclops (Futurist), Harakan (Golden), Qilin, Tiangou + - **PROTOSS:** Cicatus, Dracadin (Order), Ecclesiast (Khalendric), Extatus, Manifold (Starbound), Renesair, Zealot (Starbound) + - **ZERG:** Quazrokor, Hydralisk (Orkoti) + - **ASKOSI:** Auxine +- New cast SFX for **Seraph Irradiate** +- Added almost built frame for: + - **Landlock**, **Grandstand**, **Radix** +- Added damage overlay for: + - **Landlock** # Balance changes ## Terran -- [Lodestone](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/lodestone): - - Sight range 10 » 12 -- [Atlas](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/atlas): - - Build time 75 » 60 -- [Daedala](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/daedala): - - Build time 120 » 100 +- [Apostle](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/apostle): + - Resource costs 75/200 » 75/150 + - Now has 150 max energy + - Now spends 5 energy every **Blood Tithe** proc + - Now spends 20 energy every **Lazarus Agent** proc + - Prioritizes **Blood Tithe** +- [Autocrat](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/autocrat): + - Resource costs 125/250 » 125/200 + - Now has 100 max energy + - Now spends 25 energy every **Reclamation Fields** proc +- [Anticthon](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/anticthon): + - Resource costs 250/350 » 250/300 + - Now has 200 max energy + - Now spends 25 energy every **Counter-Proposal** proc +- [Aion](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/aion): + - Resource costs 450/450 » 450/350 + - Now has 200 max energy + - Now spends 25 energy every **Reclamation Fields** proc ## Protoss -- [Atreus](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=protoss/atreus): - - Resource costs 200/50 » 200/25 -- [Grand Library](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=protoss/grand-library): - - Resource costs 250/50 » 225/50 - - Build time 55 » 60 -- [Prostration Stage](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=protoss/prostration-stage): - - Resource costs 400/200 450/200 - - Build time 65 » 70 -- [Unitary Union](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=protoss/unitary-union): - - Resource costs 400/350 450/350 - - Build time 65 » 70 -- [Argosy](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=protoss/argosy): - - Build time 70 » 75 +- [Demiurge](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=protoss/demiurge): + - Resource costs 200/350 » 200/300 + - Now has 100 max energy + - Now spends 10 energy every **Worship** proc ## Zerg -- **Bone of Reflection:** - - *Used by Tethzorokor, Zarcavrokor** - - Armor penetration 3 » 0 -- [Agrileth](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/agrileth): - - Resource costs 150/100 » 150/50 - - Transport weight 8 » 6 -- [Tethzorokor](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/tethzorokor): - - HP 240 » 220 -- [Irol Iris](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/irol-iris): - - Build time 60 » 20 -- [Othstol Oviform](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/othstol-oviform): - - Build time 120 » 40 +- [Vithrilisk](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/vithrilisk): + - **NEW: Avenging Mitosis:** + - Incubates on damage taken, spawning a Skryrokor after a short delay. ## Askosi -- **New arrivals:** - - T1: Eyelet (from Proselyte) - - T2: Constituent (from Bounty) - - T2: Biotic (Aphorist, Thaumalogue, Avatar, Doronin), Conduit, Bestiary - - T2: Skybound (Akreno, Iconoclast, Crematorium), Astrolabe -- **Booming Blast:** - - Used by **Vicar** - - Now deals friendly splash -- **Rematerialize:** - - Used by **Vicar** and **Emissary** - - Ability range 5 » 6 -- [Dyad](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/dyad): - - Resource costs 50/50 » 50/25 -- [Mimic](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/mimic): - - Sight range 8 » 9 - - **Scrapworld: Vital Remains:** - - Now grants 1 non-stacking armor pen to allies for 4 seconds -- [Vicar](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/vicar): - - Resource costs 75/50 » 100/50 - - **Ospo Twinshard:** - - Weapon range 7 » 6 -- [Rove](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/rove): - - Armor 1 » 0 - - Collision size reduced by ~10% - - Acceleration adjusted -- [Scepter](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/scepter): - - **Principality Assembly:** - - While active, now grants 1 stacking armor pen to allies within 8 range -- [Intendent](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/intendent): - - Resource costs 150/50 » 125/50 - - HP 140 » 120 - - Armor 2 » 1 - - **Ersa Driver:** - - Armor penetration 3 » 0 - - Weapon range 6 » 5 -- [Helion](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/helion): - - Resource costs 100/50 » 100/25 - - Build time 18 » 15 - - HP 120 » 100 - - **Usko Scrapray:** - - Weapon cooldown 0.63 » 0.5 -- [Tirade](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/tirade): - - Armor 2 » 1 - - **Ikta Driver:** - - Weapon damage 10 » 7 -- [Grandstand](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/grandstand): - - No longer has **Booming Blast** - - Now has **Power Overload** +- **Hijack:** + - Now procs when a unit that is being hijacked dies + - Now restores 100 flat HP on proc +- [Pilgrim](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/pilgrim): + - Now has **Scrapworld: Gold Rush** +- [Constituent](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/constituent): + - Resource costs 50/25 » 50/50 + - Build time 14 » 18 + - Movement speed 5.8 » 6.6 + - Now trained at Landlock, from Bounty + - Now requires Proscenium OR Zylode - [Chantry](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/chantry): - - Resource costs 100/50 » 75/50 - - HP 350 » 400 -- [Radix](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/radix): - - Build time 50 » 65 -- [Cipher](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/cipher): - - Build time 65 » 75 -- [Function](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/function): - - Build time 60 » 75 -- [Gauntlet](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/gauntlet): - - Resource costs 200/75 » 200/100 - - Build time 80 » 90 + - **Sermon Salve:** + - Now gives units cloaking until their next attack / notable action +- [Bounty](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/bounty): + - Resource costs 200/300 » 150/250 + - Placement size 4x3 » 3x3 + - Collision size adjusted to better match new graphic + - **NEW: Scrapworld: Gold Rush** + - Salvages one corpse within 8 range every second +- [Proscenium](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/proscenium): + - Resource costs 200/50 » 175/50 +- [Zylode](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/zylode): + - Resource costs 350/50 » 250/75 +- [Astrolabe](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/astrolabe): + - Resource costs 200/200 » 200/150 - [Cosmoscope](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/cosmoscope): - - Resource costs 100/150 100/100 - - Now requires Radix OR Function, from Cipher OR Gauntlet \ No newline at end of file + - Resource costs 100/150 » 100/100 + +# New units + +## Askosi +- [Zonguard](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/zonguard): + - Tier 2 mechanized -- durable mechbeast with Preylock ability +- [Paraclete](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/paraclete): + - Tier 2 skybound -- potent skybeast with Remote Hijack ability +- [Dorminge](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/dorminge): + - Tier 2 infrastructure -- shrine that slows movement speed of nearby hostiles +- [Domain](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=askosi/domain) + - Tier 3 infrastructure -- town center that harvests resources passively + +## Futurist Federation +- [Cutlass](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/cutlass): + - Matador replacement with Kinetic Penetration and no deployment + +## Upstart Terrans +- [Maverick (Upstart)](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/maverick-upstart): + - Frailer Maverick variant with faster-acting, less intense Stimpack +- [Vulture (Upstart)](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/vulture-upstart): + - Faster Vulture variant that lays [Goremast](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/goremast)s +- [Broadside](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/broadside): + - Phalanx replacement with Fore Castle and no deployment \ No newline at end of file diff --git a/plugins/gptp.qdp b/plugins/gptp.qdp index 5ca74db0..1cb64953 100644 Binary files a/plugins/gptp.qdp and b/plugins/gptp.qdp differ