The first playable build went online today at its own address. The rest of the day went on speed, a sound that should not have been there, and the HUD.
Load time and frame rate
| before | after | |
|---|---|---|
| cold first visit | 27 to 37 s | 7.3 to 8.4 s |
| repeat visit | n/a | about 2.5 s |
| horde frame rate, median | about 12 fps | about 31 fps |
The frame rate came in two steps. One broad pass over 38 files took the horde from about 12 fps to 24.9. A second, dedicated pass cut the cold load and brought the median to about 31. The changes were spread across the engine, the world and effects texture bakes, the material library, hero textures, audio start-up and the title screen. A cold-load timer, a GPU profiler and an A/B comparison tool were written alongside them, and those are where the numbers above come from.
The result was re-checked afterwards. A cold first visit was ready in 7.0 s locally, and 7.8 s on the live site from a fresh browser profile. The load now opens on the studio logo, which fades into the title.
A hiss with a source
There was a steady static sound under everything. It was not one sound. Tracing it found continuous noise layers in four places: the choir's breath noise, the choir pad, the wind loop and the fire loop. The sustained string pad and the tremolo strings were also carrying bow noise.
The first fix cut the bow noise and adjusted the noise layers. Then every continuous sound was measured on its own, as the share of its energy sitting in the high-frequency band:
| continuous sound | high-frequency share |
|---|---|
| wind | 0% |
| fire | 0.1% |
| flies | 0.2% |
| choir pad | 1.5% |
The same measurement was run against the build from before the fix, for comparison. The choir pad was the outlier, so its high end and the tremolo strings' were rolled off and the set was measured again. The mastering stage was checked too, and it adds no saturation.
A hiss like this is a spectrum problem. It is easy to keep fixing the loop you can hear and miss the one you cannot, and measuring each loop separately is what tells them apart.
A HUD that wraps the vitals
The first HUD looked too much like the genre's default, so it was redesigned from scratch as the Reliquary: the vitals sit in a cracked-halo sigil under the blood moon. The skill medallions first spread out into a pattern. They now form a symmetric arc wrapping the vitals circle, with the six skills over the crown. It was checked at 1920x1080 and at 1366x768.
Sound for the swords
42 new one-shots from licensed sample libraries were added for combat. The light whooshes were pitched down so the greatsword has weight. The credits are shown in the options screen, as one of the licences requires.
Controllers
There was no controller support at all. PS5 and Xbox pads now handle movement, aim, attacks, skills, menus, a stick-driven cursor and rumble, with button prompts that change to match the pad family. It was tested by injecting a fake PS5 pad and a fake Xbox pad through the browser's Gamepad API, and iterated until both passed.
The mode where you watch
A Watch AI mode was added: an expert player runs the game on its own, with a live readout of what it is thinking. It is a title-menu entry.
