





As we get closer to the end of a project like Mask of the Rose, we shift our focus from making new things to improving the quality of whats already present. Some of that takes the form of subjective polish; for example, tweaking a characters art a little to make them more expressive (or dreamy ). On the writing side, we might make changes such as altering the pacing of the game in response to a playtest.
However, a large (perhaps larger, by time spent) aspect of quality is less subjective; bugs! QA is particularly important when it comes to getting to grips with this latter category. During a project we test work continuously, typically performing testing of each new feature or chunk of writing, along with periodic regression testing (playing through the game to check if anything has broken). Normally some of the issues detected during development can be deferred (i.e. dont have to be solved immediately) because they are dependent on other features that will be done later or because some functionality is intended as a placeholder. We still record everything, because we dont want bugs to slip through the net; but later on in the project is when programmers tend to focus more and more on eliminating bugs, and spend less time on new features.
In Mask of the Rose, for example, all of our planned feature programming is complete. For example; all the UIs are in place; the game save system is implemented; and an audio system manages sounds and music.
That does not mean the work is over! For the last couple of months our core Mask programmer, Samus has been working closely with Lesleyann, our Principal QA Tester, to tackle bugs and improve performance. In fact, their work has been centred on a very specific purpose; Mask is the first Failbetter game that will launch simultaneously on PC/Mac and console (Switch).
Its been important for us from early on in this project to always maintain a working build of the game for the Switch. There are a few reasons for this.
The Switch, being effectively a mobile platform, acts as a hardware baseline; even the more modestly specced PCs and Macs that Mask targets have more usable memory, hard drive capacity and CPU power than the Switch. This next point is oversimplified, but in essence; if we can get Mask running well on Switch, Mask will also run well on lower-end desktops and laptops. Therefore it keeps us honest about how complex features like graphical elements can be.
It also keeps us honest with regard to gamepad support. Historically, Failbetter titles have been primarily developed for mouse and keyboard control, with gamepad support either added later or not given the same level of focus. In Sunless Skies, we werent happy with how gamepad support turned out in the initial PC release, so when we set out to publish our own console ports (also a first for us) we were keen to take the improvements from console and make sure they made it back to PC and Mac in the Sovereign Edition. However, because we hadnt given gamepads equal weighting from the start of Sunless Skies, there were technical compromises we did have to make to give gamepad and console players a better experience. In Mask, maintaining a build on Switch forces us to focus on the quality of both the gamepad and the M+KB experience.
A final reason to build on Switch early is because shipping a game on console is a unique challenge. Platform holders have extensive lists of technical requirements that games must fulfil. For example, most consoles limit the frequency to which we can write to the storage memory, to prevent physical wear to the drives. Another requirement might be to only use specific, authorised terminology to refer to the consoles controllers.
Before we can release the game we must check that it is compliant with these requirements, fix any issues, test everything, and then submit builds to the platform holder to perform their own testing. That means the release process on console must start earlier than on PC, and this is what Les and Samus have been focusing on recently; getting to the point we can submit a build to Nintendo that gets the famous Seal of Quality from them!
Our other area of increased QA focus is writing. Here, also, Mask presents new challenges. In previous Failbetter titles, writing was very modular. In Sunless Skies, for example, a story can be tested as a stand-alone unit. This is because the player has lots of discrete, self-contained experiences as they visit different ports across the High-Wilderness. Stories tend to only act on each other indirectly; such as via the resource economy, or the completion state of an earlier story. It is also quite unlikely for a writer to accidentally trap the player in a dead end. Because of these properties, we know that bugs introduced by adding a new story will normally be confined to that one story, and the states of the playthrough that could affect the story are less numerous, making testing simpler.
But if Sunless Skies is like a short story collection, then Mask of the Rose is closer to a novel; every character and storyline is interwoven. Mask is also the first time we have used the Ink scripting language instead of our in-house content management system. The Ink script in Mask is fiendishly complex, reactive and programmatic; this is the most player-responsive title weve ever made.
Furthermore, with no way to escape faulty content (think about how you can simply leave a port in Skies if a desired option is unavailable), we have to work hard to spot the type of critical writing bug that can cause the game to dead end.
This has meant that weve had to rethink how we perform narrative testing, and are deploying automated narrative testing for the first time. Samus has developed a tool that allows the writer to run a piece of content thousands of times outside the game engine before its integrated. This acts as a first line of defence against the dreaded dead ends, because we can tell if one of our randomised, automated runs gets stuck on a particular version of the script.
A graph illustrating the players routes through Mask of the Rose (simplified)
This approach isnt bulletproof, because there can be differences between how the testing tool behaves and how the game engine behaves; there are often serious bugs at the interface between tech and writing. A purely stochastic tool will also make arbitrary decisions, which result in many runs that represent an atypical player experience. To bolster our approach were also performing extensive manual, in-game testing, and are working on a few ways to extend the capabilities of our autotest tool; for example, to allow writers to specify different player profiles that make the computer player focus on certain human-like behaviours such as pursuing a particular romance option.
Every game comes with its own set of challenges for the developers, not least in QA. However its easy to overlook this discipline from the outside, because QA work is invisible until something goes wrong. I hope this blog gave you a little peek under the mask! Thank you for coming on this journey with us as we extend the capabilities of our studio to tell a very different tale to the stories weve told before.
[ 2022-10-06 10:38:08 CET ] [ Original post ]
🎮 Full Controller Support
- [0 B]
Welcome to Fallen London: a darkly hilarious gothic underworld where death is a temporary inconvenience, the rats talk, and Hell is only a stone's throw away.
Thanks to an unknown bargain, London now resides in a vast cavern under the earth. Down here, the sun doesn't shine, and Parliament has sunk into the Thames. Queen Victoria never emerges from her palace. Cats spy on their owners and whisper their secrets abroad. The fabric of strait-laced Victorian society has begun to fray.
New Masters are in charge. Why are they so… tall? And always cloaked? And why are they so interested in love stories?
The possibilities for personal connection in London are different now. Thrown together in crisis, you might befriend or romance many of the characters you meet, from Griz, your assertive housemate for whom the Fall was a chance to break free of Victorian societal norms, to the infernally well-dressed gentleman at the Brass Consulate with the amber eyes.
Even death itself has a twist here: the first murder victim since the Fall is feeling much better, and keen to see justice done. Unfortunately, as the doctor who treated him immediately before he expired, your housemate Archie is the prime suspect...
- (Re)invent yourself: who were you before the Fall? Who will you be now?
- Create outfits from a selection of clothing and unusual accessories to unlock different story options
- Fall in love with a cast of diverse Londoners, each with their own secrets
- Matchmake among your friends, or seek love for yourself (by any definition you like)
- Write love stories in a delightful minigame, and use them to impress the new Masters
- Pick up odd jobs to earn money and gather resources. How are you at rat catching?
- Solve the first murder since the Fall, with the assistance of the victim
- Discover cosy, mysterious and magnificent locations in a dark and delicious version of Victorian London
- Seek deeper and deeper secrets over multiple playthroughs
Will you be a brilliant matchmaker, connecting friends and rivals while remaining unattached? Or are you looking for lasting love? Perhaps you're open to whatever comes your way? Every major storyline is accessible regardless of whether your approach to love is romantic or platonic.
Use an elaborate, dynamic story-crafting system to create love stories – and murder theories. Are the twists in the tale not to your taste? Then change the motive, the location, even the victim, and see how the stories adapt!
Your past will open different doors for you in London. What was your life on the Surface like? Were your family landed gentry? Or did they own a tailor’s shop, or dabble in the occult?
Your clothing will also make people think differently of you. Your outfits open new possibilities in conversation: be bolder, more commanding, more flirtatious. Ingratiate yourself with London's inhabitants by changing your style of dress – they won't be able to resist you in that hat!
You'll also work odd jobs and collect resources which will open new avenues in social situations. Your housemate Griz has found you work as census-taker for those curious new Masters. Fill your census-taker's notebook with intimate details about your fellow citizens and you'll find you can pursue deeper relationships with them, romantic or otherwise.
Griz
For your fellow lodger Griz, the Fall of London has been a liberation – the chance to throw off her corsets, dump the dresses and be taken seriously in a position that would have been forbidden to her when she was 'Miss Griselda'.
Archie
For your other housemate Archie, the change is terrifying. What is a medical student supposed to believe in when even the laws of death no longer apply?
Harjit
When the Fall struck, Harjit stepped up to help anyone who needed it. Now he’s settling into his role as a man in uniform, but the territory is unfamiliar – and, secretly, he has a missing person of his own to find.
Milton
Milton is the amber-eyed host of a literary parlour with a scalding handshake and a prior address in Hell. He’s an excellent listener, but does he only want you for your soul?
Rachel
Rachel was halfway through her serialised novel when London fell and everything she was writing about was turned upside-down. Her publisher grows impatient. Fortunately (?) meeting Milton has rekindled her passion – for more than just writing.
David
Rachel’s brother, and no fan of Milton, David is also destined to be Fallen London’s first murder victim. When he returns from the dead, you can ask him all about it.
Horatia
For a decade, Horatia has taken in lodgers and turned them into family. Since London fell, people need the security she offers more than ever. So when a man made entirely of clay knocks at the door, offering to pay handsomely for lodgings, she can hardly refuse.
Mr Pages
One of London's new, mysterious “Masters”, Mr Pages has embarked on the titanic endeavour of conducting London’s first post-Fall census! But why are its questions so concerned with the love-lives of London’s citizens? How do people declare their affection, in this fair city? How lasting are their attachments? Might a Londoner take an interest in a very tall, broad-shouldered, cloaked personage that leans towards the chiropterous, hypothetically speaking?
Explore this unique city in glorious, richly rendered 2D. Experience London through three seasons: the season of Confessions, the season of Yule, and the season of Love. Help establish the first Feast of the Rose, a festival of romance that will be celebrated in London for decades to come!
For players of Sunless Sea and Sunless Skies, Mask of the Rose offers a chance to immerse yourselves in the city that founded this deep, dark, and marvellous universe. And for veteran players of the Fallen London browser game, it marks your first opportunity to visit the city just after it fell. But fear not: Mask of the Rose is an excellent introduction to the universe we’ve been building for more than a decade, and you don’t need to have played our other games first. Come on in. Most things won’t bite, unless you want them to.
Explore the locales, lives, and loves of an impossible city. Exchange bon-mots with devils. Investigate the first murder where the victim can testify at the murderer’s trial. Dive into the sunken ruins of poor drowned Parliament. And if you’re truly reckless, fall in love.
- OS: Ubuntu 20.04+. ArchLinux
- Processor: Intel Pentium 2GHZ or AMD equivalentMemory: 4 GB RAM
- Memory: 4 GB RAM
- Graphics: OpenGL 3.2+. Vulkan capable
- Storage: <8 GB available space
[ 6045 ]
[ 687 ]