Compare commits

..

4 commits

Author SHA1 Message Date
6707d64ffb docs: correct stale CoA dispel comments in DCR_init.lua
- COA_CAUTERIZE: bleed IS modelled (DC.BLEED registration exists)
- COA_MENDING_TOUCH: note it is intentionally translation-only (passive)
- COA_BLIGHT_ANTIDOTE: state the 524824 curse-cure is deliberately
  not registered (unverified server-side, like Antivenom's DBC curse)

No behavior change.
2026-06-10 02:15:57 +02:00
a662a14dbb ci(release): sync release.yml from coa-template
hide_archive_links is only honored by Gitea on release edit, not create —
add the PATCH step after create/lookup so auto-generated source archive
links actually stay hidden (coa-template 90874c5).
2026-06-10 02:11:46 +02:00
ffd20d9c74 fix(dispels): map Witch Doctor Hexbreak (806240) as single-target Curse cure
All checks were successful
release / release (push) Successful in 2s
Witch Doctor only had Cleansing Idol (504840, AoE Disease/Poison) registered,
so curses were never flagged or curable. Add Hexbreak (806240) as the
single-target Curse remover (IsBest=1, 40yd instant). DBC dispel-type reads
"Magic" but name+description+gameplay are Curse (cf. Soothing Touch).
2026-05-31 14:45:24 +02:00
af24c1de66 ci(release): hide auto-generated source archives (hide_archive_links) 2026-05-29 20:51:11 +02:00
2 changed files with 10 additions and 4 deletions

View file

@ -37,10 +37,14 @@ jobs:
RID=$(curl -sf -X POST -H "Authorization: token $GITEA_TOKEN" \
-H "Content-Type: application/json" \
"$API/repos/$REPO/releases" \
-d "$(jq -nc --arg t "$TAG" '{tag_name:$t,name:$t,draft:false,prerelease:false}')" \
-d "$(jq -nc --arg t "$TAG" '{tag_name:$t,name:$t,draft:false,prerelease:false,hide_archive_links:true}')" \
| jq -r '.id')
fi
echo "release id: $RID"
# Gitea honors hide_archive_links only on edit, not create — PATCH it
# so the auto-generated Source Code (zip/tar.gz) links stay hidden.
curl -sf -X PATCH -H "Authorization: token $GITEA_TOKEN" -H "Content-Type: application/json" \
"$API/repos/$REPO/releases/$RID" -d '{"hide_archive_links":true}' >/dev/null || true
# Upload every dist/*.zip. Per-asset failures don't fail the job —
# we want partial releases to still publish rather than block the
# whole pipeline on one big file.

View file

@ -506,7 +506,7 @@ function D:OnInitialize() -- Called on ADDON_LOADED -- {{{
DC.SpellsToUse[DS["COA_DEVOUR_CURSE"]] = { Types = {DC.CURSE}, IsBest = 0, Pet = false, } -- Cultist
DC.SpellsToUse[DS["COA_REBUKE"]] = { Types = {DC.MAGIC, DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Templar
DC.SpellsToUse[DS["COA_ANTIVENOM"]] = { Types = {DC.POISON}, IsBest = 0, Pet = false, } -- Venomancer (baseline, poison-only — curse-dispel in DBC doesn't fire server-side)
DC.SpellsToUse[DS["COA_BLIGHT_ANTIDOTE"]] = { Types = {DC.POISON}, IsBest = 1, Pet = false, } -- Venomancer (MoA — same Antidote/Antivenom pattern as 800905; Venomancer curse-dispel needs the dedicated 524824 spell)
DC.SpellsToUse[DS["COA_BLIGHT_ANTIDOTE"]] = { Types = {DC.POISON}, IsBest = 1, Pet = false, } -- Venomancer (MoA — same Antidote/Antivenom pattern as 800905; the dedicated curse-cure 524824 is deliberately not registered: like Antivenom's DBC curse-dispel it is unverified to fire server-side)
DC.SpellsToUse[DS["COA_BURN_IMPURITIES"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 0, Pet = false, } -- Pyromancer
DC.SpellsToUse[DS["COA_SURVIVAL_POTION"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 0, Pet = false, } -- Ranger
DC.SpellsToUse[DS["COA_HEMAL_EXCISION"]] = { Types = {DC.CURSE}, IsBest = 0, Pet = false, } -- Bloodmage
@ -517,6 +517,7 @@ function D:OnInitialize() -- Called on ADDON_LOADED -- {{{
DC.SpellsToUse[DS["COA_SOOTHING_TOUCH"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Primalist
DC.SpellsToUse[DS["COA_SOOTHING_TOUCH_MOA"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Primalist MoA
DC.SpellsToUse[DS["COA_CLEANSING_IDOL"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 0, Pet = false, } -- Witch Doctor — Cleansing Idol (AoE, can't direct-target via click)
DC.SpellsToUse[DS["COA_HEXBREAK"]] = { Types = {DC.CURSE}, IsBest = 1, Pet = false, } -- Witch Doctor — Hexbreak (single-target curse removal, 40yd, instant; DBC type reads "Magic" but description+gameplay = Curse, cf. Soothing Touch)
DC.SpellsToUse[DS["COA_NANOBOT_CLEANSER"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Tinker — Nanobot Cleanser (single-target, direct-castable)
DC.SpellsToUse[DS["COA_CAUTERIZE"]] = { Types = {DC.MAGIC, DC.POISON, DC.BLEED}, IsBest = 1, Pet = false, } -- Pyromancer — Cauterize (Magic + Poison via dummy; 1 Bleed via Dispel Mechanic, re-tagged by DC.BleedSpellIDs)
end
@ -1187,12 +1188,13 @@ function D:GetSpellsTranslations(FromDIAG)
["COA_PRAYER_OF_ELUNE"] = { 801987, }, -- Starcaller (Magic)
["COA_WITCHBLOOD_TONIC"] = { 802278, }, -- WitchHunter (Curse)
["COA_SANCTIFY"] = { 524968, }, -- Sun Cleric (Magic, Poison, Disease)
["COA_MENDING_TOUCH"] = { 524971, }, -- Primalist passive (Soothing Touch +Poison +Disease, Neutralizing Touch self-heal on Magic dispel)
["COA_MENDING_TOUCH"] = { 524971, }, -- Primalist passive (Soothing Touch +Poison +Disease, Neutralizing Touch self-heal on Magic dispel) — intentionally translation-only, never registered in SpellsToUse (passive, not castable)
["COA_SOOTHING_TOUCH"] = { 801439, }, -- Primalist (Poison, Disease — DBC type "Magic" doesn't fire; trust gameplay)
["COA_SOOTHING_TOUCH_MOA"] = { 520841, }, -- Primalist MoA (Poison, Disease — same Soothing-Touch variant pattern as Venomancer's Antivenom/Blight pair)
["COA_CLEANSING_IDOL"] = { 504840, }, -- Witch Doctor (Disease, Poison — AoE idol, 30yd, ticks every 3s)
["COA_HEXBREAK"] = { 806240, }, -- Witch Doctor (Curse — single-target, 40yd, instant; DBC type "Magic" doesn't fire, trust description+gameplay)
["COA_NANOBOT_CLEANSER"] = { 502537, }, -- Tinker / Invention (Disease, Poison — single-target, 40yd, ticks every 3s for 15s)
["COA_CAUTERIZE"] = { 560749, }, -- Pyromancer (Magic + Poison via dummy script; also removes 1 bleed via Dispel Mechanic — bleed not modelled by Decursive)
["COA_CAUTERIZE"] = { 560749, }, -- Pyromancer (Magic + Poison via dummy script; 1 Bleed via Dispel Mechanic — DC.BLEED, re-tagged by DC.BleedSpellIDs)
}
for k,v in pairs(customSpells) do Spells[k] = v end
end