
Dev log ·
legends.city is up
We rebuilt the public site as separate pages written from the game's design docs, added four short origin comics, and applied 82 fixes from an audit.
Shipped in 06301476
City of Legends can't be played right now. There are no live servers, so the play buttons on the site are turned off until the game has a new host. Until then, this site is where we describe the game and keep this log.
We built a first version in August, a 38 KB static site staged on a test subdomain while legends.city kept serving the game. On October 7 we rebuilt it as separate pages for the game, the world, the factions, the creator, the comics and BREACH, and put it up.
The site is styled as a comic issue, with the name hung as a vertical street sign over the opening image. The art is generated concept art, and every page footer says it is not in-game footage.
Written from the design docs
The pages are written from a lore brief we pulled from the design docs, with every line tagged by its source document and section.
- Game follows a night in Catena, from the Junction where new Legends wake up out to the Fringe, where combat is legal. Below the city, a dive into the Lattice is a roguelite run through four strata.
- World runs the timeline from the Loom Years to 2093 and sorts the districts by danger, from the safe hubs around the Coil out to the war zone.
- Factions covers the three factions you can join (Meridian Combine, the Undercurrent and Scrapline Union) and the hostile groups you fight.
- Make a Legend walks through the creator: where your power comes from, eight archetypes (seven at creation, one earned), eight travel lines and what each costs in a fight, fifteen powersets, and the Cleanskin road for anyone who wants no powers.
Some names in the docs are still provisional. The site leaves them out, and a test checks the home page and five section pages for four of them. A travel line that isn't ready is marked "In the workshop".
Four origin comics
The Comics page has four issues of five panels each: Vector in "Gun Before Ware" (Scrapline Union), Captain Hale in "Sixty Percent" (Meridian Combine), Nyx Static in "Pirate Signal" (the Undercurrent) and the Toll in "The Price" (Chrome Dogs).
Captions, balloons and sound effects are real text set over each panel, so they stay sharp at any size and a screen reader can read them. A balloon can be pinned to one side when automatic placement would cover a face, as Hale's is in the third panel of his issue.
The audit
The same day, we audited all of it, the BREACH rehearsal board included. 122 findings survived a second check. The urgent one was a home-page video loop that showed, for under a second, a figure too close to another company's character. We deleted the clip and put a still in its place. The same commit removed BREACH lines saying the Verdict formula was already public and appeals were open.
The next commit applied 82 fixes across 168 files:
- Fonts are self-hosted, so no page calls an outside font service.
- Every key art image and comic panel has 480 and 800 px copies. The street-fight image on the Game page is 148 KB at full size and 21 KB at 480.
- Stylesheets, scripts, fonts and the smaller image copies have hashed names, so browsers can cache them for a year.
- There is a sitemap, a web manifest and an RSS feed for this log at
/log/feed.xml. - Six section pages and all four comic issues have their own share card.
- An automated accessibility check reported zero violations across 16 URLs at two widths. Tab focus stays inside the open phone menu. On the BREACH board, status messages are announced and the ticker tape can be paused.
- Token copy now says a launch will happen, because nothing has launched. The footer carries an 18+ notice and a link to the full disclaimer.
All 366 site tests pass at that commit.
Still open
We still owe a copyright line, contact addresses, legal pages and a note on who is building the game. Those wait on decisions not yet made, and some need legal review. Several images also need redrawing.