diff --git a/mpq/arr/images.datex b/mpq/arr/images.datex index ebc4db43..76b50bc5 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 b0cc604e..a49d7344 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 efc81128..97381f9e 100644 --- a/mpq/arr/images.txt +++ b/mpq/arr/images.txt @@ -2457,10 +2457,10 @@ Eidolon (Nydus) Remains Hydralisk (Orkoti) Mutate Valkyrie (Hecaton) Shadow Valkyrie (Hecaton) Engines -Extended Image #1457 -Extended Image #1458 -Extended Image #1459 -Extended Image #1460 +Impact Dissipation +Crushing Delivery Small +Crushing Delivery Medium +Crushing Delivery Large Extended Image #1461 Extended Image #1462 Extended Image #1463 diff --git a/mpq/arr/sfxdata.dat b/mpq/arr/sfxdata.dat index 4b01d5c5..a81cc30a 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 60eb9782..8968f1c6 100644 --- a/mpq/arr/sfxdata.txt +++ b/mpq/arr/sfxdata.txt @@ -4291,8 +4291,8 @@ Vicar Under Attack 02 Vicar Under Attack 03 Vicar Under Attack 04 Vicar Ability Use 01 -Extended Sound #1 -Extended Sound #1 +Landlock Ambient 01 +Conduit Selected 01 Extended Sound #1 Extended Sound #1 Extended Sound #1 diff --git a/mpq/arr/sounds.txt b/mpq/arr/sounds.txt index f23cdfe2..b4dea7eb 100644 --- a/mpq/arr/sounds.txt +++ b/mpq/arr/sounds.txt @@ -4290,4 +4290,6 @@ cm\a\vicar\hlp-01.wav cm\a\vicar\hlp-02.wav cm\a\vicar\hlp-03.wav cm\a\vicar\hlp-04.wav -cm\a\vicar\cst-01.wav \ No newline at end of file +cm\a\vicar\cst-01.wav +cm\a\_building\landlock-amb-01.wav +cm\a\_building\conduit-wht-01.wav \ No newline at end of file diff --git a/mpq/arr/sprites.datex b/mpq/arr/sprites.datex index fd7fac56..8a22ed7b 100644 Binary files a/mpq/arr/sprites.datex and b/mpq/arr/sprites.datex differ diff --git a/mpq/arr/units.datex b/mpq/arr/units.datex index a02c2a86..b24cf2ea 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 00ba44f3..0563cfe7 100644 Binary files a/mpq/arr/weapons.datex and b/mpq/arr/weapons.datex differ diff --git a/mpq/datreq/Buttons.graft b/mpq/datreq/Buttons.graft index cdc29ef2..e9f0aadc 100644 Binary files a/mpq/datreq/Buttons.graft and b/mpq/datreq/Buttons.graft differ diff --git a/mpq/game/icons.grp b/mpq/game/icons.grp index 213958cb..4d0cf709 100644 Binary files a/mpq/game/icons.grp and b/mpq/game/icons.grp differ diff --git a/mpq/rez/stat.txt b/mpq/rez/stat.txt index ffbb138b..90f2da73 100644 --- a/mpq/rez/stat.txt +++ b/mpq/rez/stat.txt @@ -320,7 +320,7 @@ Piety Wards<0> <0> <0> <0> -<0> +¤<3><4>Accelerated Speech <2>(passive)<10>While the Missionary is within 2 range of its target, it gains +2 armor penetration.<0> ¤<3><4>Flanking Spines <2>(passive)<10>When targeting debuffed enemies, Almaksalisk attacks ignore armor.<0> Anchor Attack requires:<10> Loaded ranged combatant<0> <0> @@ -390,7 +390,7 @@ Constituent Requires:<10> Proscenium OR Zylode<0> a<1><4>Build Cutlass <1>(<3>A<1>)<10>Assault armor.<0> c<1><4>Raise Constituent <1>(<3>C<1>)<10>Skybound worker.<0> e<3><4>Salvage <1>(<3>E<1>)<10>Orders the builder to deconstruct the target mechanical unit or structure, returning up to 33% of its resource cost during the channel.<0> -e<3><4>Rapid Rendezvous <1>(<3>E<1>)<10>Leaps to the target ground ally within 5 range, activating Impact Dissipation for all allies within 3 range of the jump target.<0> +z<3><4>Rapid Rendezvous <1>(<3>Z<1>)<10>Leaps to the target ground ally within 5 range, activating Impact Dissipation for all allies within 3 range of the jump target.<0> c<3><4>Hijack <1>(<3>C<1>)<10>Leaps to the target hostile, attaching to the victim and slowing their movement speed by 50%.<10><10>After 5 seconds, the Askosi combatant becomes the target.<0> e<3><4>Rematerialize <1>(<3>E<1>)<10>Pulls allies within 3 range of the target to the combatant's location, and grants them Impact Dissipation.<0> e<1><4>Mutate into Kalkiir Lake <1>(<3>E<1>)<10>Swarm node. Enables Liiralisks and Kalkalisks.<0> @@ -467,7 +467,7 @@ t<1><4>Morph into Gosvileth <1>(<3>T<1>)<10>Advanced worker strain.<0> ¤<3><4>Criticality <2>(passive)<10>Victims of the Aspirant are debuffed for 2 seconds. If killed during this time, they create a 2-range energy field that lasts 5 seconds and restores 4 shields or HP per second for all allied ground combatants.<0> Abutment requires:<10> Cipher AND Gauntlet<0> Gosvil Aspect requires:<10> Irol Iris<0> -r<1><4>Install Abutment <1>(<3>R<1>)<10>Vespene processor.<0> +a<1><4>Install Abutment <1>(<3>A<1>)<10>Vespene processor.<0> a<1><4>Assemble Artisan <1>(<3>A<1>)<10>Advanced harvester.<0> ¤<3><4>Caustic Discharge <2>(passive)<10>Keskathalor attacks create a pool of acid that deals 30 impact damage over 5 seconds to all ground targets. Targets that move through the acid gain 150% movement speed for 3 seconds.<0> ¤<3><4>Ion Field <2>(passive)<10>Diadem attacks leave behind a field that deals 100 damage over 10 seconds to all ground targets. Units that move through the field gain 150% attack speed for 2 seconds.<0> diff --git a/mpq/scripts/iscript_askosi.bin b/mpq/scripts/iscript_askosi.bin index a9e8e86d..307d7309 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 77290f10..7eec7145 100644 --- a/mpq/scripts/iscript_askosi.txt +++ b/mpq/scripts/iscript_askosi.txt @@ -6412,4 +6412,84 @@ Engines_GlowHeaderInit: wait 1 engset 1 wait 1 - goto Engines_GlowHeaderInit \ No newline at end of file + goto Engines_GlowHeaderInit + +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2459 Impact Dissipation Overlay (cm\a\impact-dissipation.grp) +.headerstart +IsId 74 +Type 1 +Init ImpactDissipationOverlayInit +Death ImpactDissipationOverlayDeath +.headerend +# ----------------------------------------------------------------------------- # + +ImpactDissipationOverlayInit: + playfram 0x00 + wait 1 + playfram 1 + wait 1 + playfram 3 + wait 1 + playfram 4 + wait 1 + playfram 5 + wait 1 + playfram 6 + wait 1 + playfram 7 + wait 1 + playfram 8 + wait 1 + playfram 9 + wait 1 + playfram 10 + wait 1 + playfram 11 + wait 1 + playfram 12 + wait 1 + playfram 13 + wait 1 + playfram 14 + wait 1 + playfram 15 + wait 1 + playfram 16 + wait 1 +ImpactDissipationOverlayLoop: + playfram 17 + wait 1 + playfram 18 + wait 1 + playfram 19 + wait 1 + playfram 20 + wait 1 + playfram 21 + wait 1 + playfram 22 + wait 1 + playfram 21 + wait 1 + playfram 20 + wait 1 + playfram 19 + wait 1 + playfram 18 + wait 1 + playfram 17 + wait 1 + goto ImpactDissipationOverlayLoop + +ImpactDissipationOverlayDeath: + playfram 23 + wait 1 + playfram 24 + wait 1 + playfram 25 + wait 1 + playfram 26 + wait 1 + end \ No newline at end of file diff --git a/mpq/scripts/iscript_protoss.bin b/mpq/scripts/iscript_protoss.bin index 772ac8b6..6cd485df 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 200c3bf2..c0ea7829 100644 --- a/mpq/scripts/iscript_protoss.txt +++ b/mpq/scripts/iscript_protoss.txt @@ -5555,13 +5555,24 @@ ExemplarDeath: end ExemplarGndAttkInit: - nobrkcodestart - playsndbtwn 1222 1226 # Exemplar weaponfire 01, 02, 03, 04, 05 - playfram 0x11 - attackwith 1 - wait 2 + setvertpos 0 playfram 0x00 + wait 1 + nobrkcodestart + playfram 0x20 + playsndbtwn 1222 1226 # Exemplar weaponfire 01, 02, 03, 04, 05 + attackwith 1 + wait 1 + playfram 0x40 + wait 1 + playfram 0x60 + wait 1 + playfram 0x40 nobrkcodeend + wait 1 + playfram 0x20 + wait 1 + playfram 0x00 gotorepeatattk goto SkryrokorLocal00 diff --git a/mpq/scripts/iscript_terran.bin b/mpq/scripts/iscript_terran.bin index c92ecbfd..e9571104 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 77cf8c1c..1cad0718 100644 --- a/mpq/scripts/iscript_terran.txt +++ b/mpq/scripts/iscript_terran.txt @@ -8575,7 +8575,7 @@ AnchorGroundedInit: # ----------------------------------------------------------------------------- # # This header is used by images.dat entries: -# 1900 Goska (terran\ghost.grp) +# 1900 Goska (terran\eidolon.grp) .headerstart IsId 791 Type 13 @@ -8597,38 +8597,38 @@ SpecialState1 EidolonSpecialState1 # ----------------------------------------------------------------------------- # GoskaInit: - imgul 1901 0 0 # Goska Shadow (terran\tghShad.grp) + imgulnextid 0 0 # Goska Shadow (terran\eidolon-shadow.grp) goto EidolonWalkingToIdle GoskaGndAttkInit: playfram 0x00 wait 1 - playfram 0x11 + playfram 0x20 wait 1 - playfram 0x22 + playfram 0x40 GoskaGndAttkRpt: wait 1 nobrkcodestart playsndbtwn 3212 3214 # Goska Weaponfire 01, 02, 03 attack - playfram 0xcc + playfram 0x180 wait 1 - playfram 0x22 + playfram 0x40 wait 1 attack - playfram 0xcc + playfram 0x180 wait 1 - playfram 0x22 + playfram 0x40 wait 1 attack - playfram 0xcc + playfram 0x180 wait 1 - playfram 0x22 + playfram 0x40 wait 1 attack - playfram 0xcc + playfram 0x180 wait 1 - playfram 0x22 + playfram 0x40 wait 1 nobrkcodeend gotorepeatattk diff --git a/mpq/sound/cm/a/_building/conduit-wht-01.wav b/mpq/sound/cm/a/_building/conduit-wht-01.wav new file mode 100644 index 00000000..bb8df789 Binary files /dev/null and b/mpq/sound/cm/a/_building/conduit-wht-01.wav differ diff --git a/mpq/sound/cm/a/_building/landlock-amb-01.wav b/mpq/sound/cm/a/_building/landlock-amb-01.wav new file mode 100644 index 00000000..b96d86dc Binary files /dev/null and b/mpq/sound/cm/a/_building/landlock-amb-01.wav differ diff --git a/mpq/unit/cm/a/crushing-delivery-large.grp b/mpq/unit/cm/a/crushing-delivery-large.grp new file mode 100644 index 00000000..3618e0d8 Binary files /dev/null and b/mpq/unit/cm/a/crushing-delivery-large.grp differ diff --git a/mpq/unit/cm/a/crushing-delivery-medium.grp b/mpq/unit/cm/a/crushing-delivery-medium.grp new file mode 100644 index 00000000..f73620e4 Binary files /dev/null and b/mpq/unit/cm/a/crushing-delivery-medium.grp differ diff --git a/mpq/unit/cm/a/crushing-delivery-small.grp b/mpq/unit/cm/a/crushing-delivery-small.grp new file mode 100644 index 00000000..ca125920 Binary files /dev/null and b/mpq/unit/cm/a/crushing-delivery-small.grp differ diff --git a/mpq/unit/cm/a/impact-dissipation.grp b/mpq/unit/cm/a/impact-dissipation.grp new file mode 100644 index 00000000..26d5483b Binary files /dev/null and b/mpq/unit/cm/a/impact-dissipation.grp differ diff --git a/mpq/unit/cm/e/energydecay.grp b/mpq/unit/cm/e/energydecay.grp index 4b5d4ae7..4e68a133 100644 Binary files a/mpq/unit/cm/e/energydecay.grp and b/mpq/unit/cm/e/energydecay.grp differ diff --git a/mpq/unit/cm/p/exemplar-attack.lol b/mpq/unit/cm/p/exemplar-attack.lol index 95e9524b..d3117353 100644 Binary files a/mpq/unit/cm/p/exemplar-attack.lol and b/mpq/unit/cm/p/exemplar-attack.lol differ diff --git a/mpq/unit/cm/p/exemplar-engine.grp b/mpq/unit/cm/p/exemplar-engine.grp index 0e8c5c2b..bd2beedc 100644 Binary files a/mpq/unit/cm/p/exemplar-engine.grp and b/mpq/unit/cm/p/exemplar-engine.grp differ diff --git a/mpq/unit/cm/p/exemplar.grp b/mpq/unit/cm/p/exemplar.grp index f1f0a1fe..28ba04c0 100644 Binary files a/mpq/unit/cm/p/exemplar.grp and b/mpq/unit/cm/p/exemplar.grp differ diff --git a/mpq/unit/cmdbtns/cmdicons.grp b/mpq/unit/cmdbtns/cmdicons.grp index 521b3046..cfc31d79 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 b826b894..efe27f35 100644 Binary files a/mpq/unit/cmdbtns/uniticons.grp and b/mpq/unit/cmdbtns/uniticons.grp differ diff --git a/patchnotes.md b/patchnotes.md index 087e9c19..7ac5fcf5 100644 --- a/patchnotes.md +++ b/patchnotes.md @@ -35,7 +35,10 @@ - Lardfix: Protected against rare AI breakage from niche town configurations (c. DF) - **Nydus Trinity Eidolon**s now correctly regenerate life at a higher rate when cloaked (r. jakulangski) - **Tencendur**s can now issue load orders - - Resolved mnemonic hotkey conflict between **Caphrolosk** and **Kethraj Keep** (r. jakulangski) + - Resolved mnemonic hotkey conflict between: + - **Rapid Rendezvous** and **Place Eyelet** (r. Krankendau) + - **Abutment** and **Proscenium** (r. Krankendau) + - **Caphrolosk** and **Kethraj Keep** (r. jakulangski) - **Audiovisuals:** - Fixed **Endbore** weapon name (r. Concealed Organic) - Fixed "dead pixels" in Askosi UI @@ -43,18 +46,24 @@ - Corrected **Spraith Cesiant** shadow (r. Mimika) - Hid `(null)` string on replay playback (c. DF) - Hid force name display on neutral unit selection (c. DF) +- **User Interface:** + - Fixed lack of options sync for **Askosi** in the random race selector (r. Alexhandr, c. Jesse) ## Audiovisuals - Updated Askosi UI to be GREEN! (c. DF) - Updated background graphics for Options and CrownLink Join menus (c. Jesse) - New models for: - Eidolon (c. Solstice) - - Valkyrie, Trojan, Amaranth, Atreus, Zethrokor, Hydralisk (c. Baelethal) + - Valkyrie, Trojan, Amaranth, Atreus, Exemplar, Zethrokor, Hydralisk (c. Baelethal) - Eidolon (Nydus), Valkyrie (Hecaton), Inzorthrokor (Imicren), Sovrokor (Goszirith), Hydralisk (Orkoti), Iziralisk (Zorthos) - New death SFX for: - Striga (c. Milia) - Added unique shadows for **Vornath Pond**, **Chokral Chaszal** - Updated selection circle size for **Epigraph** +- New unit responses for: + - **Vicar**, **Conduit** +- New ambient SFX for: + - **Landlock** # Balance @@ -133,6 +142,8 @@ - [Idol](https://cosmonarchy.com/protoss/idol): - **Prismatic Blasters:** - Splash radius 12/18/24 » 16/24/32 +- [Exemplar](https://cosmonarchy.com/protoss/exemplar): + - Resource costs 300/150 250/150 - [Warden](https://cosmonarchy.com/protoss/warden): - Build time 35 » 30 - [Lattice](https://cosmonarchy.com/protoss/lattice): @@ -158,6 +169,10 @@ - Infested units now incubate **Rilirokors** on damage taken (like **Zoryusthaleth**) - **Plague:** - Now reduces HP and shield healing by 50% +- [Rililisk](https://cosmonarchy.com/zerg/rililisk): + - **Swarming Spores:** + - Weapon damage 1x5 » 1x4 + - Weapon range 2 » 4 - [Malkothrokor](https://cosmonarchy.com/zerg/malkothrokor): - Structure gestation now occurs 50% faster - [Nathrokor](https://cosmonarchy.com/zerg/nathrokor): @@ -178,7 +193,7 @@ - Now considered a Sire - [Hydralisk](https://cosmonarchy.com/zerg/hydralisk): - Build time 20 » 18 - - 80 » 100 + - HP 80 » 100 - [Bactalisk](https://cosmonarchy.com/zerg/bactalisk): - Build time 25 » 30 - HP 120 » 100 @@ -218,10 +233,14 @@ - **Impact Dissipation:** - No longer heals - Now blocks the next weapon attack +- **Ash Heap:** + - Duration 2 seconds » 5 seconds - [Proselyte](https://cosmonarchy.com/askosi/proselyte): - Movement speed 5.2 » 5.6 - [Missionary](https://cosmonarchy.com/askosi/missionary): - HP 75 » 85 + - **NEW: Accelerated Speech** (passive) + - Gains +2 armor pen when within 2 weapon range of its target - [Cardinal](https://cosmonarchy.com/askosi/cardinal): - **Sustaining Sermon:** - Now heals the proccing Cardinal diff --git a/plugins/gptp.qdp b/plugins/gptp.qdp index fa8ca658..2b43a10a 100644 Binary files a/plugins/gptp.qdp and b/plugins/gptp.qdp differ