← All proposalsWork blog
A single shaft of sunlight falls into a dark crypt where the dead are rising, and a robed mage stands in the beam

The Borrowed Light

A deep dive into Shroud of the Avatar's Sun magic, what forty years of light schools can teach it, and twenty-eight concrete proposals.

Sun magic is the school everyone borrows and nobody keeps. Its torch spell reaches more players than any other single skill we measured across four schools, and the rest of its tree is single-digit reach. This document is the first in the series to carry live usage data: thirty days of skill casts from the live server sit beside every skill in the tree and every proposal in the catalog. The verdict the numbers deliver is specific, and so are the twenty-eight fixes.

0 · Executive summary 1 · Where we are today 2 · Lessons: Ultima to modern 3 · The twenty-eight proposals    Tier 1 · Fix-first (S1–S8)    Tier 2 · Numbers that scale (S9–S17)    Tier 3 · New verbs and the sky (S18–S28)    Considered and rejected 4 · One day and one night 5 · Sequencing 6 · Appendix
Section 0

Executive summary

Games have been trying to make light magic worth casting for forty years. Ultima gave it one job: In Lor, a glow on the end of a stick, while the real day and night cycle did the atmospheric work. Ultima Online ran six years with no sun school at all, then retrofitted Chivalry in 2003, a holy spellbook fueled by tithed gold and the caster's own karma. ESO finally built the dedicated line in 2014: Dawn's Wrath, sun as judgment, with stored damage, a consecrating ultimate, an execute beam, and a decade of balance scars to learn from. Shroud shipped something none of them had: a Sun tree standing opposite a real Moon tree, under a real sky, on a real clock. Then it left the sunlight itself as a coin that lands heads eighteen hours a day.

The live numbers say players noticed. Over thirty days Sun accounted for 0.90 percent of all skill casts, the smallest school we measured: a third of Life, a third of Fire, half of Moon. One skill carries it. Light reached 668 players, 54 percent of everyone who cast anything at all, and the next best skill in the tree reached 150. Three gaps explain the shape: the blind watchman (an anti-stealth kit that cannot see: Reveal Hidden reached 16 players in a month, and Blind's own veterans report nothing they can measure), the sun that does not burn (an anti-undead niche outclassed by Life's Banish Undead and shrugged off by undead who somehow resist sunlight), and the solved sky (a daylight bonus that is on eighteen hours a day is a constant, not a choice). Twenty-eight proposals follow, in three tiers.

TierCardsThemeServer
1 · Fix-firstS1–S8The tree stops lying: tooltips, promised numbers, cone geometry, targeting mannersnone / data-only
2 · Numbers that scaleS9–S17Specialization, Blind, the watchman, the phoenix, the passivesdata + small shared code
3 · New verbs and the skyS18–S28Stored wrath, an execute, hallowed ground, true sunlight, bottled noon, the clock itselfserver-backed / systemic
#ProposalTierSizeServerOne-line pitch
S1Blind tells the truth1Snonethe tooltip finally describes the spell
S2Solar Flare keeps its daylight promise1Sdatathe promised day bonus enters the damage formula
S3Tooltips a player can read1Snonereal radius, real chances, documented phoenix
S4A cone that starts at your hands1Snonepoint-blank targets count
S5A light that grows Built1Sdataradius scales with training; the orb stays centered
S6Elysian spares the deer1Ssmalldamages foes, not wildlife
S7Sunlight you can see Built1SnoneSolar Flare looks like its name; hidden procs show
S8The rainbow gets a reason1SdataRainbow Blast joins its own school
S9A specialization that specializes2Mdataevery gap in the player audit closed
S10Blind that works2Mdataa floor that resistance cannot reduce to zero
S11The watchman's lantern2MserverReveal Hidden becomes a lingering aura
S12A phoenix worth the pyre2Ldatathe seven-year summon deficit, closed
S13Sun Worship for casters2SdataIntelligence, not Strength
S14Elysian minds its manners Built2Mclientno waking your own mez; scaling bugs fixed
S15Undead that fear the dawn2Mdatathe bestiary stops resisting sunlight
S16Dazzling Rays graduates2Mdataa spec bonus and a fair land chance
S17The sun feeds you2Msmallthe dead regen stat wakes up
S18Judgment Built3Lclienta beam you lock into; your allies' blows feed the burst
S19Sunlance3Lserverthe game's first execute, loud and breakable
S20Hallowed ground3Lservercharged Elysian consecrates the floor
S21True sunlight3Lservertagged undead stop resisting the sun
S22What the light kills stays dead3Mserverno raising the sunlit dead
S23Bottled noon3Mservercarry the day into the night
S24Inner Sun3MserverSun Eater keeps the sun inside you
S25The ghost skills return3XLserverNova, Supernova, Destroy Shadows, Blinding Armor
S26The pilgrim's phoenix3Mcontenta solo road to the summon
S27A shorter noon3XLsystemica night worth planning around
S28The day the sun goes out3Lserveran eclipse event, shared with the Moon page
Section 1

Where we are today

The Sun tree holds thirteen trainable skills: nine castable runes and four passives, plus a display-only attunement entry, one combo, and five ghost skills that exist in the code with no data behind them. The tree below is the whole school as it stands, with its live usage beside every skill: casts over thirty days, distinct players, and each skill's reach among the 1,237 characters who cast anything at all in the window.

SKILLS: SUN MAGIC                 30 days on the live server
------------------------------------------------------------
Light ...................... 33,351 casts  668 pl  54.0% (1)
 |
 +- Searing Ray ............ 16,368 casts   93 pl   7.5%
 |
 +- Enlightenment ..........  8,150 casts  150 pl  12.1%
 |   |
 |   +- Reveal Hidden * ....    636 casts   16 pl   1.3% (2)
 |       |
 |       +- Summon Phoenix .    475 casts   25 pl   2.0% (5)
 |       +- Elysian Illum. .  1,531 casts   35 pl   2.8%
 |       +- Solar Flare ....  3,551 casts   28 pl   2.3% (4)
 |
 +- Blind ..................  7,992 casts   67 pl   5.4% (3)
 |   |
 |   +- Dazzling Rays ......  1,527 casts   27 pl   2.2%
 |
 +- Sun Worship [passive] ............. STR, day only (7)
     +- Sun Eater [passive] ........... +3h of day at 100
         +- Mastery: Sun [passive]
         +- Ward: Moon [passive]

Combo: Rainbow Blast (Solar Flare + Douse)
       .........................  3 casts     1 pl   0.1% (6)
Ghosts in the code, never shipped: Destroy Shadows,
Blinding Armor, Solar Strike, Nova, Super Nova ......... (8)

* also requires Searing Ray 40
pl = distinct players. Percent = share of the 1,237
players who cast any skill at all this month.

Every proposal on this page plugs into one pipeline. A skill is a data asset: its costs, its spoken words, and a list of effects whose formulas are evaluated identically on the client and the server. The formulas read tokens, the tokens read the world, and the results pass through attunement math before they land as effects. Most of this catalog is therefore data work, and the diagram shows where each group of cards intervenes.

flowchart LR
  A["Rune asset (data)
costs, words, effect list"] --> B["Combat formula tokens
Sunlight reads 1 by day, 0 by night"] W["Day window 3:00 to 21:00
Sun Eater widens both edges"] --> B B --> C["Attunement and resistance
Sun Attunement vs Sun Resistance"] C --> D["Effect application
buff and debuff channels,
contended per target"] P2["S2 S19 S25 add daylight terms"] -.-> B P15["S15 bestiary resistance audit"] -.-> C P9["S9 spec magnitude scaling"] -.-> C P18["S18 S21 S22 new effect riders"] -.-> D P25["S23 S24 S27 make the window
player-facing"] -.-> W style B stroke:#c9a55a,stroke-width:2px style W stroke:#c9a55a,stroke-width:2px
The one hard constraint. In the combat math, sunlight is a coin, not a dial: the Sunlight term reads 1 in daylight and 0 at night, and daylight runs from 3:00 to 21:00 on the Novian clock, eighteen of every twenty-four hours. There is no noon gradient and no dawn ramp. Only five formulas in the whole game read the coin at all. A day and night hard gate already exists on every skill's data and is used by exactly zero Sun skills. Every card below either lives with the coin or is honest about the cost of reforging it: that work is Tier 3, and it is the biggest number on the page.

Built already, credited, not re-proposed

The school has been worked on. Release 70 added Solar Flare, with the dev note of record saying the school had lacked a second attack of any type until then, and added the Rainbow Blast combo. Release 71 buffed Solar Flare's damage dramatically and gave its specialization a stacking sun resistance debuff shared with Searing Ray, plus a chest enchantment. Release 103 gave the phoenix's attack a chance to blind. Nothing on this page re-proposes any of that, and three cards (S2, S4, S9) finish what Release 70 started.

Territory: the Subterfuge proposals page owns the stealth detection spine and this page cites it rather than re-designing it. The future Moon page owns Twilight combo magic and co-owns the eclipse. The pets program owns summon AI and behavior. Phoenix numbers, the daylight clock, and the school's own kit are owned here.

Section 2

Lessons: Ultima to modern

Oil painting of sunrise over a walled medieval city, long shadows across farmland, a robed figure greeting the dawn from a hilltop
Dawn over New Britannia. Eighteen of every twenty-four hours here are daylight, which is why nobody plans around the sun. The strip below is forty years of games learning that a sky only matters when both of its faces hold something.
1985
Ultima IV
In Lor: light is a candle, not a weapon. The sun's real job is the world's clock and the virtue cosmology.
1997
UO Night Sight
Players deleted the night with one first-circle spell, then with filters. Darkness that is only a nuisance gets optimized out of the game.
2003
UO Age of Shadows
Chivalry, the holy retrofit: tithed gold as spell fuel and karma-scaled potency. How you have lived becomes a stat.
2008
WoW Eclipse
The sun and moon pendulum. It worked when the player's own casts drove it and was hated every time a timer did.
2012
Skyrim Dawnguard
Sun damage that only burns undead, and Auriel's Bow: shoot the sun to call down light, or blot it out. The sky becomes a target.
2014
ESO Dawn's Wrath
The first full sun line in a major MMO: stored wrath, a consecrating ultimate, and an execute beam so strong it ate the school's reputation.
2022
Elden Ring
Golden Order: holy enforces proper death, and skeletons it kills stay down. Also proof that anti-undead is dead weight without undead worth hunting.
2026
SotA today
The only game with a Sun tree opposite a Moon tree under one real clock. And a sun flag that reads 1 for eighteen hours a day.

Ultima and Ultima Online are the ancestry and both cautionary poles at once. The single-player games kept light as pure utility for two decades while the day and night simulation did the real work, and UO shipped no sun school at all for six years. When darkness proved merely annoying, one first-circle spell and a generation of client filters deleted it: the Night Sight lesson, and the reason no card on this page taxes the night. When UO finally built its holy school, Chivalry, it contributed the genre's two most original resource ideas, gold tithed at a shrine as spell fuel and spell potency scaled by the caster's karma. Nobody has stolen them since. They are the only mechanics on this page left explicitly on the shelf for an owner decision.

World of Warcraft teaches three lessons in one game. Its Eclipse system ran the sun-and-moon pendulum experiment for fifteen years: loved whenever the player's own casts drove the swing, hated whenever a timer did, deleted, and re-added in the player-driven form. Its dedicated anti-undead buttons, Turn Undead and Exorcism, were genericized and then pruned, while percent riders survived everywhere: conditional buttons die, modifiers live. And its Infusion of Light proc, a crit that empowers the next heal, is the cheapest beloved mechanic in the holy toolkit.

EverQuest made anti-undead an economy instead of a tooltip. Clerics carried undead-only nuke lines that hit far above their weight, and the game supplied undead camps worth building a leveling path around. The niche spell earned its slot because the niche was a destination. Skyrim's Dawnguard sun spells show the opposite pole: damage that only works on undead is unusable filler everywhere else. The rider survives; the dedicated button starves.

ESO's Dawn's Wrath is the closest living relative and the best-documented one. Backlash stores the damage a marked target takes and detonates a share of it, the mechanic that rewards a group for focusing fire. Nova is offense and party mitigation in one ultimate, with an ally-triggered detonation. And Radiant Destruction, the beam execute, is the cautionary tale this page quotes twice: concentrate a school's identity in one undodgeable signature and the balance politics consume the tree.

Guild Wars 2's Guardian made light a proactive defense: Aegis, a flash that parries exactly the next blow; Symbols, ground you consecrate and fight from. Its warning is about flavor: when the light school's burning plays identically to the fire school's burning, the light school loses its reason to exist. FFXIV supplies the stance verdict: its Astrologian shipped with literal sun and moon stances and removed them, because a stance with a mathematically correct answer is not a choice. That is precisely what an eighteen-hour day makes of every daylight bonus in Novia. D&D remains the source code: the Light-to-Sunburst spell ladder, radiant as a type specific monsters fear, and the tag this page borrows outright, a spell that counts as true sunlight and triggers weaknesses authored elsewhere. Elden Ring's Golden Order contributes the other borrowed hook: holy kills that stay dead.

The clock survey outside MMOs sets the bar for Tier 3. Solasta makes light cut both ways, a torch is a targeting system and a give-away at once. V Rising turns the clock into a second health bar. Dying Light pays players double XP to enter their weak phase instead of taxing them. Terraria makes the eclipse a summonable event with its own loot table. Guild Wars 2's Verdant Brink runs day and night as two halves of one loop, each earning the other. Boktai and Okami make sunlight storable and spendable. The synthesis, and the test every Tier 3 card on this page must pass: a celestial clock is a choice only when both phases hold something exclusive, when players can store or shift the phase, when the weak phase pays, and when none of it can be deleted with a gamma slider.

CapabilityUOWoWESOGW2FFXIVD&D 5eElden RingSkyrim DGSotA todaySotA proposed
Day and night is a real choice● S23 S24 S27
Anti-undead beyond a percent rider● S15 S21 S22
Anti-stealth that works● S11 S25
Execute or finisher● S19
Stored or delayed damage● S18
Consecrated ground● S20
Social and party expression● S18 S20
Phase manipulation● S23 S24
Celestial event content● S28 shared
Virtue coupling○ shelved

● full   ◔ partial   ○ none. "SotA today" reads the unity-6.5 branch, August 2026. Terraria and EverQuest inform the event and anti-undead rows but did not earn columns.

Section 3

The twenty-eight proposals

Tier 1 · Fix-first: honesty and legibility, client and data

Eight cards, all small, all client and data work. The rule for this tier is honesty: every number a tooltip promises is a number the formula pays, every cone starts where the player is standing, and every effect that fires is one the player can see. Nothing here changes what the school is. It makes the school stop lying about what it is.

S1 · Blind tells the truth

BuiltTier 1Size SServer: none

30 days live: 7,992 casts by 67 players, 5.4% of casters, 119 casts per player. The players who slot it spam it while doubting it works.

Built 2026-08-28. The description names all three debuffs now: the target's damage avoidance drops, its Dexterity drops, and with Sun Specialization its chance of a critical hit drops too, all for ten seconds. The amounts were never the missing piece. The effect list under the description has always printed each stat with its duration; the sentence above them named one of the three and called it accuracy.

Blind's description has read "Increases the accuracy of your attack against a target" for years. The spell actually lowers the target's ability to avoid damage, lowers its Dexterity, and with specialization lowers its critical chance. The words and the numbers have never matched, and veterans running 500-swing parses could not tell whether the spell did anything at all. This card rewrites the description to state exactly what the spell does and what each debuff is worth at the reader's skill level. Requested by Barugon, with supporting parses from kaeshiva.

Seen in: every tooltip-literacy pass the genre has shipped since 2015; the fix-first tier of this series.

Implementation notes

Pure localization work. The wrong description lives at Skills.xml:1063. The real effects are three stat debuffs on the rune (damage avoidance (0-lvl/3-10)*NegAtt*(1+BlindPower), dexterity, and the spec-gated weapon crit reduction), all 10 seconds. The rewrite names the three numbers; the mechanical floor that makes them matter against high-level enemies is S10's work, and the two cards are deliberately separate so the words can ship this week.

client loc textserver noneperf nonetests n/arisk none

S2 · Solar Flare keeps its daylight promise

BuiltTier 1Size SServer: data-only

30 days live: 3,551 casts by 28 players, 2.3% of casters.

Built 2026-08-28. The damage expression carries the daylight term now, the same one Searing Ray has had since it shipped: half again the damage during the day, unchanged at night, on top of the focus discount it already had. The card's history is worth stating plainly, because it did not go the way this page assumed. The day after this page was published, the description audit resolved the mismatch the other way and deleted the tooltip's promise, which was the accurate thing to do at the time. This pays the promise instead, and the wording came back with it. One detail the card got wrong: written as (1+Sunlight/2) the engine reads it left to right as (1+Sunlight)/2, which is a fifty percent night penalty and no day bonus at all. It ships as (1+(Sunlight/2)), copied character for character from Searing Ray.

Solar Flare's tooltip promised extra damage during daylight from the day the spell shipped, and the bonus was never written into the damage formula. Only the focus cost reads the sun. This card adds the promised term to the damage itself, matching Searing Ray, which has carried the identical bonus all along. Night casts are unchanged.

Seen in: the school's own Searing Ray, which already pays the same daylight bonus.

Implementation notes

Data-only. The damage expression on the Solar Flare rune gains the (1+Sunlight/2) factor Searing Ray already carries; the Sunlight token itself is evaluated at CombatFormula.cs:1081. The focus discount (48*FocusCostScale)/(1+Sunlight/2) already stacks with this, so a daytime tuning pass follows: if day totals overshoot, the new term drops to (1+Sunlight/4) rather than being removed. Deleting the tooltip text instead was considered and rejected: it would leave the school's second nuke with no day identity, and the spell launched at half of Searing Ray's damage, so headroom exists.

client noneserver rune dataperf nonetests formula evalrisk daytime overshoot; tune the divisor

S3 · Tooltips a player can read

BuiltTier 1Size SServer: none

30 days live: Dazzling Rays 1,527 casts by 27 players; Summon Phoenix 475 by 25.

Built 2026-08-28. Two of the three, and the third had already shipped. Chances printed in any skill tooltip in the game are capped at 100 now, so the 206.4 percent is gone from Dazzling Rays and from every other spell whose chance scales with attunement. An effect whose duration reads the sun prints its day figure beside its night one, which today is Dazzling Rays alone and is the first thing in the game to say the words. Summon Phoenix, which described itself in three words, now says what skill level buys the bird and what specialization adds. The radius line this card asked for landed in the description audit on 15 August, two weeks before the rest of the card, and is pinned by a test.

Dazzling Rays currently tells a player it has a 206.4 percent chance to mesmerize, and never mentions that its duration halves at night. Its radius line landed separately, in the description audit of 15 August. Summon Phoenix does not document its specialization effects at all. This card is the numbers half of the honesty pass: displayed chances are capped at 100 with "before the target resists" phrasing, the radius formula becomes a printed line, the night halving becomes a printed line, and the phoenix tooltip lists what feeding it skill points actually buys. Requested by ConjurerDragon and Rinaldi.

Seen in: ConjurerDragon's Dazzling Rays thread, quoting the 206.4 percent tooltip verbatim.

Implementation notes

Client tooltip composition plus loc. The Dazzling land chance formula (100-(tgtDex+tgtInt)/4)*NegAtt renders uncapped today; display clamps at 100. Radius line prints 5+(lvl/20)+(Mastery*5) evaluated at the reader's level, duration prints its day and night values side by side. The phoenix tooltip gains its innate (Summon Phoenix Power) and the chance-to-blind its attack gained in Release 103, which players could not verify exists (see S7 for making it visible in combat).

client tooltip + locserver noneperf nonetests n/arisk the night-halving line invites questions; S23 and S24 are the answer

S4 · A cone that starts at your hands

Tier 1Size SServer: none

30 days live: Solar Flare 3,551 casts by 28 players.

Built 2026-08-28, taken back out the same day. The near field was built into the targeting gate that every arc spell, every melee swing and every auto attack in the game shares, and in play attacks started picking up targets they should not have. The code is reverted and Solar Flare behaves as it did before. The card stays open: whoever picks it up next has to resolve the near field inside Solar Flare itself, so it cannot reach any other attack.

Solar Flare is a thirty meter cone that misses enemies standing next to you: the narrow arc opens too far from the caster to include point-blank targets. This card moves the cone's origin back so that anything in front of you counts, including the enemy chewing on you. Requested by Chiasma.

Seen in: Chiasma's report that Solar Flare hardly hits anything close to the avatar.

Implementation notes

Client-side targeting change: cone resolution happens on the client (the server holds no positions). Offset the cone origin roughly 2m behind the caster and add a minimum-range inclusion rule so any target within 3m of the front arc qualifies. The 8-target cap is unchanged, which bounds the PvP effect of the wider near field.

client targetingserver noneperf nonetests cone inclusion casesrisk melee-scrum hit counts rise slightly; cap unchanged

S5 · A light that grows

BuiltTier 1Size SServer: data-only

30 days live: 33,351 casts by 668 players, 54.0% of everyone who cast anything. The most adopted skill we measured in four schools.

Built 2026-08-28. Range only, by the owner's numbers: the wide carry light starts at 15 m and buys a metre every 4 points of Light plus one every 10 of Sun Magic Specialization; the orb glow starts at 6 m and buys a metre every 20; both cross their old reach at Light 60. The light now renders for everyone, and its light source sits on the orb instead of two metres in front of it. Intensity and the orb's soft shadows are unchanged. Not on the test shard yet.

Light is the school's front door and the single most carried spell we measured, and training it buys almost nothing: the duration grows, the light does not. This card makes the light itself scale: torch parity at level one, today's brightness near level forty, and a wider, steadier radius beyond it, so the 668 players already carrying the spell have a reason to train the school it belongs to. The drifting off-center orb gets fixed on the way. Requested by Fetid SirDidy, with the orb fix from Barugon's report.

Seen in: the Ultima In Lor to Vas Lor ladder; Fetid SirDidy's radius thread, supported by Violet Ronso.

Implementation notes

Client light parameters scale with skill level on the Light rune's VFX; duration formula and the never-fizzle flag are untouched. Starting radius comes down to torch parity per ConjurerDragon's companion ask, so early torches stay relevant; the level 80 experience never regresses below today's. Orb attach-point centering is a prefab fix. The daylight focus perk that makes trained Light pay ongoing dividends is S17's card.

client VFX paramsserver noneperf larger radii in towns; test deco-heavy scenestests radius curverisk touches 668 players; conservative numbers

S6 · Elysian spares the deer

Tier 1Size SServer: small shared code

30 days live: 1,531 casts by 35 players. The raw line count was 148,987; aura ticks are not casts, and the honest number is the smaller one.

Elysian Illumination's damage aura burns deer, rabbits, and anything else that wanders into its three meter glow, contrary to its own text, which promises harm to enemies. This card makes the aura select on hostility: things fighting you burn, wildlife minding its business does not, and undead always burn regardless. Requested by Ysold, with the undead exemption from ConjurerDragon.

Seen in: Ysold's neutral-wildlife thread; ConjurerDragon's "it should hurt undead always" refinement.

Implementation notes

The hostile trigger volume's target filter (the damage sub-effect, 10 targets, radius 3) selects on hostility relation to the caster rather than proximity faction. The undead carve-out uses the creature-type mask, (Target.CreatureType & Undead), an AND, not an equality: creature types are flags and several bosses carry more than one. Small shared-code change mirrored to both halves of the codebase. The sister behavior, not waking your own mez, is S14.

client noneserver target filterperf nonetests filter truth tablerisk PvP hostility is a relation, not a flag; use the relation path

S7 · Sunlight you can see

BuiltTier 1Size SServer: none

30 days live: Solar Flare 3,551 casts by 28 players; the phoenix's blind proc, added in Release 103, has never been visibly confirmed by a player.

Built 2026-08-30. The verify-first step on the phoenix found the wiring sound and the numbers hollow: the proc rolled its one in four on every hit, but both of its amounts were the owner's Sun Specialization times a constant, which the game holds at zero for anyone not training that specialization, so most phoenixes landed a ten second debuff of minus zero drawn as a fireball called Fire Blast. The blind now takes 10 damage avoidance and 8 Dexterity from every target, specialization adds to that (about 22 and 18 at level 100, where the specialized used to get 25 and 19), it plays Blind's light on the target, and it shows on the target's effect strip under Blind's icon and name. Solar Flare's gap was larger than brightness: nothing at all played on the enemies it struck, where Cone of Cold lands a burst on each. It now lands a golden burst with a short glow on every target, its cast is brighter and warmer with a light on the caster, its sheets stay visible to other players at the range it reaches, and its cast sound is fixed. The card believed that sound had already been corrected once; the fix on record was Cone of Cold's. Solar Flare's played at full volume anywhere in the scene on the first cast and then not at all on later ones, and now plays every cast, from the caster, fading by 25 metres. One consequence stated plainly: a phoenix now lands its base blind on players in PvP, at the strength of a level one Blind.

A spell named Solar Flare should not be outshone by Cone of Cold, and a phoenix that blinds on hit should look like it. This card is an effects pass: Solar Flare gets impact and brightness worthy of its name, and the phoenix's chance-to-blind gets a visible flash and a status icon so the players who paid for it can watch it fire. Requested by CrandalltheFoole; the invisible phoenix proc reported by Anpu.

Seen in: CrandalltheFoole's Solar Flare versus Cone of Cold comparison.

Implementation notes

Art and client only. Solar Flare VFX brightness and impact toward Cone of Cold parity (its audio was already fixed once for the opposite problem: it could be heard across the map). Phoenix blind proc needs a verify-first step: confirm the Release 103 wiring actually fires before making it visible, since Anpu could not observe it and the fix may be a wiring fix.

client VFX + buff iconserver noneperf particle budget on low spectests n/arisk none

S8 · The rainbow gets a reason

Tier 1Size SServer: data-only

30 days live: 3 casts by 1 player. The least used skill we measured anywhere.

Rainbow Blast, the Solar Flare and Douse combo, is filed under no school at all in the skill data, even though the code reserves it a place in the Sun tree. Three casts in thirty days says nobody can find it and nobody would want to. This card refiles it under Sun so it appears with its school, documents it, and gives the school's data a hygiene sweep on the way through: the five ghost skills and the one dead stat get formally marked reserved rather than left as mysteries.

Seen in: the combo's own words on cast, which are better than its numbers: "It takes sunshine and rain to make a rainbow."

Implementation notes

SkillSet data: School None becomes Sun for id 3784, matching the enum's Sun region. The combo's kit (confusion, mind wipe, focus drain, dispel, fizzle debuff) is genuinely interesting and utterly undiscoverable; classification plus S3-style tooltip coverage is the cheap first step, and any retune waits for post-reclassification data. The reserved markers: Destroy Shadows 145, Blinding Armor 147, Solar Strike 13311, Super Nova 13312, Nova 13319 (see S19, S25), and the regen stat nothing writes (see S17).

client tree UI shows the comboserver data rowperf nonetests school mappingrisk none

Tier 2 · Numbers that scale: formulas and data on both halves

Nine cards, medium work, formulas and data on both halves of the codebase. The school's numbers currently do not scale: the specialization pays duration where it should pay magnitude, Blind is flat at every level, and the phoenix tests identical at skill 100 and 200. This tier is where the thirty-day chart starts moving, because it is where training past 40 starts meaning something.

S9 · A specialization that specializes

Tier 2Size MServer: data-only

30 days live: Sun Specialization ranks 11th of 21 in the last published popularity data, chosen mostly as a crit engine for other schools' mages.

A player audit established that most Sun specialization bonuses are token or missing: two skills get no bonus of any kind, the attack debuffs last longer without ever hitting harder, and Blind's bonus is the same at specialization 1 and 200. This card ships that audit. Debuff magnitudes scale with specialization level, Dazzling Rays and Reveal Hidden gain bonuses at all, and the three reported application bugs get fixed: the sun resistance debuff that sometimes fails to apply, the charged-cast blind rider that expires early, and Enlightenment's missing sixth stack. Requested by Chiasma, whose audit is the design document; the Dazzling gap reported by Garfunkel Humperdinck, the stack bug by Echondas.

Seen in: Chiasma's specialization audit thread, revised over five months and never answered.

Implementation notes

Rune-data changes on five skills. Searing Ray and Solar Flare spec debuff becomes magnitude-scaled, -(10 + SpecLvl*0.1) stacking to 3 as today; Blind's crit reduction becomes -(0.025 + SpecLvl*0.00075); Dazzling Rays gains flat land-chance points from mastery; Reveal Hidden gains a tick and radius bonus (parity only, the real rework is S11). The application bugs likely live in shared effect code and go through the mirror both ways. Power-creep guard: the stack cap stays at 3 across both debuff sources.

client tooltips via S3server rune data + small shared fixesperf nonetests spec curvesrisk five skills move at once; ship behind one tuning pass

S10 · Blind that works

Tier 2Size MServer: data-only

30 days live: 7,992 casts by 67 players who cannot measure what they bought.

Against high-level enemies Blind's entire effect is resisted to zero, which is why its most loyal users report it does nothing. This card gives every Blind debuff a floor: a quarter of the effect lands regardless of the target's resistances, the way Moon's Fireflies works, with the other three quarters scaling as today. High-level enemies stop being flat immune, and the spell's twenty-year-old name starts being true. Requested by Barugon, seconded by FrostII, Akandriel, and Tirrag.

Seen in: Fireflies, the Moon school's resistance-independent model, named by the requester himself.

Implementation notes

Split each debuff magnitude into a 75 percent resist-scaled component and a 25 percent fixed floor that bypasses the attunement product (the zeroing path runs through the negative-attunement math at CharacterMath.cs:1218). PvP note: an unresistable component reaches players; the floor is deliberately small and flagged for PvP review before ship. Depends on S1 so the words are honest before the numbers are.

client noneserver rune dataperf nonetests floor math vs resist sweeprisk resistance-independent CC in PvP; keep the floor at 25%

S11 · The watchman's lantern

Tier 2Size MServer: backed

30 days live: 636 casts by 16 players, 1.3% of casters. Two casts in the current week. The deadest active in the school.

Reveal Hidden is an instant pulse that only affects targets already flagged hostile, which is why it fails to reveal hidden creatures that have not decided to attack yet, and why the real anti-stealth meta is archers spraying arrows at shadows. This card rebuilds it as the watchman's lantern: a light that rides on you, pulling hidden things into view every two seconds for its duration, no hostility test, and it takes over the job of revealing invisible walkways that currently and absurdly belongs to Moon's Night Vision. Requested by ConjurerDragon and Rinaldi.

Seen in: ConjurerDragon's lingering-aura redesign; Helios the all-seeing witness, for the name.

Implementation notes

Converts the instant pulse to a caster-attached aura on the same trigger-volume tech Elysian Illumination uses: duration (10+lvl/5)s, radius 5+(lvl/10)*PosAtt, stealth-debuff tick every 2s, 8-target cap unchanged. The hostile-only selection gate drops; selection keys on the hidden state itself. Territory: the Subterfuge proposals page owns the stealth detection spine (its cards S9 to S18), and this card's numbers land inside that framework, tuned jointly, citing rather than re-proposing it. The capstone above this card is in S25.

client aura VFXserver aura effectperf tick volume, 8-cap bounds ittests selection gate casesrisk PvP stealth meta shift; tune with the Subterfuge work

S12 · A phoenix worth the pyre

Tier 2Size LServer: data-onlyFlagship

30 days live: 475 casts by 25 players, against the Fire elemental's 1,664 by 42. The school's marquee summon is fielded by 2% of casters.

The phoenix has been the weakest summon in the game for seven years of continuous, receipted complaint: a moderator verified 10 damage per second against the water elemental's 16, a player test showed damage identical at skill 100 and 200, and the self-revive that justifies the fantasy does not function. This card closes the deficit: baseline damage to elemental parity, real scaling past skill 100, specialization that actually feeds it, a working self-revive, and a documented tooltip. It is the flagship of this page because it is the number one ranked pain point with seven years of named receipts, and because it is pure numbers with no systemic blast radius. Requested by Xee and Chiasma, with verification by Echondas and the tooltip ask from Rinaldi.

Seen in: every summoner school's parity bar; seven years of threads titled some variant of "still not even close."

Implementation notes

Numbers live on the summon prefab and the Summon Phoenix rune data. Baseline damage +60 percent to reach water-elemental parity at equal investment; past skill 80, +0.5 percent per level so 100 versus 200 finally tests different; specialization grants the phoenix crit chance per spec level and the Release 103 blind proc gets verified and made visible (S7). Self-revive fix per the Steam guide report that it never functions. The 400 percent experience drain per use reprices to 200. Territory: pet AI, leash, and behavior systemics stay with the pets program; numbers, scaling, and acquisition (S26) are this page's. Coordinate final numbers with the summon balance pass so tamer pets stay ahead where they should be.

client tooltipserver prefab + rune dataperf nonetests scaling tablerisk summon-parity ripples into tamer balance; coordinate

S13 · Sun Worship for casters

BuiltTier 2Size SServer: data-only

30 days live: passive, no cast lines; the school it fails to support runs 0.90% of all casts.

Built 2026-08-30. Sun Worship pays Intelligence now, 0.12 per skill level while the sun is up: six points at skill 50, twelve at 100, twenty-four at the cap, against the ten and twenty Strength it used to pay. The daylight gate is unchanged, and indoors still counts because the passive reads the clock and not the sky. The Strength is gone, so a melee character who had dipped into the tree for it loses that bonus; the tooltip and the skill description both say Intelligence. The change went through the balance changeset tool so the number the game evaluates is the number the text says, and a fixture pins the stat, the curve and the night zero.

Sun Worship pays Strength in a school built around Intelligence, only while the sun is up, and costs four times the experience of a flat Strength passive that pays more than double. Nobody is worshipping. This card converts it to an Intelligence blessing sized for its price, keeping the daylight identity: the sun above the horizon makes you smarter, as the school's own theme demands. Requested by Chiasma.

Seen in: Chiasma's experience-factor comparison: zero to twelve Strength by day, at four times the cost of a flat plus thirty.

Implementation notes

Data-only: the innate's stat swaps from Strength to Intelligence and the coefficient rises from SunLight*lvl*0.1 to SunLight*lvl*0.12. Daylight gating stays for now; S23 and S24 are the night story. Patch note states the Strength removal plainly for the few melee dippers; the specialization data says the caster off-spec audience dominates the tree, so the trade is right.

client tooltipserver innate dataperf nonetests innate curverisk STR dippers lose out; say so plainly

S14 · Elysian minds its manners

BuiltTier 2Size MClient: data + one gate

30 days live: 1,531 casts by 35 players, the tree's consensus reason to climb past Reveal Hidden.

Built 2026-08-30. The aura now skips an enemy that is asleep unless that enemy is already fighting your party, your pet included. A sleeper that had been hitting you before it went down still wakes on the next pulse, which is this card's own clause. Two corrections from the build: there is no mesmerize channel to read, Dazzling Rays declares none, so the gate reads the target's mesmerized state directly, the same test the pet AI uses; and none of this is server code, the aura is applied by the client that owns each victim, so the server chip above was wrong. The undead bonus, a flat +4 per pulse at every level, becomes +4 at skill 0 and +8 at 100, and the whole pulse now multiplies by the same attunement factor Searing Ray and Solar Flare use, so the resistance debuffs the kit stacks raise it: at grandmaster with three Searing Ray stacks on an undead target the pulse goes from 11.7 to 26.1. The sleeper rule has an off switch on the Live Tunables page. Not on the test shard yet.

Elysian Illumination wakes the enemies your own Dazzling Rays put to sleep, its bonus damage against undead does not scale with level, and its damage ignores the sun debuffs the rest of the kit stacks. One card of manners: the aura skips targets mesmerized by your own school unless they are already fighting your party, and the two scaling bugs get fixed so the aura's numbers respond to investment and to the school's own debuffs. Requested by Ancev; both scaling bugs reported by Xee.

Seen in: Ancev's bar for it: "should be as smart as my earth elemental."

Implementation notes

The mez-skip is a per-tick check on the damage volume's target list against the mesmerize channel; buff and debuff channels are contended per target, so the check reads the channel state that already exists. The undead-bonus scaling and sun-debuff interaction bugs are formula fixes on the damage sub-effect. Shield-slot behavior is unchanged and documented: one shield spell at a time is a game rule, not a Sun bug; the utility-bar request was considered and is in the rejected list.

client noneserver effect filter + formulasperf per-tick channel check, 10-cap bounds ittests skip logicrisk a duo can heal inside a mezzed pack; that is the CC working

S15 · Undead that fear the dawn

BuiltTier 2Size MServer: data + content

30 days live: Life's Banish Undead ran 5,350 casts by 52 players; the anti-undead school's best answer, Searing Ray, reached 93 players on the strength of everything else it does.

Built 2026-08-30. The audit ran over every undead innate pack, and the card's premise did not survive it. No undead family resists sunlight on paper: liches carry 0-AdventurerLevel, ghosts the same, skeletons 0-(20+(AdventurerLevel*0.5)), zombies 0-(20+(AdventurerLevel*0.3)), the control-point liches a flat 0-100, and the burned skeletons the skeleton formula. All of those are vulnerabilities. The one sun-resistant undead in the bestiary is the boss ghost's pack, which resists sunlight only above level 100 and keeps its numbers. What blunts the school is a different row: every undead pack also carries a large positive magic resistance (a level 108 boss lich has 237 of it against 108 points of sun weakness), and the combat math adds magic resistance and sun resistance at full weight into the same target number, so the net is still a wall. No resistance value was changed by this card; the finding is the deliverable. It sets the shape of S21: the sunlight tag has to zero the whole Sun-school sum for undead, magic resistance included, because zeroing an already negative sun row on its own would make them tougher.

The Sun school's designated niche is undead, and the bestiary quietly disagrees: many undead carry high sun resistance, so the school's bonus against them is eaten before it lands, while Life's Banish Undead does the job wholesale. This card is the audit: every undead's sun resistance gets reviewed against a simple rule, sunlight is the thing undead are supposed to fear, and resistance stays only where a boss's story earns it. It is also the foundation card: S21's true sunlight tag is built on the cleaned-up data.

Seen in: majoria70's Banish-versus-Searing receipts; the EverQuest lesson that the niche must be worth hunting.

Implementation notes

Bestiary data pass over undead-typed creatures' SunResistance rows, with a written exception list for bosses whose kit intends it. The resistance path runs through the attunement math at CharacterMath.cs:1218 where target resistance adds against negative-disposition casts. No formula changes; this is content data. The undead type test everywhere is the mask, (CreatureType & Undead), never equality.

client noneserver creature dataperf nonetests data audit scriptrisk blast radius is every undead fight; run the sweep behind a spreadsheet first

S16 · Dazzling Rays graduates

BuiltTier 2Size MClient: data + pet gate

30 days live: 1,527 casts by 27 players, 2.2% of casters, for the school's one respected crowd-control spell.

Built 2026-08-30. Both halves, with the split exactly as the card wrote it: a quarter of the land chance, 25 points plus Sun Specialization points (5 at specialization 100, 10 at 200, the owner picked the smallest of three options), lands regardless of the target’s stats and resistances, and the other three quarters scale as they always did and stop at zero instead of going negative. Nothing that could already be mesmerized moves: through Dexterity plus Intelligence 300 the number is the old number, and an endgame target that used to sit at minus 250 percent now faces the floor. The pet hole closed in the pet’s own decision loop: the pet AI already refused to hit a mesmerized target, and the same gate now holds the pet’s attacks while its owner is mesmerized, keeping its target and resuming the moment the mesmerize breaks. One chip corrected: the pet half is client code, because all pet AI runs on the owner’s client. The hold has an off switch on the Live Tunables page. Not on the test shard yet.

Dazzling Rays is the one Sun combat skill players actually recommend, and it graduates with honors it never received: no specialization bonus of any kind, near-total failure against high-level enemies, and a PvP hole where a mesmerized opponent's pet keeps attacking. This card gives it a real specialization bonus, a land-chance floor against high-level targets in the S10 pattern, and closes the pet hole. Spec gap reported by Garfunkel Humperdinck; the pet hole by Xee.

Seen in: Violet Ronso's recommendation of it as melee-saving CC, the school's one unprompted compliment.

Implementation notes

Data: spec grants flat land-chance points (with S9) and the radius already reads mastery; the floor splits the land chance like S10, three quarters resist-scaled, one quarter fixed. The pet hole is an effect-scope fix: the mesmerize channel's suppression extends to the target's commanded pets, which is a shared-code change on the pet command path. Night duration halving is untouched here; it is the school identity S23 and S24 let you play with.

client tooltip via S3server rune data + pet-path fixperf nonetests floor mathrisk mez uptime in PvP; the floor is chance, never duration

S17 · The sun feeds you

Tier 2Size MServer: small shared code

30 days live: the stat this card wakes has existed for years, localized and defaulted, written by nothing.

Deep in the character sheet sits Solarlight Regen Effectiveness, a fully plumbed stat that no skill, item, or effect has ever written. This card wakes it: Light trained past 40 writes it while the buff is active, scaling the caster's focus regeneration in daylight. The school's front door starts paying an ongoing daytime dividend, the dead stat earns its name, and the moon half of the ledger, which has its own twin stat, is left for the Moon page to claim.

Seen in: the code itself, which reserved the lever and forgot it.

Implementation notes

High-level Light writes SolarlightRegenEffectiveness = 1 + lvl*0.002 while its buff is active (a plus 20 percent focus-regen scale at level 100, daylight only via the same daytime check Sun Worship uses). One shared-code write site plus the regen read that already exists. Stacking with Life and Focus regen tools is multiplicative through the existing stat, which is why the coefficient starts small.

client buff icon lineserver stat writeperf nonetests stat write + windowrisk regen stacking; start at 0.002 and watch
Oil painting of a phoenix of golden flame rising above a hooded mage's outstretched arm at dusk, a faint moon in the sky
A phoenix under the moon. The last tier is the school after dark: bottled noon, a night worth fighting in, and the card this page shares with the Moon school to come.

Tier 3 · New verbs and the sky

Eleven cards, server-backed, and the only tier that touches the sky. Five ghost skills already reserve the design space, one dead stat reserves the regen lever, and the clock itself is the last boss: an eighteen-hour day is why every daylight bonus on this page would otherwise be a constant. The tier ends at the card this page shares with the future Moon page, flagged as shared, because a sun and a moon are one system.

S18 · Judgment

BuiltTier 3Size LClient: new rune + channel

30 days live: no such verb existed in the game. Sun had no spell you committed to, and its combat actives were outcast six to one by Fire's attack runes.

Built 2026-08-30. The card changed shape first. It was written as a mark: a charged Searing Ray that recorded party damage for six seconds and detonated a fifth of it. What shipped is its own spell, so the votes and comments below were cast on the older design and are worth reading with that in mind. Judgment is now a beam you lock yourself into. It ticks Searing Ray's own damage line once a second, for three seconds at the bottom of the tree and up to twelve at the top. While it runs you cannot move and cannot cast anything else, and one hit on you ends it with nothing to show for it. Physical damage anyone else lands on your target is banked while the beam holds, capped at twice what the beam itself has dealt. At the end, or on a second cast, the bank goes off on the target and half of it reaches whatever is standing beside them.

Judgment asks a caster for the one thing they never give up, which is their feet. Plant them and a beam of sunlight burns a single target for as long as you can hold it. Every second it deals what a Searing Ray cast would have dealt, and every blow your melee line lands on that same target is stored in the light. Hold it longer and the stored charge has room to grow with it. Take one step, or take one hit, and all of it is gone. Focus fire finally has a reward, and it is a reward the whole group has to protect.

Seen in: ESO Templar's Backlash for stored damage, the mechanic the genre's only dedicated sun line is best remembered for, and the committed channel casters have had to weigh since EverQuest.

Implementation notes

New rune on a new skill id, unlocked at Searing Ray 40 and Elysian Illumination 40. All of it is client code, the same as the rest of combat. The beam is the first use in the game of the channel effect type, which had been sitting in the code unused since it was written: the tick loop, the break on movement and the interrupt broadcast were already there, so what this card added was the ledger, the break on damage, and the detonation. Duration is (3+(skillLevel/20))*(1+(SunMastery/3)) ticks at one tick a second, clamped to twelve. Those parentheses are load bearing, because the evaluator has no operator precedence and (3+skillLevel/20) would compute (3+skillLevel)/20, which is the mistake card S2 shipped and had to correct. Damage per tick is Searing Ray's expression copied character for character, so the card's claim about a Searing Ray a second is literally true rather than approximately true.

Attunement stays where Searing Ray already has it, on the damage, and is deliberately not in the duration: the positive attunement token averages the caster's attunement with the target's, so a sun-attuned victim would have lengthened the beam aimed at them. The bank counts physical damage from any source except the caster, which keeps a caster's own bleed out of their own detonation and points the reward at a melee line rather than a second mage. Six live tunables carry it: the master switch, the twelve second ceiling, the bank multiplier and its much lower PvP twin, and the splash fraction and radius.

One number worth saying out loud rather than burying. Searing Ray sits on a twelve second cooldown, so a Searing Ray a second is roughly two and a half times the fastest it can actually be cast. Twelve seconds of beam is about twelve Searing Rays where twelve seconds of ordinary play lands at most five, before the stored charge is added on top. That is the price of standing still and losing the whole thing to one hit, and it is the first dial to turn if it lands too hard.

client new rune, channel effect, ledger, burstserver noneperf one accumulator per beamtests ledger math, duration curve, break rulesrisk organized-group burst; the bank multiplier and the per-second damage are the dials

S19 · Sunlance

Tier 3Size LServer: backed

30 days live: no execute mechanic exists anywhere in the game. This one is built on the Solar Strike ghost, reserved in the code since Release 90.

Sunlance is the school's missing finisher: a two second lance of focused sunlight that hits harder the closer its target is to death, brighter still in daylight. It is deliberately loud, visible across the fight, and breakable: stun the caster, or hurt them enough, and the lance gutters out. The counterplay is the design, because the genre already ran the experiment of shipping a sun execute without any.

Seen in: ESO's Radiant Destruction, cited here mostly as the cautionary tale it became.

Implementation notes

New rune on the Solar Strike stub (id 13311), unlocked at Reveal Hidden 40 beside the other deep-tree skills. Two second channel, single target, damage base*(1 + 1.5*(1-targetHealthFrac))*(1+Sunlight/2)*(1+(Undead)/4)*NegAtt: the ramp maxes at plus 150 percent, far under the launch numbers that burned ESO. Counterplay is non-positional by necessity, the server holds no positions: any stun or knockdown on the caster breaks the channel, damage past a threshold breaks it, a hard cap applies against players, and the telegraph is loud on both ends. If the interrupt-and-cap package is ever cut in review, the card is cut with it. No new network group; the existing cast pipeline carries it.

client channel VFX both endsserver new rune + break rulesperf nonetests ramp curve + break tablerisk the whole Jesus Beam saga; the counterplay package is non-negotiable

S20 · Hallowed ground

Tier 3Size LServer: backed

30 days live: Elysian Illumination, the skill this builds on, runs 1,531 casts by 35 players.

A fully charged Elysian Illumination now consecrates the ground where you cast it: a circle of standing light, twenty seconds, in which allies heal faster, undead burn, and nothing can slip into hiding. It merges all three of the school's pillars in one place you choose to defend, and it gives the shield-slot spell a charged payoff worth planning a pull around.

Seen in: Guild Wars 2's Symbols, D&D's Consecrate, FFXIV's Asylum: ground you bless and fight from.

Implementation notes

Charged cast plants a stationary radius 5 field for 20 seconds on the combat-effect-area path, the sanctioned area mechanism given the server holds no positions: plus 50 percent Elysian heal tick for allies inside, the undead damage applies inside, and stealth cannot be entered inside. Already-hidden actors are not popped; the reveal verb belongs to S11 and S25, and the stealth-entry rule lands inside the Subterfuge page's framework. Stacking rule against the caster's own moving aura: the field wins, the aura pauses inside it. Visual note: the decal must read differently from hostile fire rings at a glance.

client decal + audioserver area effectperf one area instance per chargetests field rulesrisk ground-ring visual soup; the decal design is the fix

S21 · True sunlight

Tier 3Size LServer: backed

30 days live: the anti-undead pillar today is a 25 percent rider on two spells, and Life outsells it wholesale.

Some light is just damage. This is sunlight. The school's top casts, Solar Flare, Sunlance, and Nova, tag what they strike as Sunlit for eight seconds: a tagged undead's sun resistance counts for nothing, and a slow radiant burn ticks while the tag lasts. Sunlight becomes the thing the bestiary's audit (S15) says it should be, the one force undead cannot shrug off, and every future shadow-creature and vampire the game ever ships has its weakness pre-authored.

Seen in: D&D's Sunbeam, which "counts as true sunlight"; Minecraft's dawn, the most-played undead burn ever shipped.

Implementation notes

An 8 second debuff applied by the three biggest casts to targets matching the undead or shadow creature-type masks: while present, the target's innate SunResistance contributes zero in the attunement sum at CharacterMath.cs:1218, plus a small radiant tick. Depends on S15's audit so the tag means something coherent per creature. The rider form is deliberate, the WoW lesson: conditional buttons die, modifiers live. Solar Flare alone suffices for version one; S19 and S25 join as they land.

client tag icon + glowserver debuff + resist bypassperf nonetests resist sum with tagrisk worthless until S15 lands; sequenced behind it

S22 · What the light kills stays dead

Tier 3Size MServer: backed

30 days live: a new rider; its stage is every necromancer fight and every Death-magic battle res in PvP.

Anything that dies under the Sunlit tag stays dead: for a full minute its corpse cannot be raised, re-summoned, or dragged back by hostile magic. Necromancer adds stop recycling, and in PvP a Death mage cannot battle-res a teammate the light took. Friendly resurrection is exempt, always: the sun keeps the dead down, it does not keep your friends out.

Seen in: Elden Ring's Litany of Proper Death, holy as the enforcement of proper death.

Implementation notes

A 60 second corpse flag written when the killing blow lands on a Sunlit target: hostile raise and resummon effects check it and fail; Life-school Resurrection and player revival are exempt unconditionally. Cheap server-side, one flag and two checks. The interesting fights are the ones with re-summoning adds and PvP Death res, which is exactly where the school's counter-Death identity belongs; the two schools already oppose through the warding passives.

client corpse glowserver flag + checksperf nonetests exemption tablerisk must never block friendly res; the exemption is unconditional

S23 · Bottled noon

Tier 3Size MServer: backed

30 days live: the skills this serves go dark nightly: Dazzling Rays halves, Solar Flare's discount vanishes, Sun Worship reads zero.

An alchemist's flask that fills while you carry it under the open daytime sky, one charge per game hour, three at most. Uncork it at night and for one minute your Sun magic behaves as if the sun were overhead: the mez holds full length, the flare costs day rates, and the promised daylight damage arrives. A light for when all other lights go out, priced so the night still means something.

Seen in: the Phial of Galadriel; Boktai, the Game Boy cartridge that charged its gun with real sunlight.

Implementation notes

Craftable consumable: charges accrue only outdoors under the daytime check the passives already use, cap 3; consuming grants a 60 second self-buff under which the caster's Sunlight token reads 1, implemented as a per-caster override consulted at the token read (CombatFormula.cs:1081). Undispellable, does not stack with itself, and takes the maximum with S24's floor, never the sum. The whole design is the price: if the flask is cheap or the cap generous, day and night dissolve, the UO Night Sight failure in a bottle. Item-carried charges, no database change.

client charge readoutserver token overrideperf nonetests charge cap + overriderisk trivial charging dissolves the clock; the recipe cost is the design

S24 · Inner Sun

Tier 3Size MServer: backed

30 days live: passive; Sun Eater is the one Sun passive players currently defend, so this rework must be a strict upgrade.

Sun Eater currently stretches an eighteen-hour day even longer, doubling down on the school's least interesting property. Reworked, it keeps the sun inside you instead: trained high, your Sun magic retains most of its daylight strength at any hour, sixty percent at level 100, without touching the world's clock. The day window returns to the same sky for everyone, and the school's deepest passive becomes the reason a Sun mage is dangerous at midnight.

Seen in: Sol Invictus, the unconquered sun; FFXIV's sect removal, the proof that a solved stance is no choice.

Implementation notes

Replaces the additional-day-hours innate (lvl*0.03, plus three hours at 100, split across both edges of the window) with a personal floor: the caster's Sunlight token reads at least lvl*0.006, 0.6 at level 100. Same override point as S23, taking the maximum of the two, never the sum. Note for the patch note: trained Sun Eaters lose the widened window and gain a round-the-clock floor that is worth strictly more in every formula that reads the token; the numbers must make that sentence true, and the window model change reverts the edges to the global 3:00 to 21:00.

client tooltipserver token floor + window revertperf nonetests window model + floor mathrisk a beloved passive changes shape; strict-upgrade math is the contract

S25 · The ghost skills return

Tier 3Size XLServer: backed

30 days live: four skills that have never been cast because they have never existed, reserved in the code since Release 90.

Four named Sun skills sit in the code with no data behind them, and this card gives them bodies. Nova: a burst of noon at midnight, heavy sun damage around the caster, and survivors hit twenty percent softer for eight seconds. Super Nova, its capstone: the afterglow lingers, and a second cast detonates it again, day-gated, so bottled noon or a trained Inner Sun is how you fire it after dark. Destroy Shadows: the anti-stealth capstone, one cast that burns away magical darkness, drags everything hidden nearby into the light, no exceptions, and keeps that ground too bright to hide in for ten seconds. Blinding Armor: a stance for casters who get swung at, where attackers who land a hit risk being blinded by the glare.

Seen in: ESO's Nova and its ally-detonated Supernova; the school's own reserved enum, waiting since Release 90.

Implementation notes

Four new runes on the reserved stubs: Nova 13319, Super Nova 13312, Destroy Shadows 145, Blinding Armor 147; the existing cast pipeline carries all four, no new network group. Nova: close burst, radius 6, 8-target cap, day term, survivors take minus 20 percent outgoing damage 8 seconds (the party-mitigation identity), long cooldown, reagent cost, applies Sunlit (S21). Super Nova ships with the day-hard-gate flag every skill's data already carries and no Sun skill uses, satisfied by S23 or S24 at night, closing the resource loop; version one re-triggers by the caster's own recast, ally-triggered detonation is a flagged stretch goal. Destroy Shadows reveals with no hostility gate, purges shadow-channel effects including Moon's Shadow Form, then plants a 10 second no-stealth-entry field; deep unlock, priced as the direct PvP counter it is, and its detection numbers land inside the Subterfuge framework. Blinding Armor is a self stance, not a shield-slot spell, 30 percent chance on being struck to apply S1's honest Blind for 4 seconds, per-attacker internal cooldown 6 seconds. The four ship separately in this order: Nova, Destroy Shadows, Blinding Armor, Super Nova.

client four skills of VFX and tree UIserver four new runesperf area + stance ticks, cappedtests per-skill suitesrisk identity over-concentration; Nova must be strong without becoming the school

S26 · The pilgrim's phoenix

Tier 3Size MServer: content

30 days live: 25 players field the phoenix; the acquisition wall predates every one of them.

Learning Summon Phoenix requires killing a nine-thousand-health boss built for groups, twice, for what has been the game's weakest summon, a resentment with an eight-year paper trail. Once S12 makes the reward real, this card adds a second road: a solo pilgrimage that builds a phoenix vessel through crafting, travel, and fire, taking longer than the boss but never requiring a group. The wall can stay for those who like walls. Requested by Quenton, SpaceNinjaPirate, and Numa.

Seen in: the 2017 thread asking why the extreme requirement guards this reward, still accurate in 2026.

Implementation notes

Content work: a quest line in the existing journal systems, no new mechanics. Sequenced strictly after S12; lowering the gate before the reward is fixed would spread the disappointment more efficiently. The boss route stays as the fast path.

client noneserver quest contentperf nonetests quest flowrisk none beyond content cost

S27 · A shorter noon

Tier 3Size XLServer: systemic

30 days live: every daylight number on this page runs through a window that is open 75 percent of the time.

Day in Novia runs eighteen of every twenty-four hours, so every daylight bonus in the game is nearly permanent and night is a rounding error. This card is the honest version of fixing that, and it is not a Sun card in disguise: it is a scoping proposal for the world's clock. Phase one gives night its own rewards, night-only spawns, richer gathering windows, a modest experience bonus outdoors after dark, so there is a reason to be awake when the sun is not. Phase two, revisiting the window itself, stays explicitly deferred until night has content worth entering. Nothing here taxes the dark; the genre's graveyard of deleted night mechanics is the reason.

Seen in: Guild Wars 2's Verdant Brink, where day earns night; Dying Light, which pays players double to enter their weak phase.

Implementation notes

Phase one is spawn tables, gathering windows, and an outdoor night experience modifier: content and tuning, no combat formulas. The enumerated consumers of the Sunlight token (Searing Ray, Solar Flare's focus, Dazzling Rays' duration, Rainbow Blast, Sun Worship, and their Moon mirrors) are the audit list for phase two, along with the day window constants. This is the biggest blast radius on the page, which is why it is a scoping card and an owner call, not a numbers card. S23 and S24 are the mercy mechanisms and should be live before any phase two decision.

client noneserver content + tuningperf spawn density at nighttests n/a phase 1risk touches every system that reads the clock; scoped as phases for exactly that reason

S28 · The day the sun goes out

Tier 3Size LServer: backedShared with the Moon page

30 days live: the Moon school this event energizes ran 148,845 casts, twice Sun's volume.

An eclipse comes to Novia: for twenty real minutes the sky goes dark in the middle of the day, creatures that never walk in daylight come out into the false night, and unique treasure drops for those who fight through it. Moon magic surges; Sun mages with a bottled noon or a trained Inner Sun stay dangerous in the dark, which is the point of both cards. A rare scheduled event, plus a craftable trigger for those who would rather not wait. This card is shared territory: the future Moon page co-owns the eclipse, and this page defines only the Sun half.

Seen in: Terraria's Solar Eclipse, a daytime invasion with its own loot table and a craftable trigger; the wolf Skoll, who catches the sun, for the lore.

Implementation notes

Event infrastructure: outdoor scenes read night for the duration via the same daytime override point the personal effects use, applied scene-wide; eclipse-only spawns and loot ride the existing event systems. The craftable trigger tablet is the anti-camping design from Terraria, a material sink that lets a group schedule its own eclipse. Co-design dependency on the Moon page is real and flagged; nothing ships from this card until that page exists and agrees.

client sky + event UIserver event + spawns + lootperf event spawn loadtests event windowrisk content cost; camping pressure; Moon-page dependency

Considered and rejected

Section 4

One day and one night

The danger with twenty-eight proposals is a game with twenty-eight widgets. The composition rule for this page: one deck, one new ground decal, one new consumable, and a clock that finally has two answers. Here is the same room in the same dungeon, ten in-game hours apart. Skill names Judgment, Sunlance, and Bottled Noon are working names.

Dawn
+------------------------------------------------------+
| DAWN, 6:12  The Epitaph, lich hall                   |
|------------------------------------------------------|
| Deck: Searing Ray  Solar Flare  Sunlance  Judgment   |
|       Dazzling Rays  Elysian Illumination            |
| Belt: Bottled Noon (3 charges, full)                |
|------------------------------------------------------|
| Buffs: Enlightenment +14 INT   Sun Worship +9 INT    |
|------------------------------------------------------|
| > Judgment marks the lich. The light keeps score.    |
| > Solar Flare hits 5 enemies for 74 sun damage.      |
| > Judgment erupts for 112 stored sun damage.         |
| > The grave husk falls. It will not rise again.     |
| > Your hallowed circle heals Amber for 12.           |
+------------------------------------------------------+

S18 stored wrath · S2 day term · S22 stays dead · S20 circle · S13 caster passive

Midnight
+------------------------------------------------------+
| MIDNIGHT, 0:40  The Epitaph, lich hall               |
|------------------------------------------------------|
| Deck: unchanged                                      |
|------------------------------------------------------|
| > The crypt stirs at night. Spawns and spoils       |
|   are richer until dawn.                             |
| > You uncork the Bottled Noon. For one minute        |
|   your Sun magic reads the sky as noon.              |
| > Dazzling Rays holds 4 enemies at full strength.    |
| > Sunlance burns brighter as the revenant weakens.   |
| > Bottled Noon: 2 charges left. Dawn in 3 hours.    |
+------------------------------------------------------+

S27 night pays · S23 bottled noon · S16 full-strength mez · S19 execute · S15 undead worth hunting

Same deck in both panels. Only the clock changed.

Section 5

Sequencing

PhaseShipsServerDepends onWhy this order
1 · Honest lightS1–S8none / datanothingEvery lie the tree tells gets fixed before any power moves; the tooltips are the instrument later tiers are judged through
2 · Numbers that scaleS9 S10 S13 S14 S16 S17data + small sharedS1 before S10The specialization card is the scaffolding; three other cards read its multipliers
3 · The watchman and the phoenixS11 S12 S15 S26data + contentSubterfuge alignment for S11; S12 before S26The reward is fixed before the quest gate is lowered; the bestiary audit lands before anything is tuned around undead
4 · New verbsS18 S19 S20 S21 S22 S25backedS15 before S21 before S22The school earns its missing verbs after its existing ones work; the sunlight tag precedes the rider that rides it
5 · The skyS23 S24 S27 S28systemicS27 phase 2 waits on owner call; S28 waits on the Moon pageThe clock is the biggest call on the page, and the mercy mechanisms land before any window changes
flowchart TD
  S1["S1 honest Blind"] --> S10["S10 Blind that works"]
  S9["S9 spec scaling"] --> S16["S16 Dazzling graduates"]
  S9 --> S18["S18 Judgment"]
  S9 --> S19["S19 Sunlance"]
  S2["S2 daylight term"] --> S19
  S15["S15 bestiary audit"] --> S21["S21 true sunlight"]
  S21 --> S22["S22 stays dead"]
  S12["S12 phoenix power"] --> S26["S26 pilgrim quest"]
  S23["S23 bottled noon"] --> S25g["S25 Super Nova day gate"]
  S24["S24 Inner Sun"] --> S25g
  S27["S27 shorter noon"] -.->|mercy first| S23
  S27 -.-> S24
  SUB["Subterfuge page"] -.-> S11["S11 watchman's lantern"]
  SUB -.-> S25d["S25 Destroy Shadows"]
  MOON["future Moon page"] -.-> S28["S28 eclipse"]

The flagship is S12, the phoenix. It is the number one ranked pain point with seven years of named receipts, it is pure numbers with no systemic blast radius, and it is the school's most visible symbol. Shipping it first buys the credibility the sky cards spend. The counter-candidates were Bottled Noon, the most original card but dependent on S2's day term landing first, and the Nova family, the biggest card but the slowest, a bad first impression if it stalls.

Section 6

Appendix

A1 · How the numbers were measured

QuestionAnswer
Window30 days, 15 July to 14 August 2026, UTC
SourceThe live server's combat log store
What counts as a castOne log line per executed skill use. The filter matters: Elysian Illumination's raw line count was 148,987, but filtered to actual casts it is 1,531. Aura ticks are not casts.
Cast countsExact for every per-skill table
Unique playersDistinct character names, approximate counting, within one to two percent at these sizes
Reach percentShare of the 1,237 characters who cast any skill at all in the window
Fairness caveatCasts per player inflates spammable runes: Searing Ray's per-player depth is four times Elysian's, so raw casts overstate its lead. Reach is the fairer adoption metric and the one the tree mockup leads with.
Trend caveatWeekly views use calendar weeks with partial edges; a shared spike across three skills in the week of 3 August reads as one busy event week, not growth
Comparison schoolsLife 252,037 casts (3.08%), Fire 209,610 (2.56%), Moon 148,845 (1.82%), Sun 73,584 (0.90%)
Not measuredDamage dealt, fizzle rates, PvP versus PvE split, deck slotting

A2 · Constraints every proposal honors

A3 · Test surface

The pure-logic pieces all land with editor unit tests: the daylight window model and its edge arithmetic, the Sunlight token's evaluation under the S23 and S24 overrides, the specialization magnitude curves, Blind's floor math against a resistance sweep, the phoenix scaling table, Judgment's stored-damage ledger, Sunlance's ramp and break rules, Bottled Noon's charge cap, and the corpse-flag exemption table. The formula-heavy shape of this catalog is deliberate: data changes are the cheapest to test and the safest to ship.

A4 · Kept faith

Three asks were considered and not carried, and their askers deserve the reasoning in the open: Kelanor's utility-bar Elysian (a game-wide bar rule, not a Sun rule, and S14 goes at the pain underneath it), redfish's Twilight school (deferred whole to the Moon page, where it will be argued at full length), and any hard line-of-sight gate on Reveal Hidden (impossible under the first constraint in A2). Every other named ask in the forum record either has a card above or a rejection with its reason.

A5 · Selected sources

UESP and ESO-Hub on Dawn's Wrath and Auriel's Bow; UOGuide and uo.com on Night Sight, Chivalry, and tithing; the Warcraft Wiki on Eclipse, Exorcism, and Infusion of Light; the Guild Wars 2 wiki on Virtues, Symbols, and Verdant Brink; Square Enix's own forums on the Astrologian sect removal; D&D compendia on the Light-to-Sunburst ladder and true sunlight; Fextralife on the Litany of Proper Death and the Warriors of Sunlight; the Terraria wiki on the Solar Eclipse and its tablet; shmuplations' Boktai retrospective; the Solasta light-and-dark dev diary; and the Shroud of the Avatar forum threads credited on each card, whose authors did years of this page's homework.

Prepared 14 August 2026 against the unity-6.5 branch, from a verified code audit of every skill in the school and thirty days of live-server usage data. Skill names for unbuilt proposals are working names.

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