Episode
A window one pixel wide, armored mages, and floors that finally sound right
Tuesday was a day of long-standing annoyances getting named out loud. One player's saved window size shrank to a single pixel and took the whole client down with it, armor started charging mages for the privilege of teleporting in full plate, and more than half the floors in our player houses stopped pretending to be dirt. The team also built a tool that fits bought animation onto our characters, and used it the same morning to add nine dances.
In this episode
- A saved window size of one pixel hung the client
- Day two of the player-versus-player netcode work
- Armor now taxes Air spellcasting and Blink
- Player house floors stop sounding like dirt
- A new emote tool, and nine new dances
Transcript
Good evening to thee, citizens of New Britannia. Lord British speaks, with an account of what thy makers were about upon Tuesday. The mage in heavy plate must now pay, in time and in focus, for the comfort of his Blink. Every floor in every home has found its proper footfall at last. The crafting mold is spent in a single use, and sold by the hundred for a pittance. A town whose Cabalist falls is a town rewarded, for a day, in all its labors. And one player's game window shrank to a single pixel and dragged the whole client down with it. We begin with the pixel, for it is the finest tale of the lot.
So. Picture it. You launch the game. Nothing appears. No window. Nothing on the taskbar worth clicking. The music starts up somewhere in the dark, which is almost worse. And then, invisibly, your character loads into the world, and the client stops answering entirely. You reboot. Same thing. Windowed, borderless, does not matter. Every launch, forever. One of our players lived with exactly that, and when we finally got a look at what the game had written down about their window, there it was. A saved size of one pixel. One. By one.
The game was doing as it was told. It had been handed a window one pixel across and it built one, faithfully, and then the step that polishes the picture before you see it tried to render a frame into a space one pixel wide and fell over, on every frame, which is what stopped the client answering. So there are two guards now. Any saved window size smaller than six hundred and forty by three hundred and sixty is read as if nothing had been saved at all, so the next launch comes up at your desktop size. And the picture-polishing step hands a frame straight through, untouched, when the window is too small to draw into. Two guards, because one of them would have been optimistic.
Now, the big one, and it is the big one for the second day running. Yesterday I told you Monday was a netcode day. Tuesday was also a netcode day, twenty-four separate pieces of it, so let me give you the ones you would actually notice. Start with melee. When another player swings at someone near you, that swing has been playing on your screen from wherever your copy of them was last drawn, which is often a step or two short of the person they are hitting, and usually still turning to face them. The animation plays out in full, the blade travels through the air beside their target, and then the damage number appears anyway, because the server knew perfectly well what happened. Your eyes have been watching a miss while your log reads a hit, for years. The swing now turns to face its target and closes that last step during the wind-up, so the blade arrives where the blow does.
Then there is clicking on people. If you have ever tried to target a running player and selected the empty grass just in front of them, that was real. Your game was drawing them at a predicted position and offering you a selection box somewhere ahead of it, and on a moving ship or a lift it offered you a box that had wandered off entirely. Players are now selected where you can see them. Creatures and pets get a version of the same mercy, capped at a quarter of a second of guesswork, and they understand that a player standing on a deck is standing on the deck.
Here is the one that made me laugh out loud. Bow and crossbow shots, and Fire Arrow and Ice Arrow, home in on their target. That is by design. What was not by design is that the homing was so devoted that if you ducked fully behind a stone pillar while the arrow was in flight, the arrow would simply wait for you there. Behind the wall. A loyal arrow. In player fights, a homing shot whose target is properly behind cover when it lands can now miss, which I am told is how arrows work.
A few more from that pile, because they are all the same shape. Hostile ground spells draw you a warning ring. Ice Field, Ring of Fire, Meteor Shower, gas bombs and tar bombs will show you where they are about to land, from the start of the cast until they arrive, which should make standing in one a choice rather than a surprise. A stun or a knockdown on somebody who is casting can show the word Interrupted over them straight away, faint until the server confirms it. Other players' feet have stopped sliding when their movement is corrected, because their run animation plays up to a quarter faster or slower while their legs catch up. And a swing can no longer knock down or bleed a player who was standing well outside the attacker's reach, which I will admit sounds less like netcode and more like an apology.
My favorite piece of plumbing in that whole batch is about clocks. Effect and aura timers could run a second or more apart between two people watching the same fight, and the reason is that each game only ever knew the server's time down to the whole second. A second is an enormous amount of time in a duel. Each game can now read that shared clock down to the millisecond, so two players looking at the same buff see it end at the same moment. And once again, every item I just described shipped switched off. It goes on in ones and twos with the measuring rig running, and anything that makes the numbers worse comes straight back out.
Right. Magic and armor, which was the day's one real design change, and the day's one visible change of mind. For a long time the heaviest armor in the game cost you accuracy on your spells and nothing else, which produced the thing players have been pointing at for ages: a fighter in full plate with a Blink on their bar, teleporting around a battle at a mage's speed while wearing an entire wardrobe. As of yesterday, armor also slows your casting and raises the focus a spell costs, scaled by the same interference your worn gear already adds. Full plate makes Blink take about forty-six percent longer and cost about forty-six percent more focus. Chainmail adds about twenty-seven percent, leather fourteen, cloth nothing at all. Rings and blessings that reduce your chance to fizzle still reduce your chance to fizzle, and they leave this alone.
And then, about two hours later, the team took most of it back. The first pass applied that penalty to every school of magic at once, and on a second look that was a far larger change to the game than the problem deserved. So by evening it applied to Air magic only, at half strength for Fire and Death, and every other school went back to exactly the cast time and focus cost it had that morning. Blink in full plate is still about forty-six percent slower and dearer, because Blink in full plate was the whole point. Everything else got its day back. The spell tooltip tells you what your gear is adding, so you can read the bill before you pay it. I would rather we shipped a change at noon and narrowed it by dinner than sat on it for a month, and I would rather say that out loud than tune it later and hope nobody noticed.
Now. Footsteps. This is the one I have been looking forward to. More than half of the floors in our player houses have been playing dirt. Not stone. Not wood. Dirt. The polished plank floor of a village inn: dirt. The stairs of a guard tower: dirt. The deck of an airship, at altitude, above the clouds: a pleasant country lane. Fifty-six percent of the floors, porches, decks and steps in player housing were doing this, and the number is now one tenth of one percent. That is the inns, the towers, the airships, the galleons, the kobold halls and the Castle Set homes, all of them walking on what they are actually made of.
The reason it was so widespread is dull. The reason it went unfixed for so long is not. Footstep sound comes from the surface under your boots, and a house is assembled from a shell plus decorative floor pieces, and nobody had ever gone through and told the decorative pieces what they were made of. So the game fell back to its default, and the default is dirt. One player sent us report after report about this, floor by floor, house by house, nine separate reports, and that patience is what turned a shrug into a list long enough to fix in a single pass. Metal floors play stone for now, because we do not yet have a metal footstep sound, and I would rather you heard stone than soil. The desert houses keep their dirt, because those floors are earth and always were.
Crafting molds. If you smelt, this is your change of the day. A mold used to be a permanent tool, except that it was quietly being consumed on some recipes and not on others, which produced a tracker report titled, memorably, "Ingot Mold unit count error." That is the polite version. The honest version is that nobody could tell you whether a mold was reusable, because the game could not tell you either. So there is one rule now. A mold is single-use. Each craft spends one. They stack like reagents, a single mold costs one gold, and every merchant who sells molds will sell you a bundle of a hundred for fifty.
Since that turns a permanent tool into a consumable, every mold already in your bags became a hundred molds. Not one. A hundred. Anyone whose smelting ate their Ingot Molds in an earlier build gets a hundred new molds for each one, by mail, from a snapshot taken before the change. A mold is now worth half a gold piece, and the correct reaction to breaking one is no reaction at all.
Here is the loveliest piece of work of the day, and the one with the longest tail. Until yesterday, every single emote in this game was animated by hand onto our own character skeleton, which is why we add them so rarely. Our characters are old, their rig is ours, and the enormous libraries of motion-captured animation you can simply buy do not fit it. A tool now exists that takes bought or downloaded humanoid animation and fits it onto our player skeleton, for the male and the female character, in one pass.
It was finished in the morning. By lunchtime there were nine new dances in the game. Toprock, Uprock, Hip Hop, Twerk, Robot, Cabbage Patch, Twist, Swing Dance and Ghoul Dance. I want you to understand that I have spent the better part of my life building a world of virtue, oath and consequence, and the first fruit of our shiny new animation pipeline is Twerk. I have notes. I am keeping the notes to myself. Each dance is learned from its own emote item, and they are not sold anywhere yet, because testers are still checking how they look on a character wearing plate armor and a floor-length robe, which is a reasonable thing to check before we let anyone do the Cabbage Patch in a suit of mail.
Three things about your house. The headline item, and I say this with a straight face, is the Gilded Hoard Tip Jar. It is about two and a half meters of polished gold, standing in a drift of gold ingots, with glowing gems around its middle, and it costs one million gold at the housing decoration merchants in Ardoris, Celestis and Solania. One million gold, for an object whose entire function is to accept your spare change. It is magnificent and I love it. Elsewhere in housing, a home you had slid or turned with Move House used to snap back to its standard spot when you restored it from the Property Manager, which left your yard decorations standing inside your own walls, and a restored home now keeps where you put it. A long Quick Deposit into a lot chest finishes even if you close the window while it is running, instead of refusing the rest of the batch a minute later. And the Large Clover Paver finally matches the small and medium ones, so a mixed floor stops looking patchy.
Now for something with a bit of the throne about it. When a town's Cabalist falls and the siege is cleared, that town is Liberated for a day. Everyone standing in it earns ten percent more crafting experience, gathers ten percent faster, and gets twenty percent more fish bites. It shows on your buff bar while you are there, and it belongs to the town rather than to you, which makes it the first of an entirely new kind of buff. Break the siege and the whole town works better for a day. That is how it ought to feel to free a place.
Trophies had a day as well. There is a new Deck Building Contest Trophy in gold, silver and bronze: a table-sized black iron cauldron on a carved scrollwork stand, turning slowly, floating a few inches clear, with smoke and combat runes rising off the brew. The nine Cabalist kill trophies used to show the same small robed figure in profile, so a wall of nine of them read as one painting hung nine times, and each now shows its own Cabalist from the chest up, facing out, wearing its own mask. And two hundred and thirty event prizes that a trophy swap last week turned into marlin statues are getting the sword in the stone back, as the new Event Trophy. If you won a time trial and came home with a fish, that was us. Your name stays on it. The angling prizes remain fish, correctly.
On the community website, the Roadmap is a live page now rather than a document somebody remembers to update: every upcoming release with its target date, what it brings and how far along it is, the releases already out, and a backlog of larger work that has no date yet, each item marked Planned, In progress or Done. The guild and town desk learned Change icon on a right-click, with eighty-two of the game's own painted icons to choose from, and only you see the ones you pick. Calendars can repeat an event on chosen days of the week, so a Monday, Wednesday and Friday practice is one event instead of three, and whoever created an event can pull a single date out of it afterward. And Blood Bay has its town page back, having been skipped by a bake that quietly omitted any town large enough to fill a whole scene of its own.
Lightning round. A hundred and eighteen tracker issues closed yesterday and I have named perhaps a dozen, so here is the shape of the rest. There was a run of creatures behaving like stage props. A Dragon Totem in a player dungeon was raising its dragon inside a closed doorway, where players could hear it and fight it and never once see it. A spider egg sac had ended up on a hut roof, out of reach of everybody. A boss spider in the swamp was wearing the name of the ordinary spiders around it. And the Charnel Gluttons in the deep pits are proper group fights now, with three times the health and the experience to match, while the ones a starter quest sends you to got a gentler version.
Interface and client, swept fast. Tooltips were being drawn underneath the mouse pointer for anyone who had enlarged their cursor in Windows, which hid container names and decoration counts and a guildmate's last login, and they step politely aside now. Every blessing and Obsidian potion has its own buff bar icon, where all of them used to show the same purple bottle. Antialiasing had been switching itself off in busy towns on perfectly strong graphics cards, and it only backs off now when the graphics card is what is actually holding you up. A window left maximized comes back maximized. And the Trade window shows both players' names above their halves of the trade, which it never did, so in a crowd you can tell who you are trading with. That one was requested by Rinaldi.
And a last handful. Soothing Rain had been reading the Light spell as something harmful and stripping it off you mid-heal, which was reported by Garfunkel Humperdinck and is fixed. Pet gear wears out four times slower, because every hit your pet takes was landing on one of only three items. Riders can pass under the open gates at Resolute and Brittany Wharfs without dismounting, the portcullis having previously risen a few centimeters above a mounted head. The town crier at Castle Atos remembers the one thousand eight hundred and seventy-two characters who met him under his old name, and has stopped offering them a visitor's reward he then declines to pay. The Oracle takes emoji, answers about fifty more questions than it did on Monday, and a baker in Soltown has a new voice after players told us the old one sounded like a machine.
That is Tuesday. What I am looking forward to is the testing pass on all that netcode, because everything I described tonight is sitting behind a switch, waiting for two players and a stopwatch to say it helped. And somewhere in the notes there is a design for twenty traps a player can set anywhere, with a skill for finding them, which is going to make a walk through the woods a considerably more thoughtful business.
One last thing. From tonight the crafting mold is single-use, which means that from here on, every single craft breaks the mold. I have been saving that one all day. Good night, and be well.