diff --git a/mpq/arr/flingy.datex b/mpq/arr/flingy.datex index 3d73c46f..e337ba7a 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 6263a3b4..b1d278ed 100644 --- a/mpq/arr/flingy.txt +++ b/mpq/arr/flingy.txt @@ -592,9 +592,9 @@ Madrigal (Hecaton, Imperioso) Madrigal Turret (Hecaton, Imperioso) Madrigal (Hecaton, Furia) Madrigal Turret (Hecaton, Furia) -Extended Flingy #386 -Extended Flingy #387 -Extended Flingy #388 +Rove +Burst Lasers Green Impact +Burst Lasers Cyan Impact Extended Flingy #389 Extended Flingy #390 Extended Flingy #391 diff --git a/mpq/arr/images.datex b/mpq/arr/images.datex index 831b5550..c7dce320 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 77eb6cba..ca5fddd1 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 c1672048..d8f86456 100644 --- a/mpq/arr/images.txt +++ b/mpq/arr/images.txt @@ -2106,10 +2106,10 @@ Madrigal Turret (Hecaton, Imperioso) Madrigal (Hecaton, Furia) Madrigal Turret (Hecaton, Furia) Zoryusthaleth Mutate -Extended Image #1106 -Extended Image #1107 -Extended Image #1108 -Extended Image #1109 +Rove +Rove Shadow +Burst Lasers Green Impact +Burst Lasers Cyan Impact Extended Image #1110 Extended Image #1111 Extended Image #1112 diff --git a/mpq/arr/sprites.datex b/mpq/arr/sprites.datex index 45986655..a0867aa5 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 2300ad32..993325c3 100644 --- a/mpq/arr/sprites.txt +++ b/mpq/arr/sprites.txt @@ -1041,9 +1041,9 @@ Madrigal (Hecaton, Imperioso) Madrigal Turret (Hecaton, Imperioso) Madrigal (Hecaton, Furia) Madrigal Turret (Hecaton, Furia) -Extended Sprite #527 -Extended Sprite #528 -Extended Sprite #529 +Rove +Burst Lasers Green Impact +Burst Lasers Cyan Impact Extended Sprite #530 Extended Sprite #531 Extended Sprite #532 diff --git a/mpq/arr/units.datex b/mpq/arr/units.datex index 70735043..50076d46 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 8c5b6c31..70990cae 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 e82bb015..757424dc 100644 --- a/mpq/arr/weapons.txt +++ b/mpq/arr/weapons.txt @@ -1,6 +1,6 @@ Gauss Rifle (Maverick) Javelin Cannons (Heracles) -C-10 Concussion Rifle (Eidolon) +Coroner Rifle (Eidolon) Charon Rifle (Apostle) Fragmentation Grenade (Vulture) Haymaker Autogun (Cuirass) @@ -124,7 +124,7 @@ Ospo Twinshard (Vicar) Titan's Fist (Olympian) Mountain Gun (Olympian) Jackson Cannon (Wyvern) -Skyfall (Paladin ability) +Elre Scaleshot (Rove) Enthralling Assault (Akistrokor ability) Final Hour (Augur behavior) Hammerfall Beacon (Diadem) diff --git a/mpq/datreq/Buttons.graft b/mpq/datreq/Buttons.graft index 04511749..d843e84a 100644 Binary files a/mpq/datreq/Buttons.graft and b/mpq/datreq/Buttons.graft differ diff --git a/mpq/datreq/Units.graft b/mpq/datreq/Units.graft index e4cff8d6..eb01c56c 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 c1a737ad..722f8c10 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 125aa461..746448bf 100644 Binary files a/mpq/rez/stat_txt.tbl and b/mpq/rez/stat_txt.tbl differ diff --git a/mpq/scripts/aiscript.bin b/mpq/scripts/aiscript.bin index c5dcb0da..5ccd1981 100644 Binary files a/mpq/scripts/aiscript.bin and b/mpq/scripts/aiscript.bin differ diff --git a/mpq/scripts/iscript_askosi.bin b/mpq/scripts/iscript_askosi.bin index a088c690..218bcf61 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 34824836..8110ff71 100644 --- a/mpq/scripts/iscript_askosi.txt +++ b/mpq/scripts/iscript_askosi.txt @@ -191,7 +191,7 @@ AskosiBuildingRubbleHeaderDeath: # 2041 Pilgrim (cm\askosi\pilgrim.grp) .headerstart IsId 2 -Type 15 +Type 21 Init PilgrimInit Death PilgrimDeath GndAttkInit PilgrimGndAttkInit @@ -204,92 +204,111 @@ GndAttkToIdle PilgrimGndAttkToIdle AirAttkToIdle [NONE] Unused2 [NONE] Walking PilgrimWalking -WalkingToIdle InfestedTerranWalkingToIdle +WalkingToIdle PilgrimWalkingToIdle SpecialState1 [NONE] SpecialState2 [NONE] AlmostBuilt PilgrimAlmostBuilt +Built [NONE] +Landing [NONE] +LiftOff [NONE] +IsWorking [NONE] +WorkingToIdle [NONE] +WarpIn [NONE] .headerend # ----------------------------------------------------------------------------- # PilgrimInit: - imgul 2042 0 0 # Pilgrim Shadow (cm\askosi\pilgrim-shadow.grp) - goto InfestedTerranWalkingToIdle + imgul 2042 0 0 # Legionnaire Shadow (cm\protoss\legionnaire-shad.grp) + goto PilgrimWalkingToIdle PilgrimDeath: - playsnd 369 # Terran\SCV\TSCDth00.WAV - imgol 332 0 0 # Explosion2 (Small) (thingy\tBangS.grp) - wait 2 - lowsprul 809 0 0 # Pilgrim Remnants (cm\terran\mason-remnants.grp) - wait 1 + playsndbtwn 296 298 # Terran\Firebat\TFBDth00.WAV | Terran\Firebat\TFBDth02.WAV + imgol 2089 0 0 # Askosi Death Explosion Small (cm\askosi\a-death-small.grp) + imgol 213 0 0 # Explosion1 (Small) (thingy\tBangS.grp) + setfldirect 0 + wait 8 + lowsprul 1029 0 0 # Vicar Remnants (cm\askosi\vicar-remnants.grp) + wait 1 end PilgrimUnused1: wait 1 nobrkcodestart - tmprmgraphicstart - playsnd 1168 - wait 8 - sprol 742 0 0 # Small Explosion Reversed + setfldirect 0 + playsndbtwn 1163 1165 + sprol 742 0 0 # Explosion Small Reversed wait 10 - setfldirect 12 - tmprmgraphicend + setfldirect 12 nobrkcodeend - goto InfestedTerranWalkingToIdle + goto PilgrimWalkingToIdle PilgrimGndAttkInit: - wait 1 - nobrkcodestart - playfram 0xaa - attackwith 1 - playsndbtwn 35 39 # terran\SCV\EDrRep00.wav | terran\SCV\EDrRep04.wav - wait 1 - playfram 0x99 - wait 1 - nobrkcodeend - gotorepeatattk - goto PilgrimGndAttkToIdle - + playfram 0x100 +PilgrimGndAttkRpt: + playfram 0x120 + nobrkcodestart + wait 1 + playfram 0x140 + wait 1 + playfram 0x160 + attackmelee 1 1897 # Legionnaire weapon hit 01 + wait 1 + playfram 0x180 + wait 1 + nobrkcodeend + playfram 0x1A0 + wait 1 + playfram 0x1C0 + wait 1 + playfram 0x120 + wait 1 + gotorepeatattk + ignorerest PilgrimGndAttkToIdle: - playfram 0x00 - goto SkryrokorLocal00 + playfram 0x100 + wait 1 + goto PilgrimWalkingToIdle PilgrimWalking: - playfram 0x11 - move 4 - wait 1 - playfram 0x22 - move 4 - wait 1 - playfram 0x33 - move 4 - wait 1 - playfram 0x44 - move 4 - wait 1 - playfram 0x55 - move 4 - wait 1 - playfram 0x66 - move 4 - wait 1 - playfram 0x77 - move 4 - wait 1 - playfram 0x88 - move 4 - wait 1 + move 4 + wait 1 + playfram 0x20 + move 4 + wait 1 + playfram 0x40 + move 4 + wait 1 + playfram 0x60 + move 4 + wait 1 + playfram 0x80 + move 4 + wait 1 + playfram 0xA0 + move 4 + wait 1 + playfram 0xC0 + move 4 + wait 1 + playfram 0xE0 goto PilgrimWalking + +PilgrimWalkingToIdle: + playfram 0x00 + goto SkryrokorLocal00 PilgrimAlmostBuilt: setvertpos 0 wait 1 PilgrimLocal00: - playfram 0xbb + playfram 0x160 useweapon 14 # Fusion Cutter (Harvest) (Fusion Cutter) sigorder 32 - wait 3 - playfram 0x99 - wait 10 + wait 2 + playfram 0x140 + wait 2 + playfram 0x120 + wait 9 goto PilgrimLocal00 # ----------------------------------------------------------------------------- # @@ -1045,3 +1064,72 @@ InkblotWalking: # imgol 225 0 5 # Inkblot Engines (thingy\tdrGlow.grp) goto SkryrokorLocal00 +# ----------------------------------------------------------------------------- # +# This header is used by images.dat entries: +# 2108 Rove (cm\askosi\rove.grp) +.headerstart +IsId 12 +Type 13 +Init RoveInit +Death RoveDeath +GndAttkInit RoveGndAttkInit +AirAttkInit [NONE] +Unused1 RoveUnused1 +GndAttkRpt RoveGndAttkInit +AirAttkRpt [NONE] +CastSpell [NONE] +GndAttkToIdle RoveGndAttkToIdle +AirAttkToIdle [NONE] +Unused2 [NONE] +Walking RoveWalking +WalkingToIdle RoveGndAttkToIdle +SpecialState1 [NONE] +.headerend +# ----------------------------------------------------------------------------- # + +RoveInit: + imgul 2109 0 7 # Rove Shadow (cm\askosi\rove.grp) + playfram 0x00 + goto RoveGndAttkToIdle + +RoveGndAttkToIdle: + setvertpos 0 + wait 8 + setvertpos 0 + wait 8 + setvertpos -1 + wait 8 + setvertpos 0 + wait 8 + goto RoveGndAttkToIdle + +RoveDeath: + playsnd 353 # Terran\Rove\TVuDth00.WAV + imgol 332 0 0 # Explosion2 (Small) (thingy\tBangS.grp) + wait 3 +# lowsprul 813 0 0 # Rove Remains + end + +RoveUnused1: + wait 1 + nobrkcodestart + tmprmgraphicstart + playsnd 1699 # Rove revive 01 + sprol 742 0 0 + wait 10 + setfldirect 12 + tmprmgraphicend + nobrkcodeend + goto RoveGndAttkToIdle + +RoveGndAttkInit: + wait 1 + attackwith 1 + playsnd 106 # Bullet\tvuFir00.wav + gotorepeatattk + goto RoveGndAttkToIdle + +RoveWalking: + playfram 0x00 + setvertpos 0 + goto SkryrokorLocal00 \ No newline at end of file diff --git a/mpq/scripts/iscript_protoss.bin b/mpq/scripts/iscript_protoss.bin index c083b3aa..f67328ef 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 52e745d5..670ad848 100644 --- a/mpq/scripts/iscript_protoss.txt +++ b/mpq/scripts/iscript_protoss.txt @@ -11215,7 +11215,7 @@ Unused2 [NONE] Walking ArtisanWalking WalkingToIdle ArtisanWalkingToIdle SpecialState1 [NONE] -SpecialState2 [NONE] +SpecialState2 ArtisanSpecialState2 AlmostBuilt ArtisanAlmostBuilt Built [NONE] Landing [NONE] @@ -11334,6 +11334,38 @@ ArtisanWalking: ArtisanWalkingToIdle: goto ArtisanLocal00 + +ArtisanSpecialState2: + playfram 0x20 + wait 2 + playfram 0x40 + wait 2 + playfram 0x60 + wait 2 + playfram 0x80 + wait 2 + playfram 0xA0 + wait 2 + playfram 0xC0 + wait 2 + playfram 0xE0 + wait 2 + playfram 0x100 + wait 2 + playfram 0x120 + wait 2 + playfram 0x140 + wait 2 + playfram 0x160 + wait 2 + playfram 0x180 + wait 2 + playfram 0x1A0 + wait 2 + playfram 0x1C0 + wait 2 + playfram 0x00 + goto ArtisanSpecialState2 ArtisanAlmostBuilt: useweapon 63 # Particle Beam (Harvest) @@ -11352,6 +11384,8 @@ ArtisanAlmostBuilt: wait 1 playfram 0xE0 wait 1 + useweapon 63 # Particle Beam (Harvest) + playsnd 614 # Protoss\PROBE\PPrMin00.WAV playfram 0x100 wait 1 playfram 0x120 diff --git a/mpq/scripts/iscript_zerg.bin b/mpq/scripts/iscript_zerg.bin index e4363fdc..69b877bf 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 949174d2..800580c6 100644 --- a/mpq/scripts/iscript_zerg.txt +++ b/mpq/scripts/iscript_zerg.txt @@ -136,7 +136,7 @@ Generic_Wait1End: # 005 Rilirokor (zerg\brood.grp) .headerstart IsId 4 -Type 12 +Type 26 Init RilirokorInit Death RilirokorDeath GndAttkInit RilirokorGndAttkInit @@ -150,7 +150,21 @@ AirAttkToIdle [NONE] Unused2 [NONE] Walking RilirokorWalking WalkingToIdle RilirokorGndAttkToIdle -SpecialState1 [NONE] +SpecialState1 SkryrokorLocal00 +SpecialState2 SkryrokorLocal00 +AlmostBuilt SkryrokorLocal00 +Built SkryrokorLocal00 +Landing SkryrokorLocal00 +LiftOff SkryrokorLocal00 +IsWorking SkryrokorLocal00 +WorkingToIdle SkryrokorLocal00 +WarpIn SkryrokorLocal00 +Unused3 SkryrokorLocal00 +StarEditInit SkryrokorLocal00 +Disable SkryrokorLocal00 +Burrow SkryrokorLocal00 +UnBurrow SkryrokorLocal00 +Enable [NONE] .headerend # ----------------------------------------------------------------------------- # @@ -15867,9 +15881,9 @@ LakiziliskDeath: lowsprul 484 0 0 # Lakizilisk Remnants (zerg\zLakizilisk.grp) tmprmgraphicstart LakiziliskDeathLoop: - wait 128 # prevents nullsprite crash sigorder 64 - goto LakiziliskDeathLoop + wait 1 + goto LakiziliskDeathLoop LakiziliskDeathEnd: wait 1 diff --git a/mpq/sound/cm/t/_building/ministry/amb-01.wav b/mpq/sound/cm/t/_building/ministry/amb-01.wav index 804be821..7eaed639 100644 Binary files a/mpq/sound/cm/t/_building/ministry/amb-01.wav and b/mpq/sound/cm/t/_building/ministry/amb-01.wav differ diff --git a/mpq/tileset/Jungle.cv5 b/mpq/tileset/Jungle.cv5 index e76e76c3..f6fbccb7 100644 Binary files a/mpq/tileset/Jungle.cv5 and b/mpq/tileset/Jungle.cv5 differ diff --git a/mpq/tileset/Jungle.vf4 b/mpq/tileset/Jungle.vf4 index 1ed1cc82..08d972d4 100644 Binary files a/mpq/tileset/Jungle.vf4 and b/mpq/tileset/Jungle.vf4 differ diff --git a/mpq/tileset/Jungle.vx4ex b/mpq/tileset/Jungle.vx4ex index affc680a..f32ca284 100644 Binary files a/mpq/tileset/Jungle.vx4ex and b/mpq/tileset/Jungle.vx4ex differ diff --git a/mpq/unit/cm/askosi/pilgrim-shadow.grp b/mpq/unit/cm/askosi/pilgrim-shadow.grp index 2c1a0d45..4ea19583 100644 Binary files a/mpq/unit/cm/askosi/pilgrim-shadow.grp and b/mpq/unit/cm/askosi/pilgrim-shadow.grp differ diff --git a/mpq/unit/cm/askosi/pilgrim.grp b/mpq/unit/cm/askosi/pilgrim.grp index d45d67a4..c1f00059 100644 Binary files a/mpq/unit/cm/askosi/pilgrim.grp and b/mpq/unit/cm/askosi/pilgrim.grp differ diff --git a/mpq/unit/cm/askosi/pilgrim.loo b/mpq/unit/cm/askosi/pilgrim.loo new file mode 100644 index 00000000..9f16a5f7 Binary files /dev/null and b/mpq/unit/cm/askosi/pilgrim.loo differ diff --git a/mpq/unit/cm/askosi/rove.grp b/mpq/unit/cm/askosi/rove.grp new file mode 100644 index 00000000..74b74624 Binary files /dev/null and b/mpq/unit/cm/askosi/rove.grp differ diff --git a/mpq/unit/cm/terran/burst-lasers-hit-cyan.grp b/mpq/unit/cm/terran/burst-lasers-hit-cyan.grp new file mode 100644 index 00000000..ac8ae7a9 Binary files /dev/null and b/mpq/unit/cm/terran/burst-lasers-hit-cyan.grp differ diff --git a/mpq/unit/cm/terran/burst-lasers-hit-green.grp b/mpq/unit/cm/terran/burst-lasers-hit-green.grp new file mode 100644 index 00000000..8470dd89 Binary files /dev/null and b/mpq/unit/cm/terran/burst-lasers-hit-green.grp differ diff --git a/mpq/unit/cmdbtns/cmdicons.grp b/mpq/unit/cmdbtns/cmdicons.grp index c6dc5683..90535fd4 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 61ee6914..e13caeae 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 947899d9..a5221307 100644 --- a/patchnotes.md +++ b/patchnotes.md @@ -9,26 +9,25 @@ ## Game Modes - Renamed **Competitive** to **Unranked** - - **Ranked** mode is coming soon! + - **Ranked** mode is coming soon™! ## Bugfixes - **Stability:** - Improved floating point safety to further reduce desyncs (c. Veeq7) - - Resolved a crash when certain types of graphics were drawn after a **Monument of Sin** was warped in (r. Sosij & OyA, c. DF) + - Resolved a crash when certain types of graphics were drawn after the Monument of Sin was warped in (r. Sosij & OyA, c. DF) - Score screen freezes should be resolved, though those replays will freeze during playback -- send them to us with info! - - Resolved a rare crash related to dying AI-controlled **Lakizilisk**s (r. SgzzZ, c. DF) - Resolve a Zerg AI freeze (r. Solstice & others) - Fixed rare crash when **Cohort**s self-revive at the unit limit (r. sharktemplar) - Fixed rare crash when **Matraleth**-spawned **Vilgoleth**s were attempted to be made at the unit limit - **Gameplay:** - Resolved issues with **Swarming Omen** not correctly applying to flingy units, and incorrectly applying to FFA hostiles (r. GreenEggs'NSpam) + - Improved Artisan responsivity (not completely epic yet, still working on it) - Fix pneumonic hotkey mismatch for **Lobotomy Mine** detonation (r. Kenoli) - **Audiovisual:** - - Fixed wonky birth and mutation animations for the **Izirokor** (c. Solstice) - - Fixed bad requirement strings for **Tarasque** and **Luminary** - - Corrected **Matrix** selection circle - - Fixed bad death animation for **Konvilisk** - - Corrected overlay size for **Madrigal** + - Fixed wonky birth and mutation animations for the Izirokor (c. Solstice) + - Fixed bad requirement strings for Tarasque and Luminary + - Corrected Matrix selection circle + - Fixed bad death animation for Konvilisk - Added **Miasma** passive icons & tooltips to **Kagralisk** and **Cherbrathalor** (r. Raenarill) - Fixed **Swarming Omen** speed boost not always appearing on the armor tooltip (r. GreenEggs'NSpam) - Fixed **Golden Republic Blackjack** build icon missing before Scrapyard completion (r. SgzzZ) @@ -41,7 +40,6 @@ - New models for: - **Matador** (c. Solstice) - **Artisan** (c. DeltaCadimus) - - **Zoryusthaleth** (c. DeltaCadimus & Solstice) - Modified models for: - **Madrigal** (material updates) - **Legionnaire** and **Izirokor** (slight size increases, c. Solstice) @@ -54,7 +52,7 @@ - **Burst Lasers** (Wraith) - **Perpetual Wind** (Axitrilisk), **Reconstitution** (Vilgorokor), Screaming Venom (Keskathalor) - New SFX for: - - **Ministry**, **Treasury**, **Stockade**, **Fulcrum**, **Starpad**, **Nexus**, **Embassy**, **Gateway**, **Lattice**, **Stargate**, **Egg**, **Cocoon** (training ambience) + - **Stockade** (training ambience) - **Bulwark** (passive proc) - **Crucible** (ambience) diff --git a/plugins/gptp.qdp b/plugins/gptp.qdp index 372c9555..af59990e 100644 Binary files a/plugins/gptp.qdp and b/plugins/gptp.qdp differ