Episode
The name filter said yes, and the tax clock said twenty minutes
A crude name walked straight through three separate checks at character creation, and the fix had to learn the difference between an insult and the town of Scunthorpe. The tutorial deleted from the Battle of Solace Bridge is back, fallen log and all, along with a new house rule about who may remove quest content. Plus a tax setting that would have evicted a hundred and forty seven deeds, an art dealer who was cast as an animal because his surname is Wolf, and a hundred and eighteen scripts pried off the old interface library in one day.
In this episode
- A rude name cleared every check at creation
- Solace Bridge teaches the controls again
- A tax clock that nearly took a hundred lots
- Old interface library loses a hundred and eighteen scripts
- An art dealer misfiled as an animal finally speaks
Transcript
Good evening to thee, citizens of New Britannia. Lord British here, with an account of what thy makers were about on Tuesday. A player sat down at character creation, typed in a name I will not repeat at the top of a show, and every gate we own swung wide and welcomed him. The old lessons of Solace Bridge stand again, fallen log and all. A hundred and forty seven of your deeds came within a whisker of eviction, and did not. And the oldest interface code in this game lost a hundred and eighteen scripts in a single day. We begin with the name, because it is the best story.
So. The test shard, a normal account, the ordinary name screen. Somebody typed in Butthead. And the word list looked at it, and the review queue looked at it, and the model whose whole job is to read a name and decide whether that name should be walking around Novia looked at it, and all three of them said: lovely, welcome to the world, mind the wolves. Three checks. Unanimous. A perfect committee decision.
Here is how three things fail at once. The word list matched whole words only, and had no crude compounds in it at all, so it was hunting for a short list of the hardest words in the language and nothing else. The name reader's rules were written the same way. A crude insult was not profanity by those rules, it was at worst a bit of innuendo, and innuendo does not get refused, it gets sent to a queue for a human to look at later. So the name went live while its paperwork was in transit.
The interesting half of this problem is the other direction. Refusing rude names is easy if you do not mind refusing people. There are real names and perfectly good fantasy names that contain a rude looking piece: Butts, Button, Cassandra, Dickens. And the good people of Scunthorpe in England have been losing this argument with software since the nineteen nineties, which I think we can all agree they did not deserve. So the new rules go after crude insults and vulgar compounds used as the whole name, including when one is buried inside a longer name, spelled with numbers in place of letters, or split across the first and last name fields. It was tested against sixty six names, twelve of which had to be refused and thirty nine of which had to be let through. It got all fifty one right, in about a fifth of a second each.
Two more small bolts. Clicking Create now waits for the check that is already running on your name, so you cannot beat it by typing fast and clicking faster. And staff accounts, which can still claim reserved names, no longer skip the rude word list, because the call is coming from inside the house often enough to be worth mentioning. The name screen piece of this is not on the test shard yet. The word list piece is.
Now the one I owe you an apology for. A week and a half ago a tidy up pass looked at the Battle of Solace Bridge and found the movement lesson, the camera lesson, the jump hint and the journal prompt sitting in it, and reasoned as follows: every new character learns all of this on the Isle of Storms, therefore this is a duplicate, therefore out it goes. That reasoning is tidy and it is wrong. Not every character comes through the Isle. Some arrive at that bridge having never seen it. And for a week and a half, those players were handed a war, a rift and no instructions whatsoever.
It gets worse, in a way I find almost admirable. The jump lesson points at a specific fallen log on the rift path. The log was part of the same group. So the log went too. Even the players who did know how to jump arrived to find nothing to jump over.
All of it is back, restored word for word from the commit before the deletion and put back in the same slots it came out of. The movement and camera prompts. The jump hint, in its old parent. The journal key hint. The combat mode hint on the rift path. The four arrival checks that clear a leftover movement task so it does not sit in your log forever. And both halves of the fallen log, back in the flora. Every lesson kept its original gate, so if you did learn to walk on the Isle, the bridge will not stop to teach you again. There was also a hint in there that had been switched off on purpose some years ago. That is back as well, still switched off, so the scene is once again complete down to the parts of it nobody can see.
And a rule came out of it, which is the part that matters more than the fix. Quest and task content does not get removed from this game without the quest owner's direct permission, naming the exact objects. Not because a cleanup pass thinks it looks redundant. Not because a plan document recommends it. Somebody who owns that content says yes, first. That is written into our house rules now, where the next enthusiastic tidy up will walk straight into it.
Speaking of near misses. Your lot taxes live in a small settings file, and that file has been shipping development values for years. Nobody noticed, because the old publishing path quietly overwrote it on the way out the door. The new server startup does not run that old script. So the new servers were carrying the developer's numbers, and the developer's numbers are these. On the real rules, a lot is evicted sixty days past due. On the development values, twenty eight hours. On the real rules, the royal tax credit grants you fifteen days of grace every thirty days. On the development values, it granted one day of grace every twenty minutes.
Now, those numbers are wonderful on a development box. You want to watch a year of the tax system's behaviour before lunch, so you make a day take twenty minutes and you sit and watch the whole cycle spin. Point that same clock at a database full of real deeds owned by real people and it stops being a test harness and becomes a bailiff. On the rehearsal data, the first tax sweep after the move would have evicted about a hundred and forty seven taxed lots. Under the correct rules, three.
So the file now ships the real values, and the start script pins all three of them every single time the server comes up, and refuses to start at all if one of them is missing from the file. A rebuilt data directory cannot fall back to the old numbers any more. Nothing can be quietly wrong here again without the server declining to run.
While we are on property. You can no longer place a lot marker or a terrain leveller where the levelled ground will end up under water. The way you got there was patient work: you chain levellers down a shoreline, each one dragging the ground a little lower, and eventually a Village Property Marker sits below the waterline. The lot keeps that levelled ground after the levellers are picked up, and then you have land buildings standing in open water. The old check tested a single point at the centre of the footprint, which a determined person can simply build around. It now tests the height the ground will actually end up at, across the whole footprint. Lots already placed are untouched, so if you own a house in the sea, congratulations. It is grandfathered. You are a heritage site.
Now the big quiet one. We are taking this game's interface off a library it has leaned on for more than a decade, and Tuesday was the day the crew went through the house with a crowbar. Twenty eight commits. Around ten thousand lines of code deleted. The count of game scripts that still touch the old library was a hundred and eighty six when the day started and sixty eight when it ended.
The part I like is how they are keeping themselves honest. There is now a test that holds the actual list of every script still using the old system. If a script that is not on the list starts using it, the test fails. And if a script on the list has been cleaned up and nobody updated the list, the test also fails. So the list can never be stale and it can never grow. It is a ratchet. The number goes one direction, and it goes there in public.
There is also a new tool for the next stage, which is the ugly one: pulling the old components out of the prefabs and the scenes themselves, rather than out of the code. It removes the old widgets while keeping every object, every reference and every piece of translated text exactly where it was, and it checks itself against byte for byte fixtures before it touches anything real. The dry run counts five thousand eight hundred and seventy one components to remove across sixty four interface prefabs. That is the size of the thing we have been living with.
Two pieces of this you can actually feel. The first is the dismount saddle, which moved to the new system on Monday and picked up a plain right button release handler. Meaning: any right button release over that icon dismounted you. Swing your camera around with the right button, finish the drag with your cursor over the saddle, and you are standing in the road wondering what you did.
The horse is fine. The horse thought you were being decisive. It now wants the press and the release both on the icon, like every other button in the game.
The second was caught before it ever shipped, and it is my favourite sort of catch. The combat hand builds its slots under two parent objects that carry nothing at all except an old layout component from the library we are removing. The hotbar's cleanup sweep decides what to keep by looking at what components an object carries. Take that layout component away, and the sweep would have thrown both parents on the fire, and your combat hand would have broken the next time you changed decks. The surveys run that morning flagged it as the one removal in the whole pass that would have broken something without saying a word about it. Those parents now carry a small marker whose only job is to say keep me, and a test pins it on the real prefab.
Let me tell you about Caravaggios Wolf. He is the Reputable Art Dealer of Ardoris, and until yesterday he had never said a word out loud. When Ardoris was cast for voices back in June, the casting sheet was built by hand, and on his row somebody looked at the name Caravaggios Wolf and filed him as a creature. Role: animal. Audio: skip. So the voice pass rolled through Ardoris and gave a voice to the trainers, the shopkeepers and the criers, and the art dealer stood in his gallery in total silence for four months on account of his surname, while every actual wolf in the woods howled with full studio backing. He has been recast as a unique British gentleman, a hundred and eighty seven lines, and he will be talking at your next login with no patch required.
That is the small end of a real voice day. Last week's gesture pass moved the NPC gesture lines from brackets into italics. The spoken words did not change at all, but a recording is filed against the line, so the line came back with no voice attached to it. Rather than pay to record seventy six lines that already existed, somebody built a re-keying tool that goes and finds the clip whose text still matches word for word and puts it back where it belongs. Louis the Cook, Julia the Alchemist, Ted in Kingsport and about thirty other people speak again, at no cost and with nothing newly recorded. Wessen the horse, the drunk in the Blood Bay and three growls are still quiet, because their text really did change. They will get their turn in the next recording pass.
And the whisper. NPCs share a whisper motion, and that motion was wired to the tail end of the seated version, so when Julia the Alchemist whispered you the Oracle's answer, she appeared to consider the question and then do absolutely nothing. Four more emotes had the same mix up and now play the right motion: tipping a hat, blowing smoke rings, and both halves of playing dead.
Playing dead, wrong, in two separate parts, is a difficult thing for anybody to notice. Female characters now get the female version of each one. On top of that, the thirty or so NPCs whose dialogue was switched last week to match their bodies have had their new voices recorded and published. Two thousand five hundred and twenty five lines, live with no game update.
A handful of smaller things now, starting with getting where you are going. When you open Teleport to Zone and pick a destination, the little map beside the entrance list was turning the map sheet by the sheet's own rotation, and nothing else. The trouble is that entrance names follow the zone's compass, and a zone's compass comes from the way its sky is turned, and about a fifth of our zones turn their sky. So in South Broken Road the Northwest Entrance sat cheerfully at the top right. A hundred and twenty nine of four hundred and fifty seven compass named entrances were on the wrong side of the map. Each zone's true north is now baked in and read by the picker, and all four hundred and fifty seven sit where their name says they do. In the same spirit, Castle Atos presents as an ordinary zone now, with no housing lot drawn on the world map and no player owned label on its title.
Three things about your health bars. There is a new Health Bar Size slider under Interface, seventy five percent up to two hundred, and it resizes the bars on your own frame and your target's frame without dragging the rest of the interface up with them. An enemy's floating health bar shows its health again, which it had stopped doing because the target outline was being drawn in front of the bar, so you would stare at a full bar while your own frame counted the creature down. And your pet's frame docks a short step under yours instead of sitting at a fixed spot sized for the very tallest frame a player could possibly have, which for most of us left about a hundred pixels of nothing in the middle. The party list also steps out of the way of a summoned creature's frame instead of parking on top of it.
Your mail has grown a message box under the subject line, so a letter can carry a short note rather than a subject and a parcel. And there is a Reply button beside New Mail. Select a letter from another player, press it, and you get a fresh letter addressed to them with the subject already filled in. Vendor, bank and tax mail leave the button greyed out, on the grounds that the tax collector is not interested in your reply.
Achievement banners are clickable. One click on the banner opens the Achievements window with that achievement's category selected and its row highlighted and scrolled into view, instead of you closing the banner and then going hunting for the thing you just did. And on sound: door open, close and locked sounds play at half their old volume. Those clips were mastered as loud as the level up fanfare and then played from arm's length, so opening a cupboard announced itself like an accomplishment. Thank you, Barugon, for that report. In the Human Battle Encampment, two ground types had been pointed at a surface the game does not have, so every footstep there was soundless and logged an error on the way past. They walk on grass now, like the other camps.
Add-on authors had a good day too, nearly all of it driven by one author's very thorough report. A craft result now names the thing you made rather than the recipe, and tells you how many came out. Pictures in add-on windows animate again. Add-on windows can use the game's own cooldown wedge, that dark sweep across an icon, so a cooldown tracker no longer needs a hand drawn sprite sheet. There are party buff readouts and an event that fires when your party changes. And the performance window shows how many milliseconds a frame your add-ons are costing you, which is either reassuring or a difficult conversation with yourself.
Eighty five tracker items were closed on Tuesday, and I am not going to read you the register. A good fistful were numbers on your character sheet that had been lying to you with total confidence: the critical chance rows were printing four percentages in a row that did not add up to each other, and now say plainly which one is a rating, and the Dodge hover explains that an attacker's dexterity works against you and that you cannot dodge from behind or while stunned. The charge bar's cooling section is striped blue, because it used to be a near black that testers could not tell apart from an empty segment, which makes a charge meter a riddle. Another cluster was pure furniture: the minimap's zoom buttons moved out from under the map art, the appearance window sits next to the mirror instead of hugging the far edge of the screen, the name question at character creation stopped crowding the field beneath it, and the location line on your character select cards is a burnt orange you can actually read.
Elsewhere: the Oracle picked up eleven more answers and can read the public comments and current status on a report, so asking her whether anybody has requested a reopen no longer gets a confident no based on having read only the first paragraph. The October login box and this release's subscriber box now contain things, which is an improvement on containing nothing. A lich killed at a lich statue stands back up about two minutes later, rather than leaving the statue empty until you leave the dungeon and come back. A healing aura that had been adding roughly one point of healing no matter how much attunement you had poured into it now scales like every other heal, which takes it from about ten a tick to about twenty six for a serious sun caster. And a second swamp tree was found growing up through a pile of boulders in North Celestial Wetlands, thirteen meters from last week's swamp tree growing up through a pile of boulders. It has been removed. I am told there may be a third.
Two for the workshop. There is now a robot that plays the game. It takes about ten minutes to make a fresh character, raise a skill, change zones, hit a practice dummy, buy and sell at a merchant, ask the Oracle a question and quit, taking screenshots the whole way, and then it reads the log and groups the errors by cause. Its first run found an error being thrown on every single frame of startup, which is the sort of thing a human tester walks straight past because the game looked fine. Crash reports also get matched against the right build's symbols now. Since we split the game into two flavours they had been resolved against the wrong set, which gives you answers that are plausible, detailed and completely fictional.
That is Tuesday. The thing I am watching for is the day that ratchet reads zero and the last of the old interface comes out of the house entirely, and I will admit I am also watching for the third swamp tree. My thanks to the crew, who spent a day going back and undoing their own good ideas, which is the least fun work there is and some of the most valuable.
And let us close where we opened. For years this game would take almost any name a person typed at it, look it up and down, and wave it straight through the gate. As of yesterday, it has finally learned to butt out.
Good night, citizens. Mind your step on the bridge.