Repository navigation
The remaining mob skills: Poison Mist, counters, Dispel, Banish, 133-136 - #513
Merged
Merged
Conversation
A granted MobSkill 131 cast now lays a type 0 mist over the mob's lt/rb box for the level's time, owned by the mob and carrying the level's elemAttr as its element. As the v83 client does (FUN_00431783 from CUserLocal's update), HeavenClient hurts the player x once a second while they stand in a started mob mist without touching a mob. It shows the number and sends TAKE_DAMAGE from -4 with the skill and level. The server takes damage only for 131 at a known level and up to x, then tells the field through DAMAGE_PLAYER, which drops the mob fields for sources below -1. HeavenClient also learns the v83 Smokescreen rule (FUN_0043193a): a started type 2 area owned by the player or a party member keeps mob attacks, touch and mists off them. The server does not spawn those yet. Mist layout tests cover the hit and shelter lookups, and the harness mob_mists test covers the cast, the area, the damage limits and the expiry.
A mob's Weapon, Magic or full counter puts PCounter (bit 29) and/or MCounter (bit 30) on it, written after the statuses as each counter's spread and one shared chance, as the v83 client reads them. Each player attack (not a summon's) on a countering mob costs the attacker the value give or take half the spread, magic against MCounter. The client shows its own roll and sends nothing, so the server takes the HP. HeavenClient parses the new stats and shows the counter number over the player for each countering target it hits. Harness mob_counters casts Lilynouch's 145 and checks the HP lost to one swing.
A mob's Dispel (127) ends every buff but the diseases of each player in its area, unsummoning summons, and Banish (129) sends up to `count` of them to the mob's `ban/banMap` portal with its `banMsg` as a type 5 BROADCAST_MSG. Both roll the skill's prop first and reach the mob's controller when the skill has no area. The warp helper now takes a portal name. HeavenClient's BROADCAST_MSG handler now follows the client per type: "[Notice]" lines in light blue, the popup, the pink type 5 line, and it reads the extras of types 3, 6 and 7 instead of dropping the packet. The mob_dispel_banish harness test has an Aqua Road mob dispel a beginner's Nimble Feet and a subway Shade banish the player to the ticketing booth. move_mob moved into the harness's hunting helpers.
Mob skills 133-136 now inflict their diseases. Undead shares Puppet's buff bit 46 and is told apart by its mob skill, on both sides. Stop Potion, Stop Motion and Fear are bits 75-77, each shown with one int; the client had read bit 77 as an int and two bytes. The server refuses potions under Stop Potion and halves recovered HP (potions, Heal, Chakra) under Undead. Stop Motion's damage arrives as a mist hit with no skill code, and the server takes up to its value but never the last HP. The client gives the notices, refuses item use under Stop Potion or Seduce, and hurts a player who stands still two seconds under Stop Motion, with the v83 chat line and packet. Under Fear it blacks out the screen except Effect/MapEff.img/Viewrange/3 around the player, using a new cutout shader mode.
neeerp
force-pushed
the
v83/mob-skills-rest
branch
from
October 17, 2026 23:26
2cf9135 to
3863290
Compare
neeerp
added this pull request to stack #515
October 17, 2026 23:30
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The remaining mob skills: Poison Mist (131), the counters (143-145), Dispel (127), Banish (129), and the diseases Undead, Stop Potion, Stop Motion and Fear (133-136).
What changed
FUN_00431783), HeavenClient hurts the playerxa second while they stand in it, and sends TAKE_DAMAGE from -4.xand tells the field.FUN_0043193a).FUN_007937e3), so the server takes the HP.banMapportal with itsbanMsgas a pink type 5 notice.Viewrange/3around the player, using a new cutout shader mode.Not covered
Verification
diseases,buff_parser,mob_stat_parserandmist_layoutclient tests extended.mob_mists,mob_countersandmob_dispel_banish;mob_skillsandplayer_diseasesextended.Reviewed with sol-loop: 2 rounds with gpt-6.1-sol on high.
Stacked on #512