Skip to content

[BUILD_MGR] Added SOS and ST#835

Open
markpnoi26 wants to merge 2 commits intoapoguita:mainfrom
markpnoi26:ADD_SOS_ST_BUILD_MGR
Open

[BUILD_MGR] Added SOS and ST#835
markpnoi26 wants to merge 2 commits intoapoguita:mainfrom
markpnoi26:ADD_SOS_ST_BUILD_MGR

Conversation

@markpnoi26
Copy link
Copy Markdown
Contributor

@markpnoi26 markpnoi26 commented Apr 5, 2026

Summary

  • Add SOS (Signet of Spirits) and Soul Twisting BuildMgr builds with full ChannelingMagic skill implementations (Signet of Spirits, Bloodsong, Vampirism, Summon Spirits, Gaze of Fury, Painful Bond)
  • Split Soul Twisting into OOC/Combat handlers so it only maintains self-buffs while walking and reserves spirit casting for combat
  • Fix spirit skill casting bug in BuildMgr where CastSpiritSkillID would cause heroes to run back and forth without ever casting — the pre-cast movement yielded before UseSkill, and SetTickSuccess() was
    placed after post-cast yields, both incompatible with the headless tree's single-step next() generator consumption
  • Add SpiritBuffExists guard to Communing._cast_protective_spirit to skip re-casting spirits that are already alive nearby

Details

New builds:

  • Ritualist/Rt_Any/SOS.py — Signet of Spirits offensive spirit spammer
  • Ritualist/Rt_Any/Soul_Twisting.py — Soul Twisting protective spirit maintainer (OOC: self-buffs only, Combat: full rotation)

BuildMgr fixes (affects all spirit builds):

  • CastSpiritSkillID: removed _move_for_spirit_cast() pre-move that yielded before the skill was used, added CanCastSkillID early-out
  • CastSkillID / CastSkillSlot: moved SetTickSuccess() before spirit post-cast yields so it executes before next() returns

Skill implementations:

  • ChannelingMagic: added Signet_of_Spirits, Bloodsong, Vampirism, Summon_Spirits, Gaze_of_Fury, Painful_Bond
  • Communing._cast_protective_spirit: added SpiritBuffExists check

@markpnoi26 markpnoi26 changed the title [BUILD_MGR] Added sos and ST, NEED TESTING [BUILD_MGR] Added SOS and ST Apr 6, 2026
reid15halo-ops added a commit to reid15halo-ops/Py4GW that referenced this pull request May 4, 2026
…alist builds)

- Move spirit spawn/step-away wait to after SetTickSuccess in CastSkillID and CastSkillSlot
- Add CanCastSkillID guard in CastSpiritSkillID to fail early
- Add SpiritBuffExists check in Communing._cast_protective_spirit to prevent duplicate spirits
- Add __init__.py for Ritualist package directories

The new SOS.py/Soul_Twisting.py build files from the PR are skipped as our fork
already has more advanced versions (SoS Spirit Spammer.py, Soul Twisting.py).
The ChannelingMagic.py replacement is also skipped as our version includes
Spirit_Siphon, Armor_of_Unfeeling, and ownership-aware spirit checks.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant