diff --git a/mpq/arr/flingy.datex b/mpq/arr/flingy.datex index 4e4dab5e..229d48af 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 8a5a1052..4a37b60a 100644 --- a/mpq/arr/flingy.txt +++ b/mpq/arr/flingy.txt @@ -576,7 +576,7 @@ Autocort Ogun (Tank Mode) Ogun (Smithy Mode) Cannibal -Extended Flingy #370 +Agrileth Extended Flingy #371 Extended Flingy #372 Extended Flingy #373 diff --git a/mpq/arr/images.datex b/mpq/arr/images.datex index 34df4b17..bcba32b6 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 1341996b..40ec1d97 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 c1f696c7..a10e6243 100644 --- a/mpq/arr/images.txt +++ b/mpq/arr/images.txt @@ -2063,10 +2063,10 @@ Ogun (Smithy Mode) Ogun Shadow (Smithy Mode) Cannibal Cannibal Shadow -Extended Image #1063 -Extended Image #1064 -Extended Image #1065 -Extended Image #1066 +Agrileth +Agrileth Shadow +Agrileth Remains +Agrileth Birth Extended Image #1067 Extended Image #1068 Extended Image #1069 diff --git a/mpq/arr/sprites.datex b/mpq/arr/sprites.datex index eac8fa31..73c43033 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 04696513..a52fc0dc 100644 --- a/mpq/arr/sprites.txt +++ b/mpq/arr/sprites.txt @@ -1018,8 +1018,8 @@ Autocort Ogun (Tank Mode) Ogun (Smithy Mode) Cannibal -Extended Sprite #1 -Extended Sprite #1 +Agrileth +Agrileth Remains Extended Sprite #1 Extended Sprite #1 Extended Sprite #1 diff --git a/mpq/arr/units.datex b/mpq/arr/units.datex index 1a2710fb..aa48ce41 100644 Binary files a/mpq/arr/units.datex and b/mpq/arr/units.datex differ diff --git a/mpq/arr/weapons.datex b/mpq/arr/weapons.datex index a8f42738..f6c54988 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 d9022103..a66fa7bf 100644 --- a/mpq/arr/weapons.txt +++ b/mpq/arr/weapons.txt @@ -187,7 +187,7 @@ Sunsplit Beam (Optecton) Particle Ray (Autocort) Ironhand Weaver (Patriarch) Angeltear Missiles (Madrigal Hecaton) -Embalming Spores (Selkerilisk) +Massive Mandible (Agrileth) Congealing Spores (Elthrazalisk) Plasma Shell (Accantor) Wicked Incisors (Mortothrokor) diff --git a/mpq/datreq/Buttons.graft b/mpq/datreq/Buttons.graft index cb05d68d..9aef1a63 100644 Binary files a/mpq/datreq/Buttons.graft and b/mpq/datreq/Buttons.graft differ diff --git a/mpq/datreq/Orders.graft b/mpq/datreq/Orders.graft index d33a04c6..2fe2dd0b 100644 Binary files a/mpq/datreq/Orders.graft and b/mpq/datreq/Orders.graft differ diff --git a/mpq/datreq/Tech.graft b/mpq/datreq/Tech.graft index 77bd18ee..8c7c6c56 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 776b3c9b..91ed7973 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 03f3d983..7a2621aa 100644 Binary files a/mpq/game/icons.grp and b/mpq/game/icons.grp differ diff --git a/mpq/rez/stat_txt.tbl b/mpq/rez/stat_txt.tbl index 945555be..23cf048b 100644 Binary files a/mpq/rez/stat_txt.tbl and b/mpq/rez/stat_txt.tbl differ diff --git a/mpq/scripts/iscript_terran.bin b/mpq/scripts/iscript_terran.bin index ed8ee3f6..009f7713 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 e020f39a..8afb9968 100644 --- a/mpq/scripts/iscript_terran.txt +++ b/mpq/scripts/iscript_terran.txt @@ -2216,7 +2216,7 @@ FountainheadOverlayDeath: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 266 Stockade (terran\TBarrack.grp) +# 266 Stockade (terran\stockade.grp) .headerstart IsId 96 Type 24 @@ -19046,6 +19046,7 @@ CannibalGndAttkRpt: nobrkcodestart playfram 0x1E0 attackwith 1 + attackwith 1 wait 1 playfram 0x1C0 wait 1 diff --git a/mpq/scripts/iscript_zerg.bin b/mpq/scripts/iscript_zerg.bin index 72e6b2cf..4e830e01 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 adb05299..23c33c38 100644 --- a/mpq/scripts/iscript_zerg.txt +++ b/mpq/scripts/iscript_zerg.txt @@ -14125,7 +14125,7 @@ ZergSporeExplosionLargeDeath: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 050 Mortothrokor (cm\zerg\mortothrokor.grp) +# 1735 Mortothrokor (cm\zerg\mortothrokor.grp) .headerstart IsId 743 Type 26 @@ -16384,3 +16384,266 @@ SkibactScabInit: imgul 2044 0 0 # Skibact Scab Shadow (cm\zerg\skibact-scab-shadow.grp) playfram 0x00 goto HydrithDenWorkingToIdle + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2065 Agrileth (cm\zerg\agrileth.grp) +.headerstart +IsId 831 +Type 26 +Init AgrilethInit +Death AgrilethDeath +GndAttkInit AgrilethGndAttkInit +AirAttkInit [NONE] +Unused1 AgrilethUnused1 +GndAttkRpt AgrilethGndAttkRpt +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle AgrilethGndAttkToIdle +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking AgrilethWalking +WalkingToIdle AgrilethGndAttkToIdle +SpecialState1 [NONE] +SpecialState2 SkryrokorLocal00 +AlmostBuilt [NONE] +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] +Unused3 [NONE] +StarEditInit [NONE] +Disable [NONE] +Burrow AgrilethBurrow +UnBurrow AgrilethUnBurrow +Enable [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +AgrilethInit: + imgul 2066 0 0 # Agrileth Shadow (cm\zerg\agrileth-shadow.grp) +AgrilethGndAttkToIdle: + playfram 0x00 + goto AgrilethLocal00 + +AgrilethLocal00: + wait 62 + randcondjmp 25 AgrilethLocal01 + randcondjmp 128 AgrilethLocal02 + goto AgrilethLocal00 + +AgrilethLocal01: + playfram 0x55 + wait 1 + playfram 0x66 + wait 10 + playfram 0x55 + wait 1 + playfram 0x00 + wait 1 + goto AgrilethGndAttkToIdle + +AgrilethLocal02: + randcondjmp 128 AgrilethLocal03 + playfram 0x11 + wait 1 + turnccwise 1 + playfram 0x22 + wait 1 + turnccwise 1 + playfram 0x33 + wait 1 + turnccwise 1 + playfram 0x44 + wait 1 + turnccwise 1 + playfram 0x33 + wait 1 + turnccwise 1 + playfram 0x22 + wait 1 + turnccwise 1 + playfram 0x11 + wait 1 + turnccwise 1 + goto AgrilethGndAttkToIdle + +AgrilethLocal03: + playfram 0x11 + wait 1 + turncwise 1 + playfram 0x22 + wait 1 + turncwise 1 + playfram 0x33 + wait 1 + turncwise 1 + playfram 0x44 + wait 1 + turncwise 1 + playfram 0x33 + wait 1 + turncwise 1 + playfram 0x22 + wait 1 + turncwise 1 + playfram 0x11 + wait 1 + turncwise 1 + goto AgrilethGndAttkToIdle + +AgrilethDeath: + playsnd 878 # Zerg\Ultra\ZUlDth00.WAV + setfldirect 0 + playfram 595 + wait 2 + playfram 596 + wait 2 + playfram 597 + wait 2 + playfram 598 + wait 2 + playfram 599 + wait 2 + playfram 600 + wait 2 + playfram 601 + wait 2 + lowsprul 1021 0 0 # Agrileth Remnants (cm\zerg\agrileth-remnants.grp) + wait 1 + end + +AgrilethUnused1: + wait 1 + nobrkcodestart + setfldirect 0 + playsnd 1181 # Ultrokor revive 01 + playfram 173 + wait 2 + playfram 172 + wait 2 + playfram 171 + wait 2 + playfram 170 + wait 12 + setfldirect 14 + nobrkcodeend + goto AgrilethGndAttkToIdle + +AgrilethGndAttkInit: + playfram 0x00 +AgrilethGndAttkRpt: + wait 1 + nobrkcodestart + playsndrand 3 891 892 893 # Zerg\Ultra\zulAtt00.WAV | Zerg\Ultra\zulAtt01.WAV | Zerg\Ultra\zulAtt02.WAV + wait 1 + playfram 0xBB + wait 1 + playfram 0xCC + wait 1 + playfram 0xDD + wait 1 + playfram 0xEE + attackwith 1 + playsndbtwn 3145 3146 # Zerg\Ultra\zulHit00.WAV | Zerg\Ultra\zulHit01.WAV + wait 1 + playfram 0xFF + wait 1 + playfram 0x110 + wait 1 + playfram 0x121 + wait 1 + playfram 0x132 + wait 1 + playfram 0x143 + wait 1 + nobrkcodeend + gotorepeatattk + goto AgrilethGndAttkToIdle + +AgrilethWalking: + move 4 + playfram 0x11 + wait 1 + move 4 + playfram 0x22 + wait 1 + move 4 + playfram 0x33 + wait 1 + move 4 + playfram 0x44 + wait 1 + move 4 + playfram 0x55 + wait 1 + move 4 + playfram 0x66 + wait 1 + move 4 + playfram 0x77 + wait 1 + move 4 + playfram 0x88 + wait 1 + move 4 + playfram 0x99 + wait 1 + move 4 + playfram 0xAA + wait 1 + goto AgrilethWalking + +AgrilethBurrow: + setfldirect 14 + imgol 423 0 0 # Burrowing Dust (thingy\bDust.grp) + playfram 0x165 + wait 1 + playfram 0x176 + wait 1 + playfram 0x187 + wait 1 + playfram 0x198 + wait 1 + playfram 0x1A9 + wait 1 + imgol 423 0 0 # Burrowing Dust (thingy\bDust.grp) + playfram 0x1C0 + wait 1 + playfram 0x1DA + wait 1 + playfram 0x1EB + wait 1 + playfram 0x1FC + wait 1 + playfram 0x20D + wait 1 + playfram 0x21E + wait 1 + playfram 0x231 + wait 1 + sigorder 4 + goto SkryrokorLocal00 + +AgrilethUnBurrow: + wait 1 + waitrand 1 2 + setfldirect 14 + imgul 423 0 0 # Burrowing Dust (thingy\bDust.grp) + playfram 0x21E + wait 1 + playfram 0x20D + wait 1 + playfram 0x1DA + wait 1 + playfram 0x185 + wait 1 + playfram 0x176 + wait 1 + playfram 0x165 + wait 1 + sigorder 4 + goto AgrilethGndAttkToIdle + \ No newline at end of file diff --git a/mpq/unit/cm/zerg/agrileth-birth.grp b/mpq/unit/cm/zerg/agrileth-birth.grp new file mode 100644 index 00000000..e618ce40 Binary files /dev/null and b/mpq/unit/cm/zerg/agrileth-birth.grp differ diff --git a/mpq/unit/cm/zerg/agrileth-remains.grp b/mpq/unit/cm/zerg/agrileth-remains.grp new file mode 100644 index 00000000..061a82e0 Binary files /dev/null and b/mpq/unit/cm/zerg/agrileth-remains.grp differ diff --git a/mpq/unit/cm/zerg/agrileth-shadow.grp b/mpq/unit/cm/zerg/agrileth-shadow.grp new file mode 100644 index 00000000..4d99920c Binary files /dev/null and b/mpq/unit/cm/zerg/agrileth-shadow.grp differ diff --git a/mpq/unit/cm/zerg/agrileth.grp b/mpq/unit/cm/zerg/agrileth.grp new file mode 100644 index 00000000..a6f4bd45 Binary files /dev/null and b/mpq/unit/cm/zerg/agrileth.grp differ diff --git a/mpq/unit/cmdbtns/cmdicons.grp b/mpq/unit/cmdbtns/cmdicons.grp index f03e8765..b174fa75 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 2f96caac..0137b048 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 2eab7d15..28d4a1f2 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 442c6682..ee10029c 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 f773b780..cfbe56c2 100644 --- a/patchnotes.md +++ b/patchnotes.md @@ -18,12 +18,22 @@ - Corrected filenames for a few miscellaneous sound files (r. Mimika) ## Terran +- [Savant](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/savant): + - Resource costs 100/50 » 125/50 +- [Blackjack](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/blackjack): + - Build time 18 » 16 +- [Phalanx](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/phalanx): + - Build time 28 » 30 - [Valkyrie](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/valkyrie): - **Halo Rockets:** - Weapon range 6 » 7 - Weapon still fired at 6 range, improving chase potential - [Ancile](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/ancile): - Vision range 10 » 8 +- [Vestry](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/vestry): + - Resource costs 150/75 » 150/50 +- [Covenant](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/covenant): + - Resource costs 100/250 » 100/350 - **NEW:** [Ogun](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=terran/ogun): - Sturdy constructor with a repair-oriented deployment - Trained from Ministry or Treasury; requires Quarry @@ -36,6 +46,10 @@ - Trained from Embassy ## Zerg +- [Gosvileth](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/gosvileth): + - **Plethoral Gestation** removed + - **NEW: Aberrant Gestation:** + - Gosvileths now mutate into advanced structure strains - [Sovroleth](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/sovroleth): - Build time 25 » 24 - **Corpse Cocoon:** @@ -44,4 +58,7 @@ - Resource costs 100/200 » 100/300 - Build time 30 » 40 - HP 140 » 200 - - Movement speed 5 » 4.16 \ No newline at end of file + - Movement speed 5 » 4.16 +- **NEW:** [Agrileth](https://www.fraudsclub.com/cosmonarchy-bw/show.php?target=zerg/agrileth): + - Mobile hive organ; has **Plethoral Gestation** + - Morphed from Larvae; no tech requirement \ No newline at end of file diff --git a/plugins/gptp.qdp b/plugins/gptp.qdp index 454cc7da..2663f4e4 100644 Binary files a/plugins/gptp.qdp and b/plugins/gptp.qdp differ