Atmosphere tests
43 of 43 passed · each test's latest run, 2026-10-14 15:02 to 2026-10-15 18:23
Performance
✓ All measurements within their limits.
Test system
Signing in
last run 2026-10-14 15:13Frame rate
last run 2026-10-14 15:09Measured for 10 s at each place fps with effects fps the effects take
All numbers
frame-rate-performance
load-performance
moo-canyon-water-performance
auberdine-water-performance
volume-cost PASS last run 2026-10-14 15:32
Measures what the Volumetric Light box costs, 10 seconds each, at Stormwind's harbour and on Elwynn's ridges: light on, off, on, off, on, so a drift in the GPU's speed shows. Every other control as frame-rate-performance sets it. The frame log gives each pass's GPU and CPU time. The game window must be in front.
- Harbour, light on (1 of 5), frames a second108.6 (at least 1)
- Harbour, light off (2 of 5), frames a second137.9 (at least 1)
- Harbour, light on (3 of 5), frames a second114 (at least 1)
- Harbour, light off (4 of 5), frames a second128.4 (at least 1)
- Harbour, light on (5 of 5), frames a second119.1 (at least 1)
- Elwynn, light on (1 of 5), frames a second95.3 (at least 1)
- Elwynn, light off (2 of 5), frames a second111.7 (at least 1)
- Elwynn, light on (3 of 5), frames a second93.4 (at least 1)
- Elwynn, light off (4 of 5), frames a second111.8 (at least 1)
- Elwynn, light on (5 of 5), frames a second93.3 (at least 1)
No screenshot taken.
Positions and messages
Where the character was: arrive -8625.00 1328.90 5.60 in 1.0 s heading 36.90 heading 36.90 pitch -12.40 arrive -9416.70 -2248.00 67.80 in 1.0 s heading 53.00 heading 53.00 pitch 11.70
volume-parts PASS last run 2026-10-14 15:35
Measures what each part of the volumetric light costs, 10 seconds each, on Elwynn's ridges and at Stormwind's harbour, with every effect on between the others ([shadow] debugSkip): without the sun shadows' pass, the march's reads of the maps, drawing the maps, the cache's upkeep, and the light. The game window must be in front.
- Elwynn, all on93.2 (at least 1)
- Elwynn, skip sun shadows pass93.7 (at least 1)
- Elwynn, all on95 (at least 1)
- Elwynn, skip march map reads93.8 (at least 1)
- Elwynn, all on94.9 (at least 1)
- Elwynn, skip drawing the maps99.5 (at least 1)
- Elwynn, all on91.8 (at least 1)
- Elwynn, skip the cache upkeep104.3 (at least 1)
- Elwynn, all on94 (at least 1)
- Elwynn, light off111.8 (at least 1)
- Elwynn, all on92.1 (at least 1)
- Harbour, all on116.9 (at least 1)
- Harbour, skip sun shadows pass119.6 (at least 1)
- Harbour, all on115.6 (at least 1)
- Harbour, skip march map reads116 (at least 1)
- Harbour, all on112.3 (at least 1)
- Harbour, skip drawing the maps122 (at least 1)
- Harbour, all on112.1 (at least 1)
- Harbour, skip the cache upkeep119.6 (at least 1)
- Harbour, all on104.5 (at least 1)
- Harbour, light off137.3 (at least 1)
- Harbour, all on118.4 (at least 1)
No screenshot taken.
Positions and messages
Where the character was: arrive -9416.70 -2248.00 67.80 in 1.0 s heading 53.00 arrive -9416.70 -2248.00 67.80 in 1.0 s heading 53.00 heading 53.00 pitch 11.70 arrive -8625.00 1328.90 5.60 in 1.0 s heading 36.90 heading 36.90 pitch -12.40
water-cost PASS last run 2026-10-14 15:42
Measures what the water's draws cost at Stormwind's harbour, 10 seconds each, with every effect on between the others so a drift in the GPU's speed shows: without the sand part, the water part, the bodies' draw, all three ([water] debugSkip), and the water. The frame log gives each one's GPU and CPU time. The game window must be in front.
- all on, frames a second117.8 (at least 1)
- no sand part, frames a second119 (at least 1)
- all on, frames a second117.3 (at least 1)
- no water part, frames a second119.5 (at least 1)
- all on, frames a second115 (at least 1)
- no bodies' draw, frames a second119.6 (at least 1)
- all on, frames a second112 (at least 1)
- none of our water draws, frames a second115.8 (at least 1)
- all on, frames a second112 (at least 1)
- water off, frames a second127.6 (at least 1)
No screenshot taken.
Positions and messages
Where the character was: arrive -8625.00 1328.90 5.60 in 1.0 s heading 36.90 heading 36.90 pitch -12.40
ashenvale-edge-strips PASS last run 2026-10-15 17:56
The Barrens at the Ashenvale border, flying about 100 yards up and facing the sun over a ridge. Two long dark strips ran down the slope toward the camera (2026-10-04, the owner's screenshot at game time 17:39). Shots in the normal view and in Debug Views 24, 25, 26 and 5.
- Flight on for the testflight on
Shot 2: Debug View 24: sun shadows: where the shade comes from (red solid, green leaves, blue hills)
Shot 3: Debug View 25: sun shadows: shade taken off behind a hill (red solid, green leaves, blue where the check runs)
Shot 4: Debug View 26: sun shadows: the hill check's depths (red the solid caster before the hill, green behind it, blue the point behind the hill; 15 yards full at terrainBias 1.5)
Shot 5: Debug View 5: sun shadows: the shade alone
- No strip of full shade across the slope in the shade alone (Debug View 5): the hill's shade there is about 100, the strips were 1row 600 averages 106, its darkest pixel 102 at column 644 (wanted: average any, darkest at least 60)
Positions and messages
Where the character was: arrive 1291.80 -3001.20 203.75 in 1.0 s pos 1295.8 -3002.4 107.7 107.7 ground | (on the ground) arrive 1291.80 -3001.20 203.03 in 1.0 s heading 40.40 pitch -10.50
ashenvale-river-uphill PASS last run 2026-10-15 17:58
Water uphill (2026-10-11, the owner). Swimming down a river in Ashenvale, looking upstream: about 45 yards out the water was the game's own pale water, cut off along a straight line across the screen. The line was the horizon: the river climbs, and past it the water stood higher than the camera, and the shader dropped it as water seen from below. Then, with it drawn, the river turned darker from 40 yards out: there the map's depth takes over, and a river's vertices carry no depth past about 3 yards (it read as 148). Now the camera is tested against the water's own plane, and a river's depth comes from the map files (NOTES.md, a river above the camera; a river's depth is the map's). Shot 1 as the owner sees it; shot 2 the depth under the water (Debug View 29).
Shot 1: Normal view
- The far river is our water up to the far end, not the game's pale water: row 174 crosses it about 60 yards upstream, past where the cut lay. 57 after the fix (2026-10-11, measured at 2560 x 1440; the row and columns scaled to 1152 x 864)row 174 averages 54, its darkest pixel 46 at column 498 (wanted: average at most 85, darkest any)
Shot 2: Debug View 29: water: the depth under it (0 to 256 yards, blue to red, a line at 1, 2, 4, 8 ... 256; hatched: the map's depth)
- The depth under the far river (Debug View 29) runs on from the near water's blue and cyan: no jump to the deep red and yellow from 40 yards out. The box held 33% of pixels redder than green before the fix (a river read as 148 yards deep), 0.4% after (2026-10-11, measured at 2560 x 1440; the box scaled to 1152 x 864)0.1% of the box is redder than green (at most 5%)
Positions and messages
Where the character was: arrive 2207.25 -3040.50 110.96 in 3.4 s heading 60.60 heading 60.60 pitch -19.50
darkshore-underwater-npcs PASS last run 2026-10-15 17:58
Creatures and some objects under the sea, seen from over the water (2026-10-07, the owner): they lose their texture, show solid white and are too plain through the water. Fog makes it worse, and it is easier to see with sun shadows off (this view has them off). Shot 1: a creature under the water must keep its texture and show dim through the water, not solid white. The cause: over a body the water writes no depth, so the mist's march went on under the surface into its thickest part; and Underwater Cover tripled the water in front of a body at any depth. The mist now ends at the water's surface, and the cover's extra stops after the first yard. Then, at Water Clarity 25, they still showed paler than the water: the depth over them stayed the creature's, so the volumetric light marched on under the surface and added its light there. A second draw now writes the surface's depth over a body under the water.
Positions and messages
Where the character was: arrive 5724.20 825.80 -1.20 in 1.0 s heading 109.60 heading 109.60 pitch -18.70
darkshore-water-split PASS last run 2026-10-15 17:58
On the shore by Auberdine, the water split along straight lines: the sea floor showed through a gap in the surface, and with Wave Height 0 it closed (2026-10-07, the owner). The probe: the chunk with its middle at (6650.0 683.3) counts as a lake (swell 0.00 yards), the chunks beside it as the sea (swell 0.80 yards). The swell is set per chunk, so where the two meet one edge rises and falls and the other stays flat. Now the swell is chosen for each of a chunk's points, by the sea cells round it (NOTES.md, the sea and a pond). Shot 1 with the owner's Wave Height 8, shot 2 with Wave Height 0, the unbroken surface to compare.
Shot 1: Normal view
- The water is whole with the owner's Wave Height 8: no ground shows through it. The box holds open water only; the sea is blue-green there, and the gap between the lake chunk and the sea's showed the brown sea floor across it. Shot 2, Wave Height 0, had no pixel there with more red than green0% of the box is redder than green (at most 0.5%)
Shot 2: Normal view
- The same box with Wave Height 0: the check sees no gap where the water is whole0% of the box is redder than green (at most 0.5%)
Positions and messages
Where the character was: arrive 6664.70 683.20 5.70 in 1.0 s heading 128.60 heading 128.60 pitch -39.50
development-body-edge PASS last run 2026-10-15 17:58
A thin light rim along the edge of a character over a shadow: under the feet in its own shadow, and round the head over the guard's (2026-10-08, the owner). The game draws with antialiasing, and an edge pixel's colour is mostly the lit ground behind while its depth can be the body's, out of the shadow: the sun shadows left it lit, with the Sunlight's boost. Where the body mask says the body or a model covers less than half of a pixel, the farthest of its neighbours' depths stands in. Shot 1 in the normal view, shot 2 in the shade alone (Debug View 5), for a look; no check reads them yet.
Positions and messages
Where the character was: arrive 4616.20 -452.20 289.79 in 1.0 s heading 179.30 heading 179.30 pitch -14.60
development-guard-stealth PASS last run 2026-10-15 17:59
On the development map (451), where the Charger test stands, the owner's Stormwind City Guard (a world spawn, guid 2950067, 3.7 yards in front of the start) given Stealth (.aura 1784). The game draws a stealthed unit flat: its depth passes, then its colour passes with a layer after each, against its own depth. Its passes go into a scratch depth, copied from the world's once, at its first depth pass (2026-10-04, a stealthed Pinto with dark spots). A unit's cached shadow goes once it is stealthed, which needs its model, read on the map thread as the unit is first seen (2026-10-05: a half second of shadow as Stealth went on). His helmet, shoulders and weapons are models of their own: they are taken as his within 1.5 yards, or they cast on the ground under a guard with no body, and again with the player standing inside him (2026-10-05, the owner). The test records Stealth going on, takes a shot in stealth, records Stealth going off, then stealths him again, moves the character into him and takes a shot: no shadow of his. It used a Pinto until 2026-10-05, but the game itself leans a stealthing horse forward and draws it black for a second. The guard is left out of stealth after. Then you, stealthed (2026-10-08, a player's report: a rogue in stealth cast a shadow of their own, and no other stealthed unit did): the owner's snapshot at the same place, with the sun 69.2 degrees up, out of the building's shade, the camera 8.996 yards back. The probe before and in stealth, and shots in the shade alone (Debug View 5) before and in stealth, then the normal view.
- In stealth: the guard is drawn as a stealthed unit, and his draws go into the scratch depth1 line(s) of the probe match
- In stealth: the world's depth is copied into the scratch once, before his depth passes1 line(s) of the probe match
- In stealth: no cached shadow of his helmet, shoulders or weapons (345, 131, 465 and 64 vertices)0 line(s) of the probe match
- Inside him: still drawn into the scratch depth1 line(s) of the probe match
- Inside him: no cached shadow of his helmet, shoulders or weapons (with the character the nearest unit, they cast)0 line(s) of the probe match
- You, before stealth (probe 3): the probe lists you, not stealthed1 line(s) of the probe match
- You in stealth (probe 4): the probe lists you as stealthed (2026-10-08, a player's report: a rogue in stealth cast a shadow of their own; the player was left out of the stealthed units)1 line(s) of the probe match
Shot 3: Debug View 5: sun shadows: the shade alone
- You, before stealth, in the shade alone (Debug View 5): row 540 crosses your shadow on the ground, at 1152x864, between columns 532 and 576 as the idle pose moves it. Its darkest pixel, not an average: the average over columns 544 to 560, at the shadow's edge, went from 31 to 88 between runs (2026-10-14). 3 in every runrow 540 averages 211, its darkest pixel 3 at column 556 (wanted: average any, darkest at most 30)
Shot 4: Debug View 5: sun shadows: the shade alone
- You in stealth, in the shade alone (Debug View 5): row 540, where your shadow lay, is lit, every pixel from column 500 to 620. 255 after the fix (2026-10-08); with the player left out of the stealthed units, your shadow stayedrow 540 averages 255, its darkest pixel 255 at column -1 (wanted: average any, darkest at least 200)
Positions and messages
Where the character was: arrive 4617.60 -452.60 289.60 in 1.0 s heading 167.40 heading 167.40 pitch -22.00 arrive 4613.90 -451.70 290.07 in 1.0 s heading 167.40 pitch -22.00 arrive 4617.30 -452.70 289.66 in 1.0 s heading 171.70 heading 171.70 pitch -28.20
development-horse-seethrough PASS last run 2026-10-15 18:00
On the development map (451), a Warhorse and a Charger standing beside the player, the camera 11 yards back looking at them. The client drew the Warhorse faded (a depth pass, then its colour blended), and the see-through rule, meant for stealthed units, skipped that depth pass: the horse flashed, see-through and in triangles, standing still (2026-10-04, the owner). The rule now takes a stealthed unit's model alone, and a unit's entry leaves the cache only when no unit near it wears that model. The runner summons the two horses and deletes them after. Shots in the normal view and in Debug View 15 (the bodies).
- No horse is taken as see-through (the owner's frame had 2)1 line(s) of the probe match
- The Warhorse (144,864 bytes: 3,018 vertices) is a body in every frame the probe logs0 line(s) of the probe match
- The Warhorse is drawn and marked a body6 line(s) of the probe match
Positions and messages
Where the character was: arrive 4611.60 -451.00 290.28 in 1.2 s arrive 4613.00 -454.60 290.19 in 1.0 s arrive 4617.60 -452.60 289.60 in 1.0 s heading 167.40 heading 167.40 pitch -22.00
development-saturation PASS last run 2026-10-15 18:00
On the development map (451), the Day Saturation and Night Saturation sliders (2026-10-05). The test client's clock is fixed by comfytime in the day, so Night Saturation must change nothing. Five shots: both at 100 (the game's own colour, no pass), Day Saturation 0 (grey), Day Saturation 200, and Day Saturation 100 with Night Saturation 0 (the game's own colour again), and Day Saturation 0 with the Color Effects box off (the game's own colour, no pass). The UI keeps its colour in each.
- Both at 100: the pass does not run0 line(s) of the probe match
- Day Saturation 0: the pass runs at 01 line(s) of the probe match
- Day Saturation 200: the pass runs at 21 line(s) of the probe match
- By day, Night Saturation 0 changes nothing: the pass does not run0 line(s) of the probe match
- Color Effects off: no pass, with Day Saturation at 00 line(s) of the probe match
Positions and messages
Where the character was: arrive 4617.60 -452.60 289.60 in 1.0 s heading 167.40 heading 167.40 pitch -22.00
development-windmill PASS last run 2026-10-15 18:00
On the development map (451), a Westfall windmill seen from beside it, flying in its blades' shade, in first person; then 200 yards out, the camera turned all the way round, and back (2026-10-04, the owner). Four faults of its shade, all on this windmill: its parts were too small for the far map one by one (minTriangles), so its shade came in steps; batches of windmills drawn from afar held frozen poses under the turning blades; the windmill's blades, out of view in first person, went as an "older pose" when its tower's edge was drawn; and its stone tower cast as leaves because its sails are alpha tested. The owner's snapshot controls; the owner's snapshot place and sun. Last, from 90 yards, flying, in first person, where its parts must all be in the far map; the probe is taken there. Before going out and after coming back, a 5 s recording in the normal view and one in Debug View 5 (the shade alone), so the blades' shade is seen turning (2026-10-05, the owner); from 90 yards, shots in both views. Since 2026-10-04 the windmill is a record in the object table, its parts filed under it.
- Flight on for the testflight on
- At the start, in first person with the windmill behind the camera, its blades are kept in its record1 line(s) of the probe match
- All four of its parts are in the far map (each alone is under minTriangles)4 line(s) of the probe match
- One record holds the windmill: the cache keeps no entry at an animated doodad, so no second pose1 line(s) of the probe match
- Its tower (108 triangles) casts as solid1 line(s) of the probe match
- Its clock is set from the client's pose: all four parts know their bones, and the match is close1 line(s) of the probe match
- Every windmill's clock is set, the batched ones far off too, so each one's blades turn out of view0 line(s) of the probe match
- Its sails (alpha tested, 30 triangles) cast as leaves1 line(s) of the probe match
Recording 2: beside it, before going out, Debug View 5, Debug View 5: sun shadows: the shade alone
Recording 4: after coming back, Debug View 5, Debug View 5: sun shadows: the shade alone
Positions and messages
Where the character was: arrive 4346.20 -230.40 305.13 in 1.1 s pos 4345.0 -230.1 293.8 293.8 ground | (on the ground) arrive 4346.20 -230.40 306.00 in 1.0 s heading -139.30 heading -139.30 pitch -28.20 pos 4497.80 -100.00 305.42 - after hop to 200 heading -49.30 heading 40.70 heading 130.70 heading -139.30 pos 4346.20 -230.40 305.23 - after hop to 0 heading -139.30 pitch -28.20 arrive 4385.70 -301.90 313.71 in 1.0 s heading 122.10 pitch -11.50
elwynn-own-face PASS last run 2026-10-15 18:02
The owner's own character with the camera 1.8 yards back, where the game fades it as it fades a stealthed unit (2026-10-04, the owner). The see-through rule once took that fade for stealth and the face showed through the back of the head; the rule now takes stealthed units alone, and their passes go into a scratch depth. Nothing of the character may be taken as stealthed. One shot in the normal view.
- The camera is within 3 yards of the character, where the game fades it1 line(s) of the probe match
- Nothing is taken as a stealthed unit: the faded character is drawn as the game draws it1 line(s) of the probe match
Positions and messages
Where the character was: arrive -9433.20 -1401.20 46.66 in 1.0 s heading -167.80 heading -167.80 pitch -16.20
elwynn-ridge-fog PASS last run 2026-10-15 18:02
Standing in eastern Elwynn, first person, looking at ridges one behind another. The fog makes a second ridgeline: it does not fade smoothly into the terrain, and each ridge shows twice (2026-10-05, the owner). A shot with fog off (comfyMist 0), then with fog on; with fog on there must be no second ridgeline that stands out. Then Debug View 12 (how much of the light gets through the fog) and Debug View 14 (where mist collects). No check reads the shots yet: the owner judges them.
Positions and messages
Where the character was: arrive -9416.70 -2248.00 67.80 in 1.0 s heading 53.00 heading 53.00 pitch 11.70
elwynn-stump-edge PASS last run 2026-10-15 18:02
In eastern Elwynn, the back of a tree stump, turned away from the sun. Its shade stopped short of the top edge: a lighter strip along it, about 0.1 yards (2026-10-05, the owner). The shadow lookup moves each point a little along its facing (normalBias); the stump's back leans in toward its top, so its facing points a little up, and near the edge the point rose over the stump into the sun. On a face turned from the sun the point now moves straight away from the sun. Shots in the normal view and in Debug View 5 (the shade alone).
Shot 2: Debug View 5: sun shadows: the shade alone
- The back face's rim is in the stump's shade up to the top edge, in the shade alone (Debug View 5): row 312 crosses the rim, which the camera sees from below its top. Before the fix columns 520 to 690 averaged 155 (lit), after it 39. Row 222 until 2026-10-07, placed at 1280x800: at 1152x864 it ran over the trees behind the stump, about 45 rows above its toprow 312 averages 0, its darkest pixel 0 at column 520 (wanted: average at most 80, darkest any)
Positions and messages
Where the character was: arrive -9413.20 -2235.60 67.37 in 1.0 s heading 61.10 heading 61.10 pitch -11.80
elwynn-trough-shadow PASS last run 2026-10-15 18:03
Standing in the water trough at the Eastvale paddock, the camera zoomed in. The trough's shadow got a character's extra darkness: a rule took any model within 3 yards of the player for the player's (2026-10-04, the owner). The trough must not be marked a body.
- The trough is drawn under you as a model and not a body: a draw with a bone within half a yard of you that is not your own. Not by its buffer: the client batches doodads into buffers that differ each session (78,336 bytes when the test was written, 13,824 and 44,544 on 2026-10-04)3 line(s) of the probe match
Positions and messages
Where the character was: arrive -9439.20 -1377.30 47.20 in 1.0 s heading -2.40 heading -2.40 pitch -40.00
fargodeep-spell-shade PASS last run 2026-10-15 18:03
Inside Fargodeep Mine, the lower level, with Lightning Shield, Mana Shield and Inner Fire on the character. Spells showed dark in caves and in shade (2026-10-12, the owner): the sun shadows and the fog ran after the spells and judged each pixel by the wall behind it. Since then the game's additive draws are held and drawn after the shade ([general] spellsOnTop). Shots: no aura; the auras; the auras with spellsOnTop 0 (the old order); Sun Shadows off; the fog off. With spellsOnTop the auras should be as bright in shot 2 as in shots 4 and 5.
- The probe with the auras on logs where the first additive draw falls1 line(s) of the probe match
- The auras' additive draws were held and drawn after the shade at the world's end1 line(s) of the probe match
Positions and messages
Where the character was: arrive -9840.60 161.10 4.79 in 1.0 s heading 90.00 heading 90.00 pitch -15.00
far-terrain-cache PASS last run 2026-10-15 18:03
Hop 300 yards away from a hill in the Barrens and back. The game draws far ground with its coarse mesh (64 to 76 triangles a chunk) through a shader the terrain test does not know; the cache must not keep those draws once you are back, or their full shade lies over the hill in big triangles (2026-10-03).
- Flight on for the testflight on
- No coarse ground the files hold is left in the cache near you0 line(s) of the probe match
- No game draw of ground the files cover is held as a caster (the far horizon copy included)0 line(s) of the probe match
Shot 1: Debug View 24: sun shadows: where the shade comes from (red solid, green leaves, blue hills)
Positions and messages
Where the character was: arrive 1191.20 -2740.90 211.30 in 1.0 s pos 1192.3 -2740.9 211.3 211.3 ground | (on the ground) arrive 1182.20 -2735.20 307.96 in 1.0 s heading 40.10 heading 40.10 pitch -16.70 pos 949.10 -2924.00 307.63 - after hop to 300 pos 1182.20 -2735.20 307.41 - after hop to 0
ironforge-ah-glow PASS last run 2026-10-15 18:04
On the road outside Ironforge's gate, facing the statue in the hall (2026-10-05, the owner at game time 17:39). The auction house braziers behind the statue glowed through the hall's walls: the fog took them as 100 yards and more under its ground (the floor under the terrain is looked for no more than 4 yards over your feet, and theirs is higher), so Lamps in Mist made them 24 times as bright. A shot in the normal view and in Debug View 6 (the lamps' glow alone). The probe waits 45 s: 15 s after a start the buildings were still loading (197 lights of 1,057, and no floors under the terrain).
- No lamp takes the mist factor's cap (x54.60): none is taken as buried under the mountain0 line(s) of the probe match
- The auction house braziers are in the list2 line(s) of the probe match
Positions and messages
Where the character was: arrive -5037.50 -816.60 495.10 in 1.0 s heading -51.50 pitch -12.00
ironforge-gate-fog PASS last run 2026-10-15 18:05
Outside Ironforge's gate, at the foot of the mountain the city lies under. The fog was thick enough to hide the trees 60 yards off (2026-10-04, the owner at game time 17:39). Shots in the normal view and in Debug Views 12 (how much gets through) and 14 (where mist collects).
Shot 2: Debug View 12: fog: how much gets through (white = clear)
- The road and the trees show through the fog (Debug View 12, white = clear): row 300 averaged 11 when the mountain lifted the fog's groundrow 300 averages 221, its darkest pixel 213 at column 200 (wanted: average at least 60, darkest any)
Positions and messages
Where the character was: arrive -5030.80 -820.80 495.10 in 1.2 s heading 108.00 pitch -22.00
outdoor-spell-order PASS last run 2026-10-15 18:05
Where the additive draws fall in the frame outdoors (2026-10-12): Redridge's grass, Goldshire's street with its lamps, and the bridge into Stormwind, with Lightning Shield, Mana Shield and Inner Fire on. The probe lists every depth-writing draw after the first additive one: what would miss the sun shadows and the fog if they ran there. Since spellsOnTop (2026-10-12) each probe also gives how many additive draws were held, and how many were drawn early. By Goldshire a shot with spellsOnTop 0 follows, the old order.
- Redridge1 line(s) of the probe match
- Goldshire1 line(s) of the probe match
- Stormwind1 line(s) of the probe match
- Goldshire: additive draws held and drawn at the world's end1 line(s) of the probe match
Positions and messages
Where the character was: arrive -9467.80 -2251.20 74.40 in 1.0 s heading 147.60 heading 147.60 pitch -25.90 arrive -9464.60 62.30 55.87 in 1.0 s heading 0.00 heading 0.00 pitch -10.00 arrive -8983.20 497.30 96.46 in 1.0 s heading 40.80 heading 40.80 pitch -5.00
redridge-cloud-shapes PASS last run 2026-10-15 18:06
Our clouds (2026-10-08, Chiro's brief: soft clouds, and now and then one with a shape, for cloud watching; then "they need to merge in nicely with the other clouds"). On open ground at Lakeshire in Redridge, the camera 25 degrees up. Shots 1 to 7: each shape formed ahead of the camera ([clouds] testShape 0 to 6: bunny, cat, fish, kodo, longneck, turtle, whale). Shot 8: the kodo in Debug View 31 (red the shapes, green the other clouds, blue the high layer). Shots 9 and 10: the kodo with [clouds] clearing 0.3 and 0.9 (the plain clouds near it fade). Shot 11: the sky as it is. The probe must show our clouds drawn in place of the game's. The owner and Chiro judge the shots.
- 1 line(s) of the probe match
- 1 line(s) of the probe match
Positions and messages
Where the character was: arrive -9416.70 -2248.00 67.80 in 1.2 s heading 53.00 heading 53.00 pitch 25.00
redridge-grass PASS last run 2026-10-15 18:07
From the owner's snapshot in Redridge's grass, with Foliage Density at 128 (put back at the end). comfyatmos.dll draws the grass in the wind since 2026-10-06 (comfygrass until then). The probe must show grass draws and the fill loop patched. Recordings with the grass on, off, and while walking through it (the parting); shots in the normal view and in Debug View 30 (the bend: black still, white the tips).
- The grass is drawn with the wind shader1 line(s) of the probe match
- Each vertex carries its height: the fill loop is patched1 line(s) of the probe match
Shot 2: Debug View 30: grass: the bend (black still, white the tips; blue where it comes from the texture)
Positions and messages
Where the character was: arrive -9467.80 -2251.20 74.40 in 1.0 s heading 147.60 heading 147.60 pitch -25.90
redridge-grass-shadow PASS last run 2026-10-15 18:07
The sun shadows on the grass and ferns in Redridge with Shadow Resolution at 2048 (2026-10-08, the owner: a problem with the shadow map at 2048). A recording of 5 seconds in the normal view as the grass moves in the wind, a shot in the normal view and one in the shade alone (Debug View 5), for a look; no check reads them yet.
Recording 1: The grass in the wind, Shadow Resolution 2048, Normal view
Positions and messages
Where the character was: arrive -9483.10 -2239.60 76.00 in 1.0 s heading 101.50 heading 101.50 pitch -22.90
stormwind-canal-fog PASS last run 2026-10-15 18:08
On the bank of the canal outside Stormwind's gate, looking over the water toward the bridge. The fog there was thick enough to hide the far bank (2026-10-04, the owner at game time 06:45). Shots in the normal view and in Debug Views 12 (how much gets through) and 14 (where mist collects).
Shot 2: Debug View 12: fog: how much gets through (white = clear)
- The far side of the canal shows through the fog (Debug View 12, white = clear): it averaged 7 when low ground and water both thickened itrow 250 averages 176, its darkest pixel 156 at column 644 (wanted: average at least 25, darkest any)
Positions and messages
Where the character was: arrive -8997.40 406.60 73.10 in 1.0 s heading 45.60 pitch -10.70
stormwind-canal-wake PASS last run 2026-10-15 18:08
Swimming along a canal inside Stormwind, the camera looking down from above. No ripple and no wake showed round the swimmer (2026-10-04, the owner). The canal is a building's water, which the map tiles do not hold: its surface comes from the city's building in the files (2026-10-12), so the test waits 45 s at the start for Stormwind to load. Shots in the normal view and in Debug View 20 (ripples red and green, the wake blue).
- A wake trails the swimmer: at least one trail is drawn1 line(s) of the probe match
- Ripples spread round the swimmer1 line(s) of the probe match
- The swimmer is on a building's water1 line(s) of the probe match
- The game's own wake and ring are found on a building's water and hidden: only ours show (the last run before 2026-10-05 read 0 draws, 0 textures learnt)1 line(s) of the probe match
Positions and messages
Where the character was: arrive -8779.50 788.50 94.20 in 1.0 s heading -50.90 heading -50.90 pitch -80.00
stormwind-game-glow PASS last run 2026-10-15 18:09
On the bridge into Stormwind, facing the gate, where the game's Full Screen Glow washes the bridge out (2026-10-13, the owner: "the full screen glow is quite bright"). Shots with Game Glow at 100 (the game's own), 50, 0 and 200. For a look; no check reads the shots.
Positions and messages
Where the character was: arrive -8983.20 497.30 96.46 in 1.0 s heading 40.80 heading 40.80 pitch -5.00
stormwind-harbour-ridge PASS last run 2026-10-15 18:10
A ridge under the sea in Stormwind's harbour, far terrain textured and not, showed as a dark shape with a hard edge against the open sea beside it (2026-10-06, the owner). The cause was the sun shadows: their Sunlight and sun tint faded with the bed over the ridge while the open sea, with no bed under it, kept them. Shot 1: the normal view, the water one colour from the open sea across the ridge, no edge. Shot 2: Debug View 28, blue over the ridge (the shadows find the water over a bed), grey over the open sea.
Shot 2: Debug View 28: sun shadows: the water it finds (blue: the water's depth over a bed, grey: none, so the shade falls on what the depth shows)
Positions and messages
Where the character was: arrive -8625.00 1328.90 5.60 in 1.0 s heading 36.90 heading 36.90 pitch -12.40
stormwind-harbour-ship-shadow PASS last run 2026-10-15 18:10
A moored ship's shadow under the water, seen from the dock (2026-10-06, the owner: under the water the ship's and the dock's shadows show on the sea floor; from above they should too). Shot 1: the normal view. Shot 2: Debug View 5, the shade alone: the soft shade on the water's surface beside the hull (Shadow on Water). Shot 3: Debug View 24, where the shade comes from, red solid, on the floor where the shadows find it. Shot 4: Debug View 28, blue where the shadows find the floor under the water.
- Flight on for the testflight on
Shot 3: Debug View 24: sun shadows: where the shade comes from (red solid, green leaves, blue hills)
Shot 4: Debug View 28: sun shadows: the water it finds (blue: the water's depth over a bed, grey: none, so the shade falls on what the depth shows)
Positions and messages
Where the character was: arrive -8605.60 1278.10 5.20 in 1.0 s pos -8604.6 1278.8 5.2 5.2 ground | (on the ground) arrive -8603.80 1374.00 36.71 in 1.0 s heading -24.20 heading -24.20 pitch -36.90
stormwind-lighthouse-light PASS last run 2026-10-15 18:11
Stormwind's harbour lighthouse from the shore, 327 yards off (2026-10-07, the owner): the game's own lighthouse light showed beside ours, and ours showed from too far, with its glitter on the sea past the beam's end. The search for the game's light (LIGHTHOUSEEFFECT) took the first 64 animated doodads of any name, and the harbour has more, so the game's light was not left out and our lamp came from the building's box. Now only lighthouse doodads are counted. A lighthouse further than Lighthouse Distance is not drawn and fades out over the last quarter, and the beam's patch on the water ends at Beam Length. Shot 1 and a 10 s video: one lamp in the lamp room, no second light by it, the beam turning, its glitter only as far as the beam reaches. At 1:00 by comfytime (config hour, 2026-10-07): the run on the release DLL had taken the client's hour and came out by day.
- The game's own light found (LIGHTHOUSEEFFECT), so it is left out and our lamp stands on the tower's axis1 (at least 1)
- The lighthouse drawn, 327 yards off, inside Lighthouse Distance1 (at least 1)
- Night: the game time comfytime set (1:00)1 (at least 0.9)
Positions and messages
Where the character was: arrive -8276.20 1371.90 5.98 in 1.0 s heading 56.30 heading 56.30 pitch 10.10
stormwind-tower-speckle PASS last run 2026-10-15 18:11
On the bridge into Stormwind, facing the gate with the sun behind it. A band of the left tower, where the sun grazes it, showed a speckled shade (2026-10-04, the owner at game time 17:39). Shots in the normal view and in Debug View 5 (the shade alone).
Shot 2: Debug View 5: sun shadows: the shade alone
- No speckled shade on the left tower where the sun grazes it (Debug View 5): 20% of the box jumped at normalBias 2, none at 41% of the box jumps from one pixel to the next (at most 5%)
Positions and messages
Where the character was: arrive -8983.20 497.30 96.46 in 1.0 s heading 40.80 heading 40.80 pitch 15.00
sun-camera-turn PASS last run 2026-10-15 18:12
The sun must not move when the camera turns (2026-10-14). A WOW-HC player saw the shadows change as they turned the camera: the sun was read from the sprite the sky draws, and the sky draws only the sprites in view, so with the sun out of view a moon was taken for the sun. The sun now comes from the clock's table (src/sunpath.cpp). At 11:45 the camera looks at the sun, away from it, and up; at 01:30 away from the moons and at them. In every probe the volumetric light's sun must be the table's: azimuth 45, elevation 82.5 by day (0.09 0.09 0.99), the larger moon at 31.3 at night (0.60 0.60 0.52).
- 11:45, the camera at the sun: the table's sun1 line(s) of the probe match
- 11:45, the camera away from the sun: the same sun1 line(s) of the probe match
- 11:45, the camera toward the moons' side: the same sun1 line(s) of the probe match
- 01:30, the camera away from the moons: the larger moon1 line(s) of the probe match
- 01:30, the camera at the moons: the same moon1 line(s) of the probe match
- 01:30: the light follows the larger moon1 line(s) of the probe match
No screenshot taken.
Positions and messages
Where the character was: arrive -9416.70 -2248.00 67.80 in 1.0 s heading 45.00 heading 45.00 pitch 70.00 heading -135.00 pitch 5.00 heading 135.00 pitch 45.00 heading -135.00 pitch 5.00 heading 90.00 pitch 30.00
sunset PASS last run 2026-10-15 18:20
The sun setting over the sea, with the owner's settings (2026-10-08). Here the fog and the water at sunset were tuned: no fog over the water, the hard cut under the sun, the fog's glow toward the sun and along the water's horizon, the far sea's dark strip, the white dots of the water's cracks. No fixed sun: the hour places it. Shot 1: a beach of Tirisfal Glades' north coast at 20:30, under its green sky. Shot 2: the mouth of Booty Bay at 20:25, the sun past the cliff, the statue and a ship in silhouette. In the normal view, for a look; no check reads them yet.
Positions and messages
Where the character was: arrive 3005.40 325.80 2.50 in 2.5 s heading 38.40 heading 38.40 pitch 17.00 arrive -14147.50 505.80 1.29 in 1.0 s heading 69.90 heading 69.90 pitch 11.80
sun-table PASS last run 2026-10-15 18:12
Measures where the sky draws the sun and the two moons at each half hour, for the table of the sun by the clock (src/sunpath.cpp, 2026-10-14). [sun] measure logs each sky quad's world direction, its texture and the game time. The sky draws a quad only where the camera can see it, so the camera points in 18 directions (6 headings 60 degrees apart, at pitches 5, 45 and 80, which cover the whole sky) and the hour steps through the day at each one. Then run tests\Sun-Table.ps1 to turn the log into the table. No checks: the table is the result. Takes about 8 minutes. The steps are written by a loop; change the loop in the commit that adds this file, not the steps by hand.
- The sky's quads logged with the game time (the hour of the last line)23.5034 (recorded only)
No screenshot taken.
Positions and messages
Where the character was: arrive -9416.70 -2248.00 67.80 in 1.0 s heading 45.00 heading 45.00 pitch 5.00 heading 45.00 pitch 45.00 heading 45.00 pitch 80.00 heading 105.00 pitch 5.00 heading 105.00 pitch 45.00 heading 105.00 pitch 80.00 heading 165.00 pitch 5.00 heading 165.00 pitch 45.00 heading 165.00 pitch 80.00 heading -135.00 pitch 5.00 heading -135.00 pitch 45.00 heading -135.00 pitch 80.00 heading -75.00 pitch 5.00 heading -75.00 pitch 45.00 heading -75.00 pitch 80.00 heading -15.00 pitch 5.00 heading -15.00 pitch 45.00 heading -15.00 pitch 80.00
telabim-wet-sand PASS last run 2026-10-15 18:20
On a jungle beach east of Tanaris (Tel'Abim, by the map position) the wet sand was broken: a dark band on part of the shore, pieces with straight edges in the middle, none on the rest (2026-10-07, the owner). The wet sand pass drew only on ground under 32 degrees of slope, which keeps bodies and posts dry; the bank here is steeper, and the slope is per terrain triangle, so the band came and went triangle by triangle. Now full up to 60 degrees, none past 72 (NOTES.md, the wet sand on a steep bank). Shot 1 in the normal view, shot 2 in the wet sand alone (Debug View 18), shot 3 in the normal view with the Wet Sand slider at 0 (2026-10-07: the slider is new). Then Old Hillsbrad (the Caverns of Time, map 269), the owner's snapshot over a river, with their settings (2026-10-08): the wet sand on the far bank lay as a contour on the grass, well over the water, with a step at each map cell's edge. A river runs downhill across a chunk, and each map cell took the chunk's highest water level; now the mean of its four points, and the wet pass weighs the cells round a point by how near they are. Shots 4 to 6 as 1 to 3.
- Flight on for the testflight on
Shot 2: Debug View 18: water: the wet sand alone
- The wet sand alone (Debug View 18): row 300 crosses the band on the steep part of the bank, where it was missing. 84 after the fix (2026-10-07); under 10 before itrow 300 averages 84, its darkest pixel 6 at column 468 (wanted: average at least 40, darkest any)
- The wet sand alone (Debug View 18): row 340 crosses the band on the steep part of the bank, where it was missing. 132 after the fix (2026-10-07); under 10 before itrow 340 averages 132, its darkest pixel 4 at column 568 (wanted: average at least 40, darkest any)
- The wet sand alone (Debug View 18): row 380 crosses the band on the steep part of the bank, where it was missing. 155 after the fix (2026-10-07); under 10 before itrow 380 averages 155, its darkest pixel 4 at column 560 (wanted: average at least 40, darkest any)
- The wet sand alone (Debug View 18): row 420 crosses the band on the steep part of the bank, where it was missing. 179 after the fix (2026-10-07); under 10 before itrow 420 averages 179, its darkest pixel 4 at column 670 (wanted: average at least 40, darkest any)
Shot 5: Debug View 18: water: the wet sand alone
- Old Hillsbrad, the wet sand alone (Debug View 18): row 450 crosses the far bank's grass, 40 rows over the waterline. Before the fix (2026-10-08, the owner) the band lay as a contour on the grass of this gentle bank, well over the water: each map cell took its chunk's highest water level, up to a yard over a river running downhillrow 450 averages 41, its darkest pixel 41 at column 899 (wanted: average at most 60, darkest any)
- Old Hillsbrad, the wet sand alone (Debug View 18): row 491 crosses the band at the far bank's waterline (rows 488 to 494 at column 900 after the fix)row 491 averages 200, its darkest pixel 197 at column 899 (wanted: average at least 120, darkest any)
- Old Hillsbrad, the wet sand alone (Debug View 18): row 470, further along the far bank, 45 rows over the waterlinerow 470 averages 39, its darkest pixel 38 at column 1003 (wanted: average at most 60, darkest any)
- Old Hillsbrad, the wet sand alone (Debug View 18): row 518 crosses the band at the waterline there (rows 515 to 522 at column 1000 after the fix)row 518 averages 215, its darkest pixel 214 at column 999 (wanted: average at least 120, darkest any)
Positions and messages
Where the character was: arrive -7816.70 -7016.70 8.60 in 1.0 s pos -7816.3 -7015.6 8.6 8.6 ground | (on the ground) arrive -7858.40 -6997.90 5.30 in 1.0 s heading -4.80 heading -4.80 pitch -21.90 arrive 2202.60 669.10 46.90 in 1.0 s heading -69.80 heading -69.80 pitch -13.90
water-standing PASS last run 2026-10-15 18:21
From the owner's snapshot at the edge of Redridge's lake: a shot there, then about 5 yards forward into the shallows and a shot standing still. A character standing still in the water had foam round its body: the foam round objects (Object Foam) took it for a post (2026-10-06, the owner). Only a body that moves may have foam, from its wake. Each shot also in Debug View 17 (the foam alone).
Shot 4: Debug View 17: water: the foam alone
- In the shallows, standing still, Debug View 17 (the foam alone): no foam round the character. Row 540 crosses its legs; before the fix the foam round a body standing still averaged about 130 on such a rowrow 540 averages 12, its darkest pixel 5 at column 584 (wanted: average at most 50, darkest any)
Positions and messages
Where the character was: arrive -9389.40 -2230.70 56.70 in 1.0 s heading -3.80 heading -3.80 pitch -40.00
westfall-beach-swash PASS last run 2026-10-15 18:22
The swash on a Westfall beach, from 40 yards up: 10 second recordings at the defaults (Swash Height 5, Length 55, Speed 80), then with one slider moved each. At Height 100 the water must stop at the wet sand's height, not run onto dry sand (2026-10-05, the owner). The sliders replaced a Swash slider whose 5 to 100 changed nothing.
- Flight on for the testflight on
Recording 1: The defaults: Height 5, Length 55, Speed 80, Normal view
Recording 2: Swash Height 100: no higher than the wet sand, Normal view
Positions and messages
Where the character was: arrive -9605.70 1337.30 39.28 in 1.0 s pos -9604.1 1337.2 0.1 0.1 ground | (on the ground) arrive -9605.70 1337.30 39.32 in 1.0 s heading -104.80 heading -104.80 pitch -44.80
westfall-far-waterline PASS last run 2026-10-15 18:23
The waterline seen from far off: from 66.7 yards up, the shore about 90 yards away. Our water's edge was jagged there and the water showed over the terrain (2026-10-05, the owner): the water must end where the terrain rises out of it, with no swash needed. Shot 1 is our water, shot 2 the game's own (Water Effects off), to compare the line.
- Flight on for the testflight on
Positions and messages
Where the character was: arrive -9591.40 1374.90 65.14 in 1.0 s arrive -9591.40 1374.90 66.20 in 1.0 s heading -109.60 heading -109.60 pitch -45.00
westfall-under-the-swell PASS last run 2026-10-15 18:23
Swimming off the Westfall coast with Wave Height 30, the camera just over the game's flat water and under our swell: the sea floor showed as dry sand in clear air, and the game drew no underwater fog (2026-10-07, the owner). The game draws its underwater view only with the camera under its own flat water; our swell rose up to 3 yards over that. Now the swell never rises over the camera near it (the owner's choice: within 15 yards it keeps 0.3 yards under the camera, and grows back to its full height by 40), and a wave further out that stands as high as the camera is drawn as water seen from the front (NOTES.md, the camera inside a wave). Shots 1 and 2 two seconds apart (the swell moves): the sea floor through green water, the waves on the horizon. Shot 3 from 3 yards deeper, the camera under the flat water: the game's own underwater view.
Shot 1: Normal view
- The sea floor under the camera, seen through the water: blue-green, not the dry sand's orange. Shot 10% of the box is redder than green (at most 5%)
Shot 2: Normal view
- The sea floor under the camera, seen through the water: blue-green, not the dry sand's orange. Shot 20% of the box is redder than green (at most 5%)
Shot 3: Normal view
- The sea floor under the camera, seen through the water: blue-green, not the dry sand's orange. Shot 30% of the box is redder than green (at most 5%)
Positions and messages
Where the character was: arrive -9570.30 1331.90 -1.20 in 1.0 s heading -12.80 heading -12.80 pitch 0.70 arrive -9570.30 1331.90 -4.20 in 1.0 s heading -12.80 heading -12.80 pitch 0.70 arrive -9570.30 1331.90 -1.20 in 1.0 s heading -12.80




















































































































































































































