← All proposalsWork blog
Oil painting of a robed mage on a hilltop at night, drawing threads of silver light down from the great shattered moon into an upraised hand, a lantern-lit town and river below

The Silver Hour

A deep dive into Shroud of the Avatar's Moon magic, what forty years of games learned about celestial cycles from Ultima onward, and twenty-three concrete proposals.

Moon magic has more spells than any other magic school and ranks near the bottom of the game in how often each one is cast. The reason is not that the school lacks ideas. It has two good ones, a stealth half and a starfall half, and a signature mechanic underneath them: half its numbers grow while the moon rides above New Britannia. The problem is that the mechanic is invisible. The moon keeps a seven-hour orbit of its own, up half the time, down half the time, unrelated to day or night, and the game never shows the player any of it. No icon, no calendar, no countdown, not one line of tooltip. Players wait for nightfall and wonder why nothing changed; the wiki itself teaches the mistake; and not a single damage spell reads the state the school is named for. This document measures Moon against the genre that invented lunar magic and proposes twenty-three changes built on one idea: publish the moon's schedule, then make every phase somebody's best hour.

0 · Executive summary 1 · The school we have 2 · Lessons: Ultima Online to modern 3 · The twenty-three proposals    Tier 1 · Fix first (S1–S10)    Tier 2 · The moon made visible (S11–S19)    Tier 3 · The deeper night (S20–S23)    Considered and rejected 4 · The moon, risen 5 · Sequencing 6 · Appendix
Section 0

Executive summary

The genre has been running the same experiment on lunar magic for forty years, and the results are unusually unanimous. Ultima IV made the moons a travel network and players learned lunar arithmetic for the love of it; Ultima Online inherited the system, left the arithmetic invisible, and had to amputate it by 2001. World of Warcraft spent eighteen years and four redesigns on its lunar-solar Eclipse before landing on the answer: the swing is a beloved identity when the player can see the pendulum and both poles are worth being in, and a hated chore otherwise. Persona 3 put the moon's phase on a calendar and turned a cosmic schedule into anticipation; Terraria announces its Blood Moons and the whole server looks up. The verdict across all of them: celestial mechanics succeed exactly insofar as the cycle is visible, plannable, and two-sided, and fail when it is hidden, arrhythmic, or one-sided.

Measured against that bar, our Moon school occupies the one square the genre proves untenable: a real mechanical moon-gate the game never shows, touching only half the school, with a capstone whose endgame erases the cycle entirely. Thirty days of live-server casting data puts the school seventh of the ten adventuring magic and control schools by total casts, and eighth by casts per spell, with the most spells of any school. The gaps cluster in three places:

  1. A state that cannot be seen. The Moonlight term is a binary gate on the moon's own 168-hour orbit, one New Britannia week, up half the time and down half, decoupled from day and night entirely. It swings stealth strength, stealth duration, mesmerize duration, healing, and a Dexterity innate by a third to a half, and the game displays none of it anywhere. The misunderstanding is total: players, a bug moderator, and the community wiki all read "moonlight" as "night," two developers have had to correct it on the record, and the wiki still teaches it wrong today.
  2. Two pillars that never touch. The stealth half reads the moon and still loses to Subterfuge, whose Camouflage reaches full concealment with no conditions while moonless Vanish sits at ninety percent and Shadow Form caps below full even under the moon. The starfall half never asks: not one point of Moon damage carries a Moonlight term. And the school's four identity spells, Animal Charm, Cocoon of Night, Moon Beams, and the Will-o-Wisp, reached a combined fifty-nine players in the last thirty days.
  3. A capstone that erases the identity. Moon Eater widens the moonlit window as it levels until, at grandmaster's end, the moon never sets and the school's clock stops existing. Ultima Online ran this exact experiment with Night Sight itemization: once everyone could buy out the night, night stopped mattering, and the game lost a whole dimension of play. The passive meant to reward devotion is quietly deleting the thing it rewards.

The deal that runs through all twenty-three proposals: Tier 1 fixes what is broken or dishonest, in the open, with the defects filed as tracker bugs the day this page went up. Tier 2 is the keystone, in strict order: the moon appears on your screen, the words start telling the truth, moonlight finally reaches the damage spells, and the school's dead identity pieces, the wisp, the cocoon, the mesmerizes, and two revived spells, get their footing. Tier 3 is the deeper night: the binary splits into named phases so the dark half becomes the assassin's hour, banked moonlight turns the schedule into a plan, and the capstone question is put honestly to the owners. The moon becomes visible; then every phase becomes somebody's best hour.

Where the fences are. Pet power, behavior, and AI belong to the taming rebalance, so every wisp card here is spell-data only; server-side concealment of hidden characters belongs to the Subterfuge page's S24, and every stealth card here carries that caveat; the stealth indicator, the published stealth-break rules, and the re-stealth lockout are Subterfuge's S5, S6, and S11, which this school speaks rather than duplicates; Meteor Shower's wrong-school range formula is claimed by the Fire page's S3; consumables belong to alchemy; the undead resistance wall that hurts every caster is a committed balance-program item these cards land beside, not instead of. Every tuning number below is an illustrative starting point: final values ship through the combat balance program's test-shard changesets and measurement windows.
#ProposalTierSizeServerOne-line pitch
S1Celestial Blessing, repaired Built1Schangeseta malformed formula eats a third of the buff, and the blessing drains an ally's focus
S2Cocoon of Night that survives the night Built1Snonethe hiding expires before the healing; failed casts charge full price for nothing
S3Night Step, honestly lunar1Snonethe moon-blink checks the sun, and its out-of-deck cooldown is six times the rule
S4The Wisp grows up Built1Schangesetthe same minus-one debuff at skill 1 and skill 100, and a passive pasted from the Phoenix
S5Moon Worship notices the moonrise1Snonethe Dexterity bonus goes stale across moonrise; players have filed it as broken for years
S6Shadow Form loose ends Built1Schangesetthe speed bonus dies at half its own form's duration; a phantom reagent roll
S7One sky, one clock1Snonethe tooltip preview computes the moon one day off from the sky it describes
S8Small truths Built1Snonethe silent spell gets its words; ghost skills get labeled; a suspicious column gets audited
S9The Lunar pin suite1Snoneevery Moon formula pinned, moonlit and dark, before a single number moves
S10The documentation tells the truth1Snonethe dev doc, the wiki, and the game describe three different schools
S11The moon on your screen Built2Mnonethe keystone: a buff icon while the moon is up, and a countdown to moonrise
S12Say what the moon does2Mnoneone phrase everywhere, and tooltips that preview both skies
S13Moonlight reaches the damage spells2Mchangesetmoonlit riders on the star spells; base damage never swings with the clock
S14Everything works before you specialize2Mchangeseteight formulas evaluate to exactly zero until you specialize; each gets a real base
S15Stealth parity, tuned in the open Built2Mchangesetmoonlit Moon stealth becomes the best-hidden state in the game, priced by the sky
S16Night sorcery2Lnonespecialized casts under the moon no longer break your hiding; no other school can
S17Mesmerize you can trust Built2Mnonevisible sleep on players, one resistance rule for both charms, the scale pinned
S18Moon Glow, the true moonlight2Mchangeseta silver light that never breaks stealth, revived from a dead skill slot
S19Veil of the Silver Light2Lchangesetthe school's first ward: a damage absorb that grows while the moon is up
S20The phases get names3XLshared datawaxing, full, waning, new; the dark half becomes the assassin's hour
S21Drawing Down the Moon3Lshared databank moonlight under the open moon; spend it under any sky
S22Moon Eater, amplitude not erasure3Lshared dataan owner call: cap the endless moon, convert the rest into a stronger one
S23Night of the Shattered Moon3XLserver eventan announced full-moon half hour when the whole server looks up
Section 1

The school we have

Sixteen implemented skills: twelve castables and four passives in a clean tree rooted at Night Vision. A stationary stealth, a moving stealth, a stealth blink, a hiding cocoon that heals, a resistance blessing, an animal charm, a three-target mesmerize, a mesmerizing pet, a crit-mark swarm, two star spells, and a see-in-the-dark utility; behind them, passives for moonlit Dexterity, a wider moonlit window, specialization, and a Sun ward. Underneath it all, one mechanic no other school has: the Moonlight term, a gate that follows the moon itself.

The tree today
Moon Magic
Night Vision ......................... [1]
├─ Vanish .......................... [4]
│  ├─ Shadow Form .................. [4]
│  │  └─ Night Step ................ [6]
│  └─ Cocoon of Night .............. [3]
├─ Celestial Blessing .............. [9]
├─ Animal Charm .................... [3]
│  └─ Moon Beams ................... [3]
│     └─ Summon Will-o-Wisp ........ [5]
├─ Fireflies ....................... [6]
│  ├─ Meteor Shower ................ [7]
│  └─ Shooting Star ................ [7]
└─ Moon Worship .................... [2]
   └─ Moon Eater ................... [8]
      ├─ Lunar Magic Specialization  [9]
      └─ Sun Warding ...............
School: Powers of night, moonlight, and the hidden step
One mage's evening
This evening
8:03 PM  You vanish from sight. (4m 0s)
9:12 PM  You vanish from sight. (2m 40s)

Buffs: [Night Vision 18:44]
       [Celestial Blessing 3:58]
       [Vanish 2:40]

Deck: Nightfall        Focus 112/145
Same spell, same skill, same night

The two casts differ only because the moon set between them, and nothing on the screen says so. (The wisp additionally requires Celestial Blessing 40; the tree shows first prerequisites.)

The word, settled once. "Moonlight" in this school means the moon is above the horizon, any hour of day or night. The moon runs its own orbit, one New Britannia week long, seven real hours, and is up for half of it. During parts of the cycle the moon rides a daytime sky; on other days the night is moonless. When players reported Moon Worship broken because its bonus vanished at night, the developers' correction was exactly this: the skill is not activated by nighttime, it is activated by the moon being visible in the sky. That correction has been re-explained in threads for eight years because no surface in the game says it. This page proposes making the game say it (S11, S12) rather than asking players to learn celestial mechanics from forum archaeology.

The orbit, and what Moon Eater does to it

The moon's cycle is 168 New Britannia hours, seven real hours, moonlit at the edges of the cycle and dark in the middle. Moon Eater widens the lit window symmetrically as it levels. At grandmaster's end the window covers the whole orbit:

Base sky
84 of 168 h
Moon Eater 100
126 of 168 h
Moon Eater 200
168 of 168 h
moon above the horizon moonlessone row = one 168-hour orbit = 7 real hours

The bottom row is the school's quiet self-erasure: at Moon Eater 200 the moon never sets, every moonlit bonus becomes permanent, and the schedule that makes them bonuses stops existing. Card S22 puts that trade to the owners honestly.

Who actually plays it

SkillCasts, 30 daysDistinct castersReading
Fireflies47,78098 sampledinstant and reagent-free: the school's experience trainer, and a raid mark
Night Vision32,460279 sampledthe school's one broad-adoption spell
Shooting Star27,01940 sampledthe nuke, cast by few, often
Night Step23,5525 sampleda five-player devotion
Celestial Blessing6,066114 sampledthe buff people do share
Meteor Shower4,47850 sampledthe big spell, rarely worth its focus
Shadow Form3,10332 sampledthe moving stealth, losing to Subterfuge's
Vanish2,20444 sampledthe standing stealth, same story
Animal Charm87320 exactthe identity row: four spells, fifty-nine players, one month
Cocoon of Night69118 exact
Moon Beams28812 exact
Summon Will-o-Wisp2449 exact

Live server, 30 days ending 2026-08-14. "Sampled" counts are distinct casters in a random 2,000-cast sample and are lower bounds; "exact" rows cover every cast that month. For scale: the school's 148,758 total casts rank 7th of the 10 adventuring magic and control schools; Life logged 518,105.

How a Moon spell happens

Combat here is a synchronized simulation run on the players' machines: the server relays which rune fired and a random seed, and every client plays the result forward identically. The moon itself is part of that simulation, computed from the world clock. The stage that defines this school is the one nobody can see:

flowchart TB
  A["Glyph played"] --> C["Rune formulas evaluate\nevery number is an expression"]
  C --> D{"The Moonlight term\nis the moon above the horizon?"}
  subgraph CLOCK["The hidden clock"]
    E["World clock\none New Britannia day per real hour"] --> F["The moon window\nup 84 of every 168 world hours\n3.5 real hours on, 3.5 off"]
    F --> G["Moon Eater widens the window\n0.42 hours per level\nat 200 the moon never sets"]
  end
  D --> E
  G --> H{"The answer is binary\n1 moonlit, 0 moonless"}
  subgraph LANDS["Where the answer lands"]
    I["Stealth strength and duration\nVanish, Shadow Form, Cocoon"]
    J["Charm and mesmerize durations\nAnimal Charm, Moon Beams\ncrowd-control resist governs"]
    K["Moon Worship Dexterity\nstale until the next stat refresh"]
    L["Wisp attack durations"]
  end
  H --> I
  H --> J
  H --> K
  H --> L
  M["Shooting Star, Meteor Shower\nno damage spell ever asks"]
  N["The player's screen\nno icon, no calendar, no countdown"]
  D -.->|"never consulted"| M
  D -.->|"never shown"| N
  style D stroke:#8a8fd0,stroke-width:2.5px
  style N stroke:#a33d2e,stroke-width:2px
  style G stroke:#a3771c,stroke-width:2px
The one hard constraint. The server holds no positions and runs no spell logic; the moon, like everything else in combat, is computed on each player's machine from the shared world clock. Stealth itself resolves the same way, which is why every stealth card on this page carries the same caveat: hiding is honest against honest clients, and the server-side answer is the Subterfuge page's S24, not anything this page could duplicate. The good news is the same as every school page in this series: nearly everything here ships as data and formulas on machinery that already exists.
Section 2

Lessons: Ultima Online to modern

Moon magic is older than the MMO. Ultima IV shipped a working lunar computer in 1985: two moons whose phases opened the moongates and chose their destinations, and players learned the arithmetic because the payoff was travel. Ultima Online carried the system live in 1997, phases silently routing the gates, and the lesson arrived within four years: arithmetic nobody can see is misery at MMO scale, and in January 2001 the phase-routing was retired for a menu. The moons kept shining; they just stopped meaning anything. Then the second lesson: Night Sight, the spell that turns night to day, became cheap permanent itemization, and once everyone wore it, night itself stopped existing as a play state. Players today petition to have darkness back. Between those two retrofits sits everything this page proposes: publish the celestial state, and never let a passive buy the cycle out of existence.

Oil painting of a scholar in a sunny garden reading an almanac of moon phases, the great shattered moon clearly visible in the blue daytime sky, a shaft of silver light falling across the table
Full moonlight at noon is normal. The moon keeps its own clock: one New Britannia week, half of it moonlit, none of it shown. The almanac is what this page proposes to build.
1985
Ultima IV: the lunar computer
Two moons' phases open the moongates and choose destinations. Players learn lunar arithmetic for love; the celestial clock as travel network.
1997
UO: the arithmetic goes live
Phase-routed moongates in an MMO, still invisible. By January 2001 the routing is retired for a destination menu: illegible state dies first.
2003
UO: Night Sight erases night
Permanent Night Sight gear becomes universal and night stops existing as a play state. The cautionary tale for every buy-out-the-cycle passive since.
2006
Persona 3: the calendar
The moon's phase on screen every single day; full moons are scheduled bosses. Nobody resents a cosmic schedule they can prepare for.
2010
WoW: the Eclipse bar
The lunar-solar swing becomes a visible pendulum resource. The most-loved incarnation of the most-argued mechanic in the genre.
2011
Terraria: the announced moon
"The Blood Moon is rising" flips the whole world for a night, on screen, for everyone. Shared celestial moments are free community content.
2014
ESO: the fed transformation
The werewolf schedule becomes a sustained-by-action economy: transformation you feed rather than a calendar that owns you.
2015
GW2: banked celestial power
The Druid accrues astral force and chooses when to become celestial. Schedule-shaped power with the timing in the player's hand.
2016
WoW: Eclipse deleted
Removed for "forcing players into watching UI cues." A cycle that dictates rotation on combat timescales is homework, not identity.
2020
WoW: Eclipse returns
The spec lost its soul without the swing; it comes back with both poles empowering different spells. Every phase somebody's best hour.
2022
Elden Ring: night sorcery
Night Comet is damage the enemy cannot see coming; Ranni's moon is cold anti-magic. Stealth and spellcraft fused into one lunar identity.

What each game contributes

Ultima IV and UO: the moongate network, the 2001 legibility retrofit, Night Sight's erasure of night, and necromancy's transformation stances, the school-capstone-as-form template. World of Warcraft: eighteen years of Eclipse, deleted in 2016 for making players watch UI cues and rebuilt in 2020 with both poles worth being in; Celestial Alignment as the designed escape valve; Elune's gift making stealth literally a moon-goddess power. RuneScape: the Lunar spellbook, a whole school of group utility with almost no damage, proof a moon identity can be the traveler's and helper's book for twenty years. Final Fantasy XIV: astral and umbral polarity where the player chooses when to flip, and the astrologian's fixed alternating draw, deterministic phases with disparate effects. Guild Wars 2: banked astral force spent at the player's chosen moment. Elder Scrolls: Daggerfall's forced full-moon transformation, maximal flavor and maximal resentment; Skyrim's gorgeous, mechanically inert moons; ESO's werewolf fed by action, the genre's answer to scheduled power. Elden Ring: night sorceries that fuse stealth and damage, and the moon as cold, occult anti-magic. Terraria, Breath of the Wild, Minecraft, Don't Starve: the announced lunar event, phase-scaled spawns, and the moon as scheduled world content everyone shares. Persona 3: the phase calendar that turns a cosmic schedule into player agency. Majora's Mask: the moon as a visible countdown, and a game about reading it. The occult tradition itself, Dion Fortune's moontides and the rite of drawing down the moon: waxing for growth, waning for banishment, a ready-made grammar in which no phase is dead time, and the direct source for cards S20 and S21.

Capability matrix

CapabilityUOWoWRuneScapeFFXIVGW2ESOElden RingTerraria / BOTWSotA todaySotA proposed
Visible celestial state● Eclipse bar● job gauge● force bar● announced○ nothing● S11
Phase affects damage◔ S13 riders
Phase affects stealth and control● the whole gate● both halves
Player agency over the cycle◔ gear● Alignment● at will● banked● Devour● Bloody Tear◔ erasure only● S21, S22
Celestial world events● Blood Moon◔ rifts, unsung● S23
Transformation identity● stances● forms● Avatar● werewolf◔ deferred
Utility and travel identity● moongates● Lunars◔ unclaimed● S18, S21
Opposed-school axis made tangible● lunar-solar● astral-umbral◔ passive math◔ named, visible
Stealth-magic fusion◔ Shadowmeld● night sorcery○ casts break hiding● S16

● native · ◔ partial or conditional · ○ absent. "SotA today" = the live Moon school, 2026-08. UO's visible-state ◔ is the phases that existed while the gate arithmetic stayed illegible; its agency ◔ is Night Sight gear, the cautionary form of agency. SotA's stealth-and-control ● is real: the moon gate's entire footprint lives there today, which is exactly the imbalance S13 addresses.

Section 3

The twenty-three proposals

Tier 1 fixes what is broken or dishonest, mostly in data, with the defects filed as tracker bugs the day this page went up. Tier 2 is the keystone chain, in strict order: the moon becomes visible, the words tell the truth, moonlight reaches the damage spells, and the school's neglected identity pieces get their footing, including two new spells revived from dead skill slots. Tier 3 is the deeper night: named phases, banked moonlight, the capstone question, and a night the whole server shares. Every tuning number is an illustrative starting point: final values ship through the combat balance program's test-shard changesets and its measurement windows.

The deal, stated once. The moon becomes visible before anything reads it harder; both halves of the sky become states worth being in before the capstone question is asked; and the school's stealth cards speak Subterfuge's instruments rather than inventing rivals. The one-line identity this page tunes toward: the moon keeps a schedule; a Moon mage keeps it better.

Tier 1 · Fix first — honesty, bugs, and the pins

S1 · Celestial Blessing, repaired

BuiltTier 1Size Schangesetaudit find

Celestial Blessing wraps an ally in the moon's protection: four resistances and a shared shield of the celestial schools. Two defects hide inside it. First, its Life-resistance formula is malformed, a constant sits against a parenthesis with no operator between them, and the formula machinery silently discards it, so one of the four buffs has quietly been weaker than its three siblings for years. Second, the spell carries a focus penalty that lands on the target: bless a friend at grandmaster without specializing and you drain up to 100 focus from them, a cost most casters have no idea they are charging. The formula gets its operator back, and the penalty is reworked so blessing an ally never reads as an attack, while keeping a real cost on the caster's side of the ledger.

Built 2026-08-31. Blessing a friend no longer costs them anything. The spell used to hang a lasting focus penalty on the person you buffed, and at grandmaster without the specialization that was 100 focus taken off an ally for the ten to twenty minutes the buff ran, charged by a caster who had no way to see it. That effect is deleted and the price moved onto the cast itself, where it grows with your skill and Lunar Specialization pays it down. Blessing a party of five used to cost you forty focus and cost them five hundred; it now costs you sixty-five and costs them nothing. The four resistances are written identically again, and all four carry the Sun school they were missing, on the one that raises Sun resistance included.

This card was wrong about the malformed formula, and the fix is smaller than it claimed. The stray constant was not making Life resistance weaker. Followed through the machinery that runs these expressions, the constant is put on the stack and then never used, so Life has always been worth exactly what Death, Moon and Sun are worth, and the measured change is zero at every skill level tested. What it was, was a trap: a spell whose data reads one way and runs another, one edit away from becoming a twenty-times resistance buff. It is now the same expression its three siblings carry.

Seen in: the spell-data audit passes every long-lived MMO owes itself; this school's version of the wrong-element paste the Water page found in Cone of Cold.

Implementation notes

Both fixes are formula edits on the spell's data, shipped as one changeset so the expressions regenerate through the real tokenizer, with the sibling-parity pin from S9 holding the four resistances equal. The same changeset trues up the spell's damage-type flags, which currently omit the Sun school even on the buff that raises Sun resistance. The penalty rework is the design decision: the cost must survive, on the caster or as a shorter unspecced duration, or this is a straight buff wearing a bug-fix hat.

client S (formulas)server noneimpact all four resistances equal; allies stop payingtests sibling-parity pin + penalty-side pin

S2 · Cocoon of Night that survives the night

BuiltTier 1Size SServer: nonelive complaint

Cocoon of Night is the Moon tree's only heal: wrap yourself in night, vanish, and mend. Today the wrapping expires before the mending, the hiding runs 20 seconds at grandmaster while the heal ticks for 30, so the cocoon pops while you are still glowing with heal ticks and the room turns on you. Worse, when the spell cannot legally hide you, because something has already spotted you or you moved at the wrong instant, it still charges full focus and starts its cooldown while applying nothing at all. The hiding now lasts as long as the healing, and a cast that cannot apply refuses to fire instead of eating your focus.

Built 2026-08-31, in three parts, two of which were already done. The cocoon's hiding was aligned to its healing on 2026-08-14 and has been holding both for thirty seconds at grandmaster since. The refusal message landed the same day. What was left, and what shipped now, is the half that card actually asked for: a cast that cannot hide you is refused before it starts, so it costs no focus and starts no cooldown, and the glyph greys out while a creature has you targeted or while you are moving. Vanish gets the same, and so does Subterfuge's Camouflage, because the rule lives on the spell rather than on a list of names.

Seen in: reported by Olrun this month, the school's freshest complaint thread; Syee Kco asked for exactly this alignment; ConjurerDragon's reading of the spell, flee, hide, and mend, is the play this fix makes real.

Implementation notes

The duration alignment is data: the hiding effect's single long tick becomes the same tick count and cadence its heal and aggro-drop siblings already use. The charge-for-nothing half is a client fix in the shared stealth-application code, which currently reports success even when it declines to hide you; the same path serves Vanish, so the fix verifies both spells and pins the refund behavior. Whether a cocoon under attack should hold a beat longer is S15's tuning question, not this card's.

client Sserver noneimpact the cocoon hides as long as it healstests duration-parity pin + refusal-refund check

S3 · Night Step, honestly lunar

Tier 1Size SServer: noneaudit find

Night Step's tooltip promises that under the influence of the moon you will step behind your target. The code checks the sun: the behind-step keys on whether it is daytime, not whether the moon is up, so Moon investment does nothing for the school's own blink, and deep Sun investment, which lengthens the day, actually shrinks it. Separately, taking the card out of your deck sextuples the cooldown at grandmaster, a flat 60 seconds against 10 in-deck, where every other rune in the school doubles. The blink now follows the moon like it says, and the out-of-deck cooldown joins the standard rule.

Seen in: the tooltip-versus-behavior fix class every formula-driven game accumulates; the cooldown asymmetry surfaced in this page's own audit.

Implementation notes

The gate swap is one condition in the blink's effect code, from the solar day-check to the lunar one, and it changes when the behind-step works: 3.5-hour moonlit windows instead of the night hours. That is a real behavior change for the spell's small, devoted population, five casters produced its 23,552 casts last month, so it patch-notes plainly and lands beside S11 so the new gate is visible on screen. The cooldown fix is one skill-sheet cell.

client Sserver noneimpact the moon-blink obeys the moon; deck cost obeys the ruletests gate pin under both skies + cooldown-cell pin

S4 · The Wisp grows up

BuiltTier 1Size Schangesetdev-tagged Known

Summon a Will-o-Wisp at skill 1 and at skill 100 and its debuffs are the same minus one: one point of damage resistance for about six seconds, unchanged by anything you train. One of its defensive passives is even wired to the wrong school, a paste from the Phoenix that reads Sun mastery and the wrong toughness stat, on a pet whose owners have negative Sun numbers by design. The wisp's debuff amounts now scale with the summoning skill and the school's own mastery, its defensive passive reads the Moon numbers it was always meant to, and the keening sounds it lost in a past release come back.

Built 2026-08-31, and half of it was already done. The passive pasted from the Phoenix was corrected on 2026-08-14, and the keening the wisp lost came back in July. What was left is the part the threads were really about: three attacks whose every number was fixed, so a wisp summoned at skill 1 and a wisp summoned at skill 100 stripped the same single point of damage resistance for the same seven and a half seconds. The strip now grows with your summon skill and with Lunar Specialization, reaching about eleven points at skill 100 and twenty-five for a specialist. Durations answer specialization too, and the two crowd-control attacks take half the coefficient the others take, so a pet mesmerize cannot run to half a minute.

Seen in: requested by Barugon, thesometimeslurker, and Anpu across four threads with a developer Known tag, the strongest-evidenced ask in the school; sounds reported lost by Xithar; Floors' wider summons-rebalance ask is the taming program's, credited here.

Implementation notes

Spell-data only, by standing contract: pet AI, behavior, and power curves belong to the taming rebalance, and this card touches none of them. The wrong-school paste is corrected against its Phoenix original's shape with Moon terms; the three attack debuffs gain scaling terms inside the standard delta cap, stacking honestly on the usefulness buffs the wisp already received in two past releases. Nine casters used this pet last month; this is the identity row's cheapest rescue.

client S (data)server noneimpact a wisp that grows with its summonertests innate-formula pin + debuff-scaling pin

S5 · Moon Worship notices the moonrise

Tier 1Size SServer: nonelive complaint

Moon Worship grants Dexterity while the moon is up. But the character sheet only recomputes when something else changes, equipment, a buff, a zone line, so the bonus routinely shows stale: the moon rises and no Dexterity arrives until something jostles the sheet, or it sets and the bonus lingers. Players have been filing this as broken since 2017, and the confusion runs so deep that one report famously became the thread where a developer had to explain the moon is not the night. The character state now refreshes itself at the moment of moonrise and moonset, which this page's whole keystone happens to need anyway.

Seen in: reported by Arieus in 2017 and Echondas in the thread the misconception box quotes; the display half was accepted as a bug back then and never landed.

Implementation notes

The moon's window edges are deterministic and computable in advance, so the fix schedules a single stat refresh at the next edge rather than polling. The plumbing is exactly what S11's icon needs; building it here first means the keystone card inherits it free. The edge math gets its own pin, including the widened windows a Moon Eater carries.

client Sserver noneimpact the moonlit Dexterity arrives on timetests edge-schedule pin incl. Moon Eater windows

S6 · Shadow Form loose ends

BuiltTier 1Size Schangesetaudit find

Two small wrongs in the school's moving stealth. The specialization move-speed bonus, the rider players cite as the best reason to specialize Moon at all, expires at half the duration of the form it rides, because its formula is missing the moonlight term its parent has: under a full moon the form runs twice as long but the speed dies on schedule. And the spell rolls to consume reagents it does not actually list, a phantom roll against an empty pocket. The speed now lasts as long as the form, and the dead roll goes away.

Built 2026-08-31. The specialization speed now carries the same duration line the form carries, so under the moon it runs the full sixty seconds instead of stopping at thirty with half the form still to go. Nothing changes with the moon down, and nothing changes for a character without the specialization. The reagent roll is gone; it was rolling against a list with nothing in it.

Seen in: Arkah EMPstrike's forum documentation of the spec riders, the speed bonus that skips the usual two-boost cap, is the reason this rider deserves its full duration.

Implementation notes

Both are formula edits on the form's data in one changeset: the duration expression gains the same moonlight term its parent carries, and the reagent-chance line is removed to match the empty reagent list. Nothing else moves; the form's stealth strength is S15's business.

client Sserver noneimpact the spec speed rides the whole formtests duration-parity pin

S7 · One sky, one clock

Tier 1Size SServer: none

The spell-preview machinery computes the moon one day off from the live game: two implementations of the same orbit disagree by a single day-index, so a tooltip preview can claim the moon is up while the sky disagrees. Separately, three stealth runes are castable on the overworld map even though their own data says otherwise, because a hardcoded list quietly overrides the assets, and one entry appears in that list twice. The preview and the world now read the same moon, and the overworld list becomes what the data says, keeping today's behavior by default.

Seen in: the simulation-versus-tooltip divergence class; the exact off-by-one the shared window model was built to prevent.

Implementation notes

Both moon calculations route through the one shared window model, with a pin holding the preview and the live gate equal across a full orbit. The overworld ruling, keep the three castable or revoke them, is a one-line owner call; the card's default keeps current behavior and makes the data true. This must land before S12's both-states tooltips, or the previews would tell a precise lie.

client Sserver noneimpact the tooltip's moon is the sky's moontests preview-vs-live parity across one orbit

S8 · Small truths

BuiltTier 1Size SServer: none

Built 2026-08-31. Shooting Star speaks. It was the one Moon spell cast in silence, and the words it never received are Luna-Motus-Ylem: moon, motion, matter, one root apart from Meteor Shower's Quaes-Motus-Ylem, so the two now read as a pair, where the shower conjures many, the star is one already falling. The four entries the school's internal roster carries without a skill of their own are labelled now, in both copies of the file that holds them: three are dead spell identities kept deliberately, because S18, S19 and S21 revive them, and the fourth is the attunement entry every magic school has. Nothing in the running game counts them, which is also written down, so the next person to notice twenty entries for a sixteen-skill school does not file it as a bug.

The card was wrong about the wisp, and the audit is why the card asked for one. The wisp's experience column is not two adjacent columns swapped. The swapped form the theory predicts appears on none of the skill table's 1,642 rows, and the value the wisp actually carries is shared exactly with Summon Phoenix, Summon Water Elemental and Summon Ice Elemental. A summon being its own school's outlier on this number is the pattern rather than the exception. It is also not a fee: the same figure that draws four times the pooled experience per cast deposits four times into the skill, so the wisp costs four times as much per cast and levels four times faster for it. Cutting it alone would leave the wisp four times slower to train than the three summons carrying its exact numbers. So the column stays, documented, with a test that makes the four move together or not at all.

One thing the audit found and did not fix: the seven schools with summons disagree with each other about summon training by as much as twelve to one. That is a real question, it is a balance question about seven schools rather than a Moon data fix, and it is written up rather than quietly answered here.

Housekeeping the school owes itself. Shooting Star is the only Moon spell cast in silence: it never received incantation words, where every one of its eleven siblings speaks. The school's internal skill roster still carries three dead spell identities and a placeholder, so anything that enumerates Moon skills counts ghosts, twenty entries for a sixteen-skill school. And the wisp appears to charge four times the normal experience per cast, a value that looks like two adjacent columns swapped in the skill table years ago. The words get written, the ghosts get labeled, and the column gets audited before anyone tunes around it.

Seen in: the quiet data-hygiene pass every ten-year game owes itself.

Implementation notes

The incantation is one localized string behind the standard localization-export verification. Two of the three dead identities are revived outright by S18 and S19, and the third by S21, so the labeling is transitional. The experience-column audit compares the wisp's cost row against every sibling summon before changing anything: if the 400 is intentional, the card documents it instead.

client Sserver noneimpact no silent spells, no ghost skills, no unexplained 4xtests roster-count pin + column audit

S9 · The Lunar pin suite

Tier 1Size S–MServer: none

Before a single number moves, every Moon formula gets a test that locks today's behavior in place, evaluated untrained and at grandmaster, under a moonlit sky and a dark one, since this is the school where a formula can differ by half depending on an invisible gate. A school that shipped a malformed resistance expression, a wrong-school pet passive, and a solar check inside a lunar spell needs its formulas pinned before anyone tunes them. Every card on this page ships against these pins.

Seen in: the Fire and Water pages' wave-zero pattern; today only four corners of the school are pinned, the two Eater passives, the animal charm's duration, and Moon Beams' landing area.

Implementation notes

Editor-mode tests in the project's usual style: every rune and passive expression re-parsed through the real tokenizer and evaluated at the four corners of specialization and sky, plus a structural audit of the school's sixteen skill-sheet rows, prerequisites, experience columns, and card rewards. The moonlight axis makes this suite slightly larger than its siblings; it is the axis every past defect hid along.

client S–M (tests)server noneimpact every later changeset lands on pinstests this card is the tests

S10 · The documentation tells the truth

Tier 1Size SServer: none

The developer reference, the community wiki, and the game currently describe three different Moon schools. The internal doc says moonlight is a sliding value that peaks at deep night; it is a binary gate on the moon's own orbit. It says two of the four passives grant nothing; both grant real, load-bearing bonuses. The wiki tells players Vanish strengthens at night and that Moon Eater extends the night, teaches an attunement ignore-list, and hosts one page that is an empty stub for the school's most important passive stat. This card corrects the internal doc, writes the missing player-facing reference the doc has promised for years, and hands the wiki's editors a sourced corrections list, because half the school's reputation problem is that every written source confirms the misreading.

Seen in: the Water page's documentation-truth card and the tracker bug it filed; the wiki's own editors flagged several of these, including the all-capitals disclaimer someone bolted onto Moon Worship's page in self-defense.

Implementation notes

Documentation only, no game data. The corrections list ships with this page's research citations so wiki editors can verify rather than trust. The in-game strings themselves are S12's card; this one is the paper trail.

client noneserver noneimpact every written source agrees with the gametests none (editorial)

Tier 2 · The moon made visible — the keystone chain and the identity work

S11 · The moon on your screen

BuiltTier 2Size MServer: nonekeystone

Built 2026-08-31. Train Night Vision at all and a Moonlight effect now sits on your buff bar for good. Hover it and it says whether the moon is up and how long until that changes, in the minutes you actually wait rather than in game hours. The countdown is the same orbit the spells read, so the icon cannot tell you one thing while your damage does another, and a character carrying Moon Eater sees their own widened window rather than everyone else's. There is a Show Moon Indicator toggle in the Interface options for anyone who has the schedule memorised and wants the slot back. Not on the test shard yet.

The moon is the school's whole mechanic and the game never shows it. This card puts it on the screen you already watch: while the moon is up, a small buff icon rides your buff bar like any other timed effect, and its tooltip tells you how long until moonset; while it is down, the icon shows the countdown to moonrise. That is the entire card, and it is the most important one on the page. Forty years of celestial-mechanic history says the same thing: the pendulum players can see is an identity, and the one they cannot is a grievance. If you play Moon magic, your best hour is finally on your screen.

Seen in: World of Warcraft's Eclipse bar, which lived and died by its visibility; Persona 3's phase calendar; Terraria's announced moons; every celebrated celestial system in the survey shows its state.

Implementation notes

Rides existing machinery at near-zero cost: a permanent hidden innate whose buff icon shows while the moon-window check passes, with both countdowns computed from the same deterministic orbit the spell formulas already read, one source of truth, no new synchronization. A Moon Eater's widened window displays truthfully for free, because the window math already includes it. Icon noise for non-Moon players is handled by granting the effect only to characters with any Night Vision training, plus an options toggle. One contract, stated plainly: the Subterfuge page's S6 owns the game's single stealth instrument, and this icon is a celestial instrument that will never display stealth state; the two coexist by design.

client Mserver noneimpact the school's core state becomes visibletests edge-countdown pin, base and Eater windows

S12 · Say what the moon does

Tier 2Size MServer: nonekeystone

Half the community, the wiki, and some of the game's own text believe moonlight means nighttime. It does not, and the confusion is not the players' fault: the strings never settled the vocabulary. Every skill that reads the moon now uses one phrase, while the moon is up, and every such tooltip previews both numbers: what the spell does under the moon and what it does under a dark sky, with the live one marked. The mislabeled charm tooltip the wiki has documented for years gets its wording fixed in the same pass. One phrase, both values, no more forum archaeology.

Seen in: the developer corrections quoted in section 1, re-explained in threads for eight years because no surface in the game says it; the both-states tooltip is the Eclipse lesson applied to text.

Implementation notes

A localization pass over roughly a dozen spell and passive descriptions, behind the standard localization-export verification, plus the two-state preview riding S7's corrected math so the preview can never contradict the sky. The tooltip layout gains one line; the school's longer descriptions get watched for clipping, a known trap in this UI kit. The phrase itself carries the mythic register the school deserves, silver light, the risen moon, without inventing cosmology, which stays with the lore owner.

client M (strings + preview)server noneimpact the misconception dies in the text that bred ittests string audit; preview parity rides S7's pin

S13 · Moonlight reaches the damage spells

Tier 2Size Mchangesetkeystone

Not one point of Moon damage reads the moon. This card gives the three offensive spells moonlit riders while leaving base damage identical under both skies, so the rotation never turns off: Shooting Star crits more often while the moon is up; Meteor Shower's craters linger a beat longer; Fireflies' crit-mark bites deeper. The school's most-cast spell, the swarm 98 players already throw 47,000 times a month, becomes the vehicle that teaches the whole population what the new icon means. The moon adds a reason to look up, never a tax for looking away.

Seen in: Minecraft's and Terraria's quiet phase-scaled tuning; the rebuilt Eclipse's rule that both poles stay playable; riders instead of base damage is the survey's unanimous warning about clock-swung DPS.

Implementation notes

Three formula riders in one changeset, each a small term gated on the moonlight check the school already evaluates everywhere else, sized to single-digit percent expected-value swings inside the standard delta cap. The same changeset trues up the meteor sub-effect's avoidance flags, which currently make its damage the only unavoidable strike in the school. Ships after S11 and S12: the state must be visible and understood before it moves anyone's numbers. Answers the school's damage verdict inside its identity rather than with flat numbers, which stay the balance program's.

client S (data)server noneimpact the signature state finally touches the damage halftests rider pins at all four corners

S14 · Everything works before you specialize

Tier 2Size Mchangeset

Moon is the game's worst offender at hiding features behind specialization: Night Step's mesmerize chance, Fireflies' Dexterity mark, four Vanish recovery bonuses, Shadow Form's speed, and Night Vision's extras all evaluate to exactly zero until you specialize, gates dressed as formulas. A new player reads the tooltip, casts the spell, and the advertised effect simply does not exist. Every one of those now has a small real base value, and specialization multiplies it instead of switching it on, the same invariant the Death page wrote into its rules: every formula greater than zero at mastery zero.

Seen in: the Death page's unspecced-functionality invariant; specialization design since the genre learned that specs modify, never enable; Arkah EMPstrike's documentation of the spec riders is the proof they are worth tasting early.

Implementation notes

One changeset batch across the eight gated terms, each rewritten from a switch into a base-plus-scaling shape, specced values preserved, bases back-filled, every term inside the delta cap. Aggregate creep across eight simultaneous terms is the risk, and the three-profile changeset evaluation plus S9's corner pins are the guard.

client S (data)server noneimpact tooltips stop advertising features that are switched offtests mastery-zero floor pin on all eight terms

S15 · Stealth parity, tuned in the open

BuiltTier 2Size Mchangeset

Built 2026-08-31, and the card was measuring the wrong thing. Vanish was not sitting at 90 percent. It was sitting at 50, in both skies, and the moon was worth a thousandth of a point: the formula was missing a pair of brackets, and this game's formula machinery has no operator precedence, so the division at the end was catching the whole sum instead of the training term. Fixed, Vanish computes what it has always said, 90 percent under a dark sky and past full concealment under the moon, which against a creature's awareness is the difference between it losing half its range and losing all of it. That is the parity gap the threads have been describing, and it was one pair of brackets. Shadow Form, the stealth you can walk in, was the other half and the only rune genuinely behind its Subterfuge opposite number: 30 seconds against Silent Movement's 80, on double the cooldown, with training buying it nothing. It now takes Silent Movement's own growth, so the two are level in the dark and the Moon rune doubles under the moon, on the same cooldown. Vanish's duration is untouched, because at 160 seconds against Camouflage's 130 it was already ahead there. Not on the test shard yet.

The forum's verdict on Moon stealth has been stable for years: it is the worse twin. Subterfuge's Camouflage reaches full concealment at skill 100 with no conditions; moonless Vanish sits at 90 percent, Shadow Form caps at 95 with the moon up, and the school's answer to the gap is a passive nobody can see. This card tunes the magnitudes, durations, and the moonlit cap so the trade finally reads on purpose: a Moon stealther under the risen moon is the best-hidden character in the game, and one under a dark sky is still viable, while Subterfuge keeps what it has always sold, unconditional reliability. The sky is the price; the peak is the product.

Seen in: requested by Snakyy, Kain Darkmoor, and Numa across the school's two parity threads; the rogue-versus-druid pattern, reliability versus conditional peak, is the genre's standing answer.

Implementation notes

A tuning changeset over the two stealth formulas, banded explicitly against Camouflage in the changeset's review report so the parity claim is measured, not vibed. Contracts, stated plainly: the Vanish suite is this school's by written cession, but it speaks Subterfuge's instruments, the published break rules, the single stealth eye, the re-stealth lockout, and adds no second stealth instrument; and hiding resolves in the client simulation, so the honest caveat every stealth card carries points at the Subterfuge page's S24 for the server-side answer. Ships after S11: a conditional cap must be visible to be fair.

client S (data)server noneimpact the moon school wins its own signature game, under its own termstests banded comparison pins vs the Subterfuge pair

S16 · Night sorcery

Tier 2Size LServer: none

Moon magic has a stealth half and a spell half that have never touched: today every offensive cast in the school breaks your own hiding, including the swarm you would most want to throw from the dark. For a specialized Moon mage, while the moon is up, Moon-school casts no longer break stealth. Blink from shadow to shadow, mark a camp with Fireflies, mesmerize the sentry, all without surfacing. No other school can do this, the moon's schedule is the price, and the counterplay is already in the game: the Sun school's Reveal Hidden exists precisely to answer it, and wards do the rest. This is the card that turns two half-identities into one whole one.

Seen in: Elden Ring's night sorceries, damage the enemy cannot see coming, the survey's single best combat idea; Elune's stealth-as-moon-gift in the Warcraft lineage; the cross-school grace window this game already ships for smoke is the precedent that casting-from-concealment can be governed.

Implementation notes

A conditional resolution of the stealth-break flag at cast time, specialization above zero, the moon up, and the rune Moon-school, all three or the break happens as today. Triple-gated on purpose, and it can ship to the test shard first behind a flag with the player-versus-player half staged separately; it deliberately does not touch Subterfuge's attack-from-stealth multipliers or any damage math. The client-simulation caveat applies as everywhere: the server-side concealment answer is the Subterfuge page's S24. The Sun page, written the same day, strengthens the counter on its side: its S11 turns Reveal Hidden into a watchman's aura and its S25 revives Destroy Shadows, a no-gate reveal that purges Shadow Form; this card's player-versus-player staging coordinates with those. Ships after S15 so the fusion lands on a tuned base rather than compensating for a weak one.

client M–Lserver noneimpact the school's two pillars become one identitytests break-matrix pin: school, sky, spec, all eight cells

S17 · Mesmerize you can trust

BuiltTier 2Size MServer: none

Built 2026-08-31. Mesmerize resistance was subtracted straight off the chance instead of taking a share of it, which is not a resistance, it is a wall: past a certain amount nothing could land, however good the caster. It now takes a share, so a resistant creature is hard rather than impossible, and a spell that was already landing every time is unchanged. Animal Charm was the one crowd control in the game paying no resistance at all, and now pays what its sibling pays; the practical effect today is nil, because the only thing in the game that carries the stat is a dragon and dragons are not animals, which is the measured reason no compensating change ships with it. The scale is pinned so nobody later writes 75 where the game means 0.75. Night Step's sleep now shows the same mark over its target that Moon Beams already did. The diminishing returns are untouched, as the card promised, and the player-versus-player report is being re-verified on the shard before anything is built on it. Not on the test shard yet.

Players cannot tell a working mesmerize from a broken one, and they have the threads to prove it: reports that the sleep does nothing in player-versus-player, a landing area that historically collapsed onto the caster, two spells in one school with two different resistance rules. The trust rebuild: mesmerized player targets now visibly sleep, with the same clarity monsters get; the school's two charms check resistance the same way, where today the animal charm skips a check its sibling pays; and the resistance stat's scale, which exactly one creature in the game currently authors, gets pinned before anything else is built on it. The crowd-control diminishing returns that already govern both spells stay exactly as they are, and the page says so.

Seen in: reported by The Revenant and Krovakin; a past quality-assurance retest found the mechanism working and the thread stalled anyway, which is precisely a visibility problem; the landing-area collapse reported by Nighthaven is already fixed and test-pinned, credited here.

Implementation notes

Three small pieces: a visible-state pass for mesmerized players, presentation only; a one-case unification in the shared chance code so the charm type pays the same resistance subtraction the stat type already does, paired with a small chance rebase in the same changeset so live effectiveness holds; and a scale pin on the resistance stat, whose only author today is a dragon at three-quarters strength. The player-versus-player complaint gets re-verified before any code, since the last test said it works; if it does, the visibility work alone dissolves the ambiguity that keeps the thread alive.

client Mserver noneimpact sleep you can see, one rule for both charmstests resistance-path parity pin + scale pin

S18 · Moon Glow, the true moonlight

Tier 2Size Mchangesetnew spell

Players asked for real moonlight: a light to see by that does not give you away, because, in the asker's own words, night vision is not moonlight, and the wisp's promised faint glow never worked. Moon Glow casts a soft silver radiance around you that never breaks stealth, burns brighter while the moon is up, and colors the world the way the school's name always promised. It is the school's identity in one small spell, and its skill identity has been sitting dead in the roster for a decade waiting for exactly this.

Seen in: requested by Hemswal The Descended, with the light-and-hidden fantasy spelled out in the original thread; RuneScape's Lunar book is the precedent that a moon school's soul can be utility.

Implementation notes

Revives a dead skill identity already routed to this school, so no roster surgery at all: a skill-sheet row, a spell asset on the existing light-source template, an icon, and localized strings behind the standard export verification. The one real design constraint is the point of the card: the glow must not feed the caster's own visibility, verified against the stealth presentation's inputs. Differentiation is honest: a chest enchantment already grants a wearable light, and this spell is the hands-free, stealth-safe, moonlit-scaled version that belongs to the school. Suggested seat: beside Vanish under Night Vision, the utility branch's first new leaf in years.

client M (asset + strings)server noneimpact the school's name becomes a spelltests stealth-neutrality pin + moonlit-radius pin

S19 · Veil of the Silver Light

Tier 2Size Lchangesetnew spell

The Moon tree has no defense but hiding: no shield, no absorb, nothing to raise when hiding is not an option. Veil of the Silver Light is a damage-absorbing ward woven from moonlight, a modest shield under a dark sky and a strong one while the moon is up, giving the school's support branch a reason to stand in a party that is not stealth-shaped. It also gives Celestial Blessing's side of the tree its first payoff spell, and answers a standing wishlist ask for shield skills in this school by name.

Seen in: requested by Takotora on the wishlist; the moontide-scaled ward is the school's occult source material made mechanical, and mechanically it takes the seat the Water page's Shield of Ice occupies in its own school.

Implementation notes

Revives the second dead skill identity under a new name, a source-only rename with the roster seat preserved. The asset follows the existing shield template and the exclusive shield-slot discipline every school's ward obeys, so it competes for the same slot rather than stacking; the absorb snapshots at cast time, no mid-shield repricing when the moon sets, stated in the design so the sky gate stays honest. Suggested prerequisite: Celestial Blessing at 40, giving that branch its first destination. Skill-sheet row, asset, icon, strings; the strings ride the standard export verification.

client M–L (asset + strings)server noneimpact the school's first ward, priced by the skytests absorb snapshot pin + slot-exclusivity pin

Tier 3 · The deeper night — phases, the banked moon, and the shared sky

S20 · The phases get names

Tier 3Size XLshared datakeystone

Today the moon is a switch: up or not. This card splits the orbit into four named phases and gives each one a job. The waxing moon favors blessings and summons, the wisp arrives stronger, the veil holds more. The full moon is the damage peak, when stars fall hardest. The waning moon deepens marks and mesmerize. And the new moon, the dark half that today is nothing but a tax, becomes the deepest stealth in the game, the assassin's hour. No phase is dead time, which is the single strongest lesson the genre survey produced: the celebrated systems make both halves of the cycle states worth being in, and the resented ones make one half a hole.

Seen in: the occult tradition's own grammar, waxing for growth, waning for banishment; the rebuilt Eclipse's both-poles rule; the astrologian's fixed alternation with disparate effects.

Implementation notes

The orbit model gains a four-window partition and the formula language gains phase terms, shared data on both code trees under the mirror discipline, with the existing binary moonlight term preserved untouched for every formula that already uses it, it simply equals the three lit phases. Deliberately sequenced after the legibility chain has shipped and been observed: the phase HUD upgrade extends S11's icon, the vocabulary extends S12, and each spell family's phase terms ship as their own changeset so the retune never lands as one giant wave. The new-moon stealth peak is banded against S15 and S16 in its changeset so a dark-sky assassin cannot stack every peak at once.

client L + shared dataserver mirror disciplineimpact every phase somebody's best hourtests phase-partition pins + per-family corner pins

S21 · Drawing Down the Moon

Tier 3Size Lshared datanew spell

Moon mages learn the oldest rite in the tradition their school is drawn from: drawing the moon's light down into themselves. Channel under the open moon to bank up to three charges of moonlight; spend one later, and a single Moon cast counts as moonlit under any sky. The schedule stays real, the moon still rises and sets and the icon still counts down, but mastery turns the wall into a plan: save the drawn light for the moment that needs it. This is the agency valve the genre keeps converging on, the banked celestial state spent at the player's chosen moment, and it is the honest version of what the old capstone tried to be.

Seen in: the rite of drawing down the moon, by name; the Druid's banked astral force; the werewolf fed by action rather than owned by the calendar.

Implementation notes

Claims the school's last dead skill identity for the channel spell, and the charge state is a new character stat under the strict shared-data rules every page in this series obeys: appended at the tail of both code trees in landing order behind the sibling pages' queued stats, replicated so formulas can read it, visible as up to three pips on the buff bar, and carried through the standard live two-client verification that every target-authoritative state gets. The one precise rule the design must fix in the asset is consumption order, which cast eats a charge and when, and the cap stays low so the rite is a plan, not a hoard. Ships any time after S11; becomes richer after S20, when a banked charge can carry a phase.

client M + shared dataserver mirror disciplineimpact the schedule becomes a plantests charge state machine + two-client verify

S22 · Moon Eater, amplitude not erasure

Tier 3Size Lshared dataowner call

Moon Eater's endgame today is a moon that never sets: at the cap the window covers the whole orbit, every moonlit bonus becomes permanent, and the school's signature rhythm stops existing, for that character, forever. Ultima Online ran this experiment with Night Sight itemization and lost the night. This card is a question put honestly to the owners rather than a plan: cap the window extension partway, keep the moon always longer for an Eater but never endless, and convert the remaining investment into a stronger moon, brighter moonlit bonuses and sooner moonrises, so devotion buys amplitude instead of erasure. Current Moon Eater investors would be grandfathered, and nothing moves before the phases of S20 have proven the cycle worth preserving.

Seen in: the Night Sight postmortem, the founding cautionary tale of celestial design; the fed-transformation and banked-force patterns that convert schedule-erasure into schedule-mastery.

Implementation notes

Explicitly optional and explicitly gated: the recent Eater fixes and their pinned tests, the window arithmetic and the two Eaters' parity, stay authoritative unless the owners take this trade. The shape if taken: the window contribution caps around three-quarters of the orbit, the residual investment feeds a new amplitude stat under the same tail-append shared-data discipline as S21's, read by the moonlit riders of S13 and the phase terms of S20, and the Sun school's twin passive is consulted for symmetry. The nerf-perception risk is the biggest on the page, which is why the card ships last, grandfathered, and only after the cycle it preserves has become valuable.

client S (data) + shared dataserver mirror disciplineimpact devotion buys a stronger moon, not a deleted onetests window-cap pins; Eater parity preserved

S23 · Night of the Shattered Moon

Tier 3Size XLserver event

New Britannia's moon is broken, and pieces of it already fall from the sky, whole scenes are built where they land. Once per full phase, the sky finally says so: an announcement rolls across the world, and for half an hour meteors streak the dark, wisps swarm the wilds, and moonlit hunters find the world briefly generous. Terraria proved this pattern fifteen years ago: an announced celestial event, cheap on content and rich in anticipation, turns a private mechanic into a server-wide moment. The moon's calendar is a community asset; this is the card that spends it.

Seen in: the announced Blood Moon, the broadcast celestial reset, the full-moon operation; every version of the shared sky the genre has shipped.

Implementation notes

The only server-backed card on the page, and deliberately the last: it triggers from the same deterministic phase model as everything else, on the existing scene-event machinery, and its content slice starts as small as it can while still being real, one announcement line, shard-fall dressing, one spawn-table surge, one drop hook. The world and content team owns the event's insides; this page owns the clock and the claim. If any persistent event state lands in the database, the standard migrations ledger entry ships in the same change.

client contentserver event trigger + contentimpact the whole server looks up at oncetests trigger-schedule pin; content QA

Considered and rejected

Section 4

The moon, risen

What the first two phases feel like, on the same screen the game already draws. Twenty minutes in Superstition Canyon, before and after: the numbers on the left are live today, and the moments on the right are cards S11, S13, S16, and S4, with the illustrative values the caption flags.

Today
8:40 PM, Superstition Canyon
Buffs: [Night Vision 18:12]
       [Celestial Blessing 3:58]

You vanish from sight. (2m 40s)
Night falls over the canyon. You try again.
You vanish from sight. (2m 40s)
You spin the Cocoon of Night. Hidden.
The wolf turns toward you. You are seen.
Your cocoon keeps mending as the wolf bites.
You cast Moon Beams. The elder wolf resists.
You cast Moon Beams. The elder wolf resists.
Your wisp keens. Damage Resistance -1 (6s)
Focus 38/145Deck: Nightfall

The mage waited for night, and nothing improved, because the gate is the moon, not the dark, and the screen never said so. The cocoon's hiding died ten seconds before its healing. The wisp's minus one is real, and identical at any skill.

After phases 1 and 2
8:40 PM, Superstition Canyon
Buffs: [Moon: below  Moonrise 0:14]

You hold to the shadows. Moonrise in 14m.
The moon rises over the canyon.
Buffs: [Moon: risen  Moonset 3:30]
You vanish from sight. (4m 0s)
You loose Fireflies from hiding.
You remain hidden.
The swarm clings to the wolf. (60s)
Your wisp keens. Damage Resistance -6 (20s)
You cast Moon Beams. The elder wolf sleeps.
A Shooting Star falls from the moonlit
sky. A critical strike for 74 damage.
Focus 96/145Deck: Nightfall

The four moments, in order: the icon with a countdown (S11), the planned moonrise, the cast that keeps you hidden (S16), and the wisp that grew (S4). The wisp's minus six and the star's 74 are illustrative starting points, like every number on this page.

The same screen, three small additions

Everything the keystone asks for fits inside surfaces the game already draws. One buff icon, one tooltip line, one line of text in the map window:

The composed surface
[A] BUFF BAR
 [Moon: risen 1:47] [Night Vision 14:20] [Vanish 3:12]
  +------------------------------------------------+
  | Moonlight                                      |
  | The moon rides above New Britannia.            |
  | Your Moon magic is at full strength.           |
  | Moonset in 1h 47m.                             |
  +------------------------------------------------+

[B] SKILL TOOLTIP (Vanish, skill 100)
  +------------------------------------------------+
  | Vanish                                         |
  | Fade from sight where you stand.               |
  | Duration: 4m 0s under moonlight, 2m 40s        |
  | without. The moon is up now.                   |
  +------------------------------------------------+

[C] MAP WINDOW, CLOCK AREA
  Day 12, 9:04 PM      The moon is up. Moonset in 1h 47m.
A: S11, the celestial buff · B: S12, both skies in the tooltip · C: the almanac line
Section 5

Sequencing

Legibility ships first because everything else on the page reads through it: a conditional stealth cap is only fair if the condition is visible, a moonlit rider only teaches if the moon is on screen, and the capstone question is only askable once the cycle it preserves is worth something. Nothing that reads the moon harder ships before the moon can be seen.

WaveShipsRule
W0 · TruthS9 pins, S10 documentation; the audit bugs behind S1 through S8 filed the day this page goes up.Every formula edit lands on pins; the localization export path gets verified before any string card.
W1 · The mendS1, S4, S6, and S3's data half as one changeset batch; S2, S3's gate swap, S5, S7, S8 alongside.Fix-first before any new power; each fix published with what was broken.
W2 · The riseS11, then S12, strictly in order; S14 as its own changeset batch and S17 ride alongside.The icon before the words, the words before anything that reads them.
W3 · The silver kitS13, then S15, as separate changesets; S16 after S15; S18 and S19 with one shared icon-and-strings pass.Riders after the state is visible; the fusion after the base is tuned; the new spells ride the proven vocabulary.
W4 · The deeper nightS20 in slices, the phase model and HUD first, then one spell family per changeset; S21 after S11, richer after S20; S22 only on owner sign-off after S20; S23 last, smallest-first.The biggest retune ships behind the proven legibility layer, never before; the capstone question waits for the cycle to be worth keeping.
flowchart LR
  W0["W0 pins + truth"] --> S11["S11 the moon on screen"]
  S5["S5 moonrise refresh"] --> S11
  S7["S7 one sky, one clock"] --> S12["S12 the words tell the truth"]
  S11 --> S12
  S12 --> S13["S13 moonlit riders"]
  S11 --> S15["S15 stealth parity"]
  S15 --> S16["S16 night sorcery"]
  S12 --> S18["S18 Moon Glow"]
  S1["S1 blessing repaired"] --> S19["S19 the Veil"]
  S12 --> S19
  S13 --> S20["S20 the phases get names"]
  S11 --> S21["S21 Drawing Down the Moon"]
  S20 --> S22["S22 Eater amplitude, owner call"]
  S20 --> S23["S23 Night of the Shattered Moon"]
  style S11 stroke:#8a8fd0,stroke-width:2.5px
  style S20 stroke:#8a8fd0,stroke-width:2px
  style S23 stroke:#a33d2e,stroke-width:2px
Section 6

Appendix

A1 · Why almost everything here is a data change

Combat in this game is a deterministic simulation run on every player's machine; the server relays which spell fired and a random seed, and the moon itself is computed from the shared world clock. A magic school is therefore mostly authored data, formulas, effect entries, skill-sheet cells, and this page is shaped accordingly:

Change classCardsWhat it touches
Formula and tuning changesetsS1, S3, S4, S6, S13, S14, S15Spell expressions, regenerated through the real tokenizer with pins
Client fixes and presentationS2, S3, S5, S7, S11, S12, S16, S17The stealth-application path, the stat-refresh scheduler, the celestial buff, tooltips, mesmerize visibility
New spells on existing machineryS18, S19, S21 (identities already in the roster)Skill-sheet rows, spell assets, icons, localization
Shared enum appends (both code trees)S20, S21, S22Append-only stats and phase terms under the shared-source mirror discipline
Server-backedS23 onlyAn event trigger on the existing scene-event machinery
Tests and documentationS9, S10, and every card's pinsEditor-mode formula pins; the reference docs and the wiki corrections list

A2 · Constraints every proposal honors

A3 · Test surface

S9 is the foundation: every Moon formula pinned at the four corners, untrained and grandmaster, moonlit and dark, with a tokenizer round-trip. On top of it, per-card pins: S1's sibling parity, S2's duration parity and refusal refund, S3's gate under both skies, S4's innate formulas, S5 and S11's window-edge schedule including Moon Eater's widening, S7's preview-versus-live orbit sweep, S13's rider corners, S14's mastery-zero floors, S15's banded comparison against the Subterfuge pair, S16's eight-cell break matrix, S17's resistance-path parity, S18's stealth neutrality, S19's absorb snapshot, S20's phase partition, S21's charge state machine with the two-client checklist, and S22's window cap with the two Eaters' preserved parity.

A4 · Player asks answered on this page

AskAsked byAnswered
Make the wisp's debuffs scale with skillBarugon, thesometimeslurker, Anpu; summons context from FloorsS4
Bring back the wisp's lost soundsXitharS4
Make Cocoon of Night usable in a real fightOlrun, Syee Kco; intended use defended by ConjurerDragonS2, S15
Moon stealth parity with SubterfugeSnakyy, Kain Darkmoor, Numa; build questions from Vicious Malice, Proteus Tempest, Huckleberry, Nog, PounceS15, S16
Moon Worship's Dexterity arriving late or not at allArieus, Echondas; the on-record corrections by the teamS5, S11, S12
Mesmerize that visibly works on playersThe Revenant, KrovakinS17
A true moonlight light-source spellHemswal The Descended; night-vision context from Vallin TregresS18
Shield skills for the Moon schoolTakotoraS19
More viable Moon damage and debuffsSyee Kco's school audit; Serr Peters and Cathy Earnshaw's wishlist threadS13, S14
The spec riders worth specializing fordocumented by Arkah EMPstrikeS6, S14
Moon Beams landing at the caster instead of the targetNighthavenFixed and test-pinned before this page
Shooting Star's icon confused with Meteor Shower'sThe Revenant; confirmed fixed by AnpuFixed within a day, before this page
Moon Eater scaling matched to its own cycleBarugonShipped earlier this month, before this page
An area confusion spell in the treeSyee KcoHeard at S20's phase variants, considered-and-rejected for now
Attunement-supporting itemizationSerr PetersCredited to the enhancement page's rail

A5 · Data sources and method

Shipping game data (the sixteen Moon skill-sheet rows, the twelve rune assets and their sub-effects, the four innate packages, the orbit and window constants); the combat engine's formula, effect, stealth, and crowd-control code; the balance program's targets and change log; thirty days of live-server skill-use telemetry ending 2026-08-14, 8.88 million cast events across all schools, with per-skill distinct-caster counts from random 2,000-cast samples, exact where a skill's whole month fit inside the sample; the school's developer reference and the community wiki, read against the data; roughly thirty community threads from 2015 through this month, including the two developer corrections on the moonlight question; and the genre record, from Ultima IV's moongate arithmetic through UO's two retrofits, WoW's Eclipse era and its deletion and return, RuneScape's Lunar book, FFXIV, GW2, the Elder Scrolls werewolf lineage, Elden Ring's night sorceries, Terraria, Persona 3, Majora's Mask, and the occult tradition the school's fantasy is drawn from.

Prepared 2026-08-14 against the unity-6.5 migration branch. Companion markdown: docs/plans/2026-08-14-moon-magic-improvements-proposal.md. Twenty-three proposals: ten fix-first, nine core, four deeper night. Eighth page in the magic-school series, after Fire, Earth, Life, Death, Water, Air, and Sun.

Feedback

General comments

No account needed. Every proposal above also has its own Discussion box for talking about that one alone; this thread is for the plan as a whole. Comments are plain text, held to basic decency, and may be trimmed.

← All proposalsWork blog