Alexis Kennedy – Weather Factory https://weatherfactory.biz Weather Factory Thu, 07 Nov 2024 13:58:57 +0000 en-GB hourly 1 https://wordpress.org/?v=6.7.1 https://weatherfactory.biz/wp-content/uploads/2021/07/cropped-Logo-32x32.png Alexis Kennedy – Weather Factory https://weatherfactory.biz 32 32 199036971 Book of Hours x Smooth Jazz https://weatherfactory.biz/book-of-hours-x-smooth-jazz/ https://weatherfactory.biz/book-of-hours-x-smooth-jazz/#comments Thu, 07 Nov 2024 12:55:02 +0000 https://weatherfactory.biz/?p=14425 The later stages of BOOK OF HOURS get a little stuttery, and I get a mail every couple of weeks from someone who’s dismayed that their high end rig built around a 4090 RTX isn’t running BH with the buttery smoothness that it can manage for Cyberpunk 2077. We’ve tinkered over the last year and improved it since launch, but after we’d picked all the low-hanging and indeed medium-height fruit, there were still some stubborn rendering bottlenecks that just needed someone to spend a week sitting down with the Unity profiler and do some meticulous testing. I finally asked Chelnoque, our orbiting contractor, to do that, because it’s hard to carve out a week of my time and he’s better at that stuff than me anyway (I have occasional virtues, but ‘meticulousness’ is not among them).

You can see the fruits of his labours here:

and you can enjoy them in a passworded branch (perf_alpha) on Steam. I’ll tell you the password in a minute, but I’m making it slightly more obscure  than usual, as a gentle filter, because I’m going on holiday next week and I don’t want to come back to too alarming a support queue!

Chel or I might write up something in the mode of this post or this one, because people are often surprisingly invested in the details, but here’s one representative example of the Knuthian rule that optimisation is rarely about what you expect: one of the problems turned out to be a quirk of some earlier optimisation code. There’s some manual culling code that ensures the game doesn’t render objects that aren’t on screen (we needed to go further than Unity’s built-in culling, for reasons) and this used an additional probably-superfluous RectMask2D component, which was disproportionately hammering perfomance for reasons neither of us particularly understand.

Anyway, none of these problems were at GPU level, which is why fancy graphics cards made no difference: this is all about Unity’s decisions about which rectangles to render, and how, before it passes draw calls up (down? off? out? in?) to the GPU, and we just have an extraordinary number of rectangles in Hush House. But there are things we’ve done about them and those things are done in the ‘perf_alpha’ branch which you can access with the password ‘thedorgeoffays’. It is considerably smoother. Your saves should pass happily between perf_alpha and either the beta or the main branch. Like swans, or the jet setters in that Mad Men episode.

These things may have unexpected consequences in the UI, like sort order being a bit odd, or some things not being clickable that should be, because Chel really had to go into the walls and move some of the wiring: metaphorically speaking you may happen across a lightbulb that only glows when you open the garage door. So please let us know (support@weatherfactory.biz) anything you see, along with a save game so we can easily reproduce it! and I’ll take a look when I’m back from Norway on the 18th. If you’re not reckless enough to try out something with ‘alpha’ in the name, and who can blame you, then you can expect the improvements to arrive on beta before Christmas if you’re lucky.

In the meantime, here is some firmly pre-alpha UI and even more firmly pre-alpha writing from the Game Three prototype which has been occupying my time lately. Dream furiously, people.

 

 

]]>
1 14425
Silence Before Thunder https://weatherfactory.biz/silence-before-thunder/ https://weatherfactory.biz/silence-before-thunder/#comments Thu, 29 Aug 2024 16:40:20 +0000 https://weatherfactory.biz/?p=14268 “Rocks are no sharper in the dark.”

HOUSE OF LIGHT is done*, and anyone who’s ever worked on anything creative will instinctively know what that asterisk means. Done* means I have a task list of about sixty items from my own testing and that of our invaluable beta testers, some of them as trivial as ‘lol forgot to put in a recipe for Batter’, some as annoying as ‘I need to rework saves a bit so players don’t occasionally get lorem ipsum text on a reload’. Done* means the novel-sized narrative material is all written, but I’ll keep fiddling with it until and after launch. ‘ Done* means there are things I’ve missed, but perhaps I can still spot some of them.

But ‘Done*’ also means, by crikey, it’s come together. Remember this? ‘The knee-bone’s connected to the thigh-bone?’ There are a half-dozen different systems in HOUSE OF LIGHT (Cooking, Salons, Further Stories, Invitations, Manuscripts, and the Lighthouse Institute endgame) and now they’ve been in beta for a while, I can see that the ecosystem works. It’s an ecosystem, not a machine, because part of the philosophy of BoH was always that there’s more than one way to do something. So you don’t need to write manuscripts to satisfy Further Story requirements, but it will fill some useful gaps; you don’t need to hold Salons to improve your skills, but it’s another way to improve your Manuscripts; you don’t even need to experiment with Cooking to hold Salons – if you really hate kitchens, you can just put everyone in the garden and feed them blackberries – but it’s a lot more fun if you do.

Which reminds me of something else: we’ve had a clutch of emails recently asking for invites to the closed beta. Sorry – those were all gone months ago! This time round, we invited beta testers for HOUSE OF LIGHT  from a larger pool of people who’ve sent us helpful bug reports in the past, and where we didn’t get a reply to the invite, we pulled some more names out of the hat. This has worked well, and we’re likely to take that approach in the future – so the upside is, if you’re hoping to get selected for future betas, sending us helpful bug reports will improve your chances. But most people who sent us helpful bug reports didn’t get randomly selected, so please don’t think you’ve been judged wanting if that’s you, it’s just the nature of maths. Every bug report, whether actioned or not, helps make the game better for you and for everyone else, and I’m grateful to everyone who makes the effort.

Anyway ‘Done‘ finally means that I’ve been able to focus on the Chinese and Russian localisation of BoH, which is out now, and which has also been ‘Donefor a couple of weeks now, but once that’s out the gate I can focus on smoothing the last wrinkles out of HOUSE OF LIGHT for a release next month.

Lottie rounding off this post! The art version of AK’s bit above is that I will be randomly called upon for LAST-MINUTE VEGETABLE STEW or create a button to show people they’ve bought HOUSE OF LIGHT on the main menu, but that it’s not translated into their language yet, or add Steam and GOG achievements (which we are! Anyone want to guess how you unlock ‘Stress Cannot Exist In The Presence Of A Pie’? It is not to simply bake a pie).

I should mention that there’s currently 25% off everything in the merch shop to make space for the Lucid Tarot’s arrival next month (cue AK having conniptions, understandably, about living in a warehouse full of boxes that was once our flat), and that Russian and Simplified Chinese are NOW LIVE on Steam and GOG, and we would extremely appreciate your help getting the word out about the game if you have any Russian- or Chinese-speaking friends. ‘Many pebbles, one Beach’ is the motto of the Institute founded under the ambition of ‘Stone Consumed’ – thank you for being a pebble on the beach with us.

]]>
2 14268
BOOK OF YEARS https://weatherfactory.biz/book-of-years/ https://weatherfactory.biz/book-of-years/#comments Sat, 17 Aug 2024 17:23:52 +0000 https://weatherfactory.biz/?p=14179 ONE YEAR AGO TODAY…

On August 17th 2023, just before six o’clock in the evening, nervous glasses of wine in our trembling hands, cats winding demandingly round our trembling ankles, Lottie and I clicked the big green LAUNCH button for BOOK OF HOURS. (I believe we placed both our hands on the mouse.) In the great tradition of software launches everywhere, nothing at all happened.

The BOOK OF HOURS Steam forum went berserk. The Weather Factory subreddit went insane. Our social media accounts were instantly submerged in a battering vortex of good-natured but anguished queries. Meanwhile Lottie and I tried every channel we knew to contact our Steam rep and find out why our game hadn’t launched. (The GOG version had launched on time, but you probably know that the bulk of a small dev’s PC sales usually come through Steam, and that’s where the vortex was centred.)

The thing is – and this is absolutely central to the indie dev experience – all this vortex and berserkness business manifested as me and Lottie sitting in our living room typing quickly and saying things like ‘erk’. There wasn’t even any background music, unless you count the cats complaining about our lack of attention. My job is this: all day I sit in front of a screen in a room with my wife and I type (if I’m on a writing break, I sit somewhere sunnier with nicer coffee and type on my own). Then occasionally I type something different from usual, and that immediately causes tens of thousands of people to play our game, and/or send me emails about how our game isn’t working. Any software developer will be familiar with this. Even when I worked at bigger companies, launches were often anticlimactic. You make a deal of it with bunting and countdowns and sparkling drinks in flimsy plastic cups, and then it goes quiet and someone comes back from the toilet and says ‘oh did we launch?’ But all over the world there is a ripple of change.

The launch was fine in the end. Our Perpetual Edition offer (any and all expansions free if you buy at launch) meant we had to do something a bit non-standard, the non-standard thing gunged up the launch process, and our famously affable Steam rep, though theoretically away at the time, got back in contact to sort it out. We launched, a not quite half an hour late. By then, the degree of desperate enthusiasm showed us that the launch was likely to go okay.

And lo, it was so. BOOK OF HOURS has been the most successful game of both our careers. Not in a dramatic and overwhelming sort of way – what we do is, and will always be, too niche – but it’s sold a little more than Cultist Simulator, which itself sold a little more than SUNLESS SEA, and the Steam review % is much than either of those. This makes sense – if you build a following, and get better at making games, you do a little better each time – but it’s never something you can count on, especially in the fervid rainforest which is game development.

So if you bought a copy – whether you’ve been following us since the early days, or you just stumbled across us last week – then thank you! Without your support, Weather Factory would be a rain-haunted shell. And thanks to your support, we likely have the resources to make a third game… of which more shortly.

 

 

SO THE MOST SUCCESSFUL GAME OF YOUR CAREER IS… THE NICE ONE

Remember the origin story of BOOK OF HOURS? Back in 2019, I was working on the GHOUL and PRIEST expansions for Cultist Simulator.  At that point I’d already been working for two years on this cult-themed body-horror-heavy game where you play a manipulative monomaniac, and both those expansions are particularly gruesome. So in a melancholy moment I tweeted this:

It got a lot more engagement than I’d expected and before we knew it we found we’d sort of announced our next game before we’d known what it was ourselves. But we went ahead and for the first time in my career I made a game which contained no cannibalism nor allied trades. It was a bit of a departure and I’m relieved it worked out so well.

HOURS is not quite a certified horror-free game. You can find manskin parchment if you poke around the house, there were some pretty nasty things going on with the Cucurbit Prison, and of course some of the occult books were written by people who these days would merit their own soberly narrated Netflix documentary. But it’s clearly the kindest game of my career. The tone throughout is eerie rather than grisly, and the worst thing you-as-protagonist can do is ‘forget to feed the cat for a bit’. (Well yes there are the endings where you can unleash theomachic conflict or convince the Sun to start drinking blood again, but that’s all another History.)

I’ve really enjoyed the quieter tone, and it’s been good discipline for me as a writer to work without some of my habitual tools. But I don’t want to leave those tools in the box forever. So Cultist was sour, Hours was sweet, Game Three will be sweet and sour. More on that, as I said, in a bit.

 

 

SO WHAT HAVE YOU BEEN UP TO IN THE YEAR SINCE LAUNCH?

The first few months were post-launch support. BOOK OF HOURS was in better shape coming out of the gate than Cultist Simulator. This was as I hoped – we had a nice long beta period and a shared codebase – but HOURS is quite an intricate machine and there were lots of things that needed tidying up. And we’ve added a lot of stuff too: the crafting helper panel, the zoom-to-cursor feature that I finally got working properly, the order form system, layers and layers of optimisation, all that good stuff. The secret panels in a few rooms of the house that you can find only with a sharp eye or a lucky click. And the feature almost no-one has discovered, where whatever you put in the thirteenth niche will appear in the next game. And the weird sub-feature of that which I think no-one at all has discovered yet.

Oh and the Hush House Advent Calendar, which I put together very hastily because I wanted to do something nice for my Christmas-obsessed wife, and which as a result was a little buggy and in particular contained perhaps the most notorious bug ever to haunt these halls:

(if you’re interested, I did a whole post on the cause of that and of another dozen hauntings, here.)

Anyway since then, it’s been localisation and the GIGANTIC EXPANSION.

 

 

TELL US FUN HORROR STORIES ABOUT LOCALISATION, AK

We’re about to release full Russian and Chinese localisation (they’ve been in beta a few months now), which is – you know Hofstadter’s Law? ‘It always takes longer than you expect, even when you take into account Hofstadter’s Law’. Localisation is always more work than we think. Obviously the translators do the bulk of the work, but some of that work means asking me questions which take, um, considerable attention…

Since Shell is a rather obscure entity, could you please clarify which word should be used here (assuming it is the same Shell in both cases) – should we use the word for a sea-shell or an egg-shell? Or even crab-shell, since the description of Wist malady implies it is related to Carapace Cross? I would like to imply both the casing of an insect and the outer surface of an egg, but if that ambiguity isn’t possible in Russian, ‘insect’ is the preferred implication
What fountain is that? Is it a fountain spring, your regular garden-variety fountain, or a drinking fountain (just kidding on that last one)? A fountain spring. This is the ‘Spring’ referred to in the 1932 letter from Teresa in the hidden papers, which the Long of Noon used to drink from in order to be forgotten. I said ‘fountain’ rather than ‘spring’ only for reasons of prosody 🙂 so translate freely in Russian
Sorry for asking this so late – we have found it’s Greek etymon ‘calypto-‘ (hidden, covered), while calyptra also refers to hoodlike structure in plant. So considering the relationship between the Calyptra and the Chancel, whether we should translate it into a botanical term, or shouldn’t do so?

By the way, we temporarily translate it as ‘根冠’, ‘root cap’. We try to make it sounds like ‘root and cap’, and the description of Tree’s flowers used ‘lies heavy’, so we guess root or underground may be a part of Calyptra’s imago.

The Russian translators just asked about this and here was my answer:

”’Calyptra’ is from the Greek meaning ‘covering’ or ‘veil’, particularly a woman’s veil; I think I also referenced the botanical term which derives from that. I imagine the moth genus has the same etymology. Some authorities in the game use the term to refer to a law or principle that conceals knowledge, others to the entities that enforce that law – there’s a synecdochic effect – and authorities disagree on how the term should be used. The confusion about number, and about whether an article should be used, reflects this.’

I think a botanical term is the best approximation. But can you give me a quick summary of how you’re translating Chancel and also Haustorium? these are all similar co-opted terms and there is probably a useful parallel in approach somewhere.

(I assume in Chinese there won’t be the same problem of deciding number / capitalisation!)

‘Ivory’ usually has two meanings:

①the white color of bleached bones
②a variety of dentin of elephants and walruses

In BoH there seems to have three kinds of Ivory: the Grail’s Name (we have a special translation for it), for the Ivory Dove and angthing connect with him(like the Obliviate), and the others(like Silent Typewriter). On the whole we translate the second kind as ①, and the third as ②. If the above details are correct, how should we translate ‘the ivory towers’ and ‘Carapace-spires of horn and ivory’ in endings? ①, for it happens in Port Noon, or ②, for it’s connection with horn?

I think the simplest answer is (2). More details:

‘Ivory tower’ is a specific and widely recognised idiom: https://en.wikipedia.org/wiki/Ivory_tower

‘Horn and ivory’ is a specific reference https://en.wikipedia.org/wiki/Gates_of_horn_and_ivory that players have recognised elsewhere – the White Door and the Stag Door in the Mansus can be interpreted as an ivory gate and a horn gate.

Now, not all the questions are this complicated, but there are literally hundreds of questions in all, and few were questions you’d want to answer before a second cup of coffee. My hat is off to Dove Archive and Riotloc (our Chinese and Russian translators respectively) for the intense and sophisticated effort they put into navigating the labyrinth of lore.

And then there’s the technical and the UI side: the problems of presenting Chinese characters in a way that works with the logo on the menu screen, the many Russian texts that tend to be longer than English labels and creep over the edges of things, the dozens of items I accidentally hardcoded and had to rip out and dynami…fy..icise, the week Lottie spent just putting together book covers for Russian and Chinese characters, and the Gordian mare that resulted from keeping card ordering rules semi-consistent across all three languages…

We’re tidying up now, finally. Japanese should be along later; depending on all the usual boring business reasons we’ll make a decision on what other languages to localise into; and we do plan to release Steam Workshop / localisation modding support for people to do their own translations.

 

 

OOH, MODDING?

Don’t get excited. My answer on game modding support remains ‘maybe, someday, but not a priority right now.’ But we do want to offer, specifically, modding support for languages, so that will be along in a while.

 

 

WHAT ABOUT THAT EXPANSION?

Okay, now we’re talking. HOUSE OF LIGHT, the expansion I’ve been working on since the beginning of the year, is nearly out. It’s an absolute chonker. Here are the headline features:

FOOD: Combine Sustenance and Cooking Ingredients at the three Kitchen workstations to create dozens of new dishes. You’ll need Kitchenware items to find all the recipes.

WRITING-CASE: You’ll receive this at the end of the first Spring season after you’ve replied to St Rhonwen. You’ll be able to use the calling-cards left by satisfied visitors to invite those visitors back to the House.

SALONS: Place food and drink in one of the six Salon rooms, and then use the bell to begin a Salon. Do it right and you’ll be rewarded with sparkling conversation… and lessons.

MANUSCRIPTS: Use Paper, Ink, and a Skill to write a Manuscript based on that skills, and satisfy your Visitors’ needs for more specific knowledge. Lessons from Salons will help you improve those Skills and write more useful Manuscripts.

FURTHER STORIES: Once you’ve completed an Incident, follow it up in the Tree of Wisdoms. Visitors will need more specific help here – perhaps a book on a specific topic, or a specific book.

THE INSTITUTE: Look for the lighthouse, out at sea. When your Visitors are ready, use it to establish the true heirs to the Curia of the Isle, unlocking a new kind of ending.

The Salons, Further Stories and Institute are, as a one-time lawyer of mine would say, ‘compendious’; and honestly even the Food absorbed a frankly insane larder-load of effort. So there’s more content (and new art) in HOUSE OF LIGHT than in all the Cultist Simulator expansions put together.

Because it’s such an absolute beast, and because I’ve now been working on BOOK OF HOURS, on and off, for five years, there won’t be another expansion any time soon. I think we will probably go back and do at least one more (working name HOUSE OF HUES) but if so it’ll be after a break. And when I say ‘break’, I mean a few months of pre-production on Game Three.

 

 

OBVIOUSLY YOU CAN’T TELL US ABOUT GAME THREE.

Reverse psychology huh. Well you got me. Here’s a little.

      • Three will be set in the Secret Histories world again. There are clues about it in the Lighthouse Institute endings in HOUSE OF LIGHT.
      • It is unmistakably the most ambitious thing Lottie and I have yet done. It’s also the most traditional thing we’ve done, although it’s really not very traditional.
      • It’s something that many players, over many years, have vocally hoped for.
      • At least two characters in Three are among the most beloved, or most provoking, fan favourites.
      • At least two other characters in Three are fervently discussed Secret Histories characters who have made at most fleeting in-game appearances. One of those characters is located in the first person in Three.
      • The working title of Game Three is the name of a beloved book from the Secret Histories.
      • It contains at least one carnival.

Once we’re through the support aftermath of localisation and HOUSE OF LIGHT, we’ll begin pre-production: the process of answering questions like ‘what will this look like’, ‘will it actually work’ and ‘do we have enough money to make it’. And when we come out of the other end of that, we’ll have more to tell you.

 

]]>
9 14179
The Ivory Dawn https://weatherfactory.biz/the-ivory-dawn/ https://weatherfactory.biz/the-ivory-dawn/#comments Fri, 28 Jun 2024 13:22:09 +0000 https://weatherfactory.biz/?p=14050 “Lucia the Eyeless will parley with the Chandler. Perhaps she’ll alter her loyalties; perhaps the Chandler will free poor Ghirbi…”

 

For no particular reason, I’ve been reading about the punk and post-punk scene in Leeds in the late 70s. The nascent legends and the stillborn ones; the rumours, the quibbles, the descendant anecdote (did one of the members of goth band YOU really work in the mortuary of Leeds General Infirmary? Or did he, as Mark Andrews reports in Paint My Name In Black And Gold, actually work in the haematology department? which one would be goth-er?); the sense that one had to have been there and in many cases the relief that one wasn’t – it reminds me of the ceremonial magic scene in London in the late nineteenth century, with Mathers and Waite and Crowley et al. There are differences. The Hermetic Order of the Golden Dawn and its splinter satellites favoured hashish over amphetamines. The F Club in Leeds had much stickier carpets than the Horus Temple in Bradford. But there is the same sense of giant egos and flawed but considerable talents clashing like stags (funnily enough, it’s mostly men) over projects that most of the world has no interest in.

And of course the turn-of-the-century occult context in Britain was part of the inspiration for Cultist Simulator. You can see it in the way Coseley and Hersault fell out over creative differences, in Galmier’s origin story working a day job in Camden Lock, and of course with My Deeds, My Powers, My Achievements and the Injustices Perpetrated Against Me. (You know Crowley got so petty about Arthur Waite, as in the Rider-Waite deck, so much that the antagonist in Moonchild was called ‘Arthwaite’?)

It’s less of an inspiration for BOOK OF HOURS. Partly this is because it’s just a nicer game, and most of the people who turn up at Hush House are people you might want to spend time with, so the feuds are less vicious. Partly it’s because mythology naturally extends upwards and outwards, and that tends to mean characters get more powerful and deeds get grander. But most of it still happens off-stage; which is the whole point about the Brancrug and the Librarian, that you’re the hermit in the forest and not the adventurer. Some of it is (in the HOUSE OF LIGHT Further Visitor Stories) pretty significant offstage events. The sabotage of a synthetic Name; the seduction of St Lucia the Eyeless; the dread, epic, Mansus-rocking scheme that Douglas calls the ‘Wangle’; these still manifest mostly through people coming to your house and asking you politely if they can borrow a book. Although sometimes deciding who you’ll lend the book to can determine what gets blowed up, in at least one case which book you lend might determine who betrays what, and now and then your decisions might haunt the House. Like maybe if you let magic bees move in under your stairs.

Lottie interjecting at this point. Did someone mention Further Visitor Stories? We’re trying something new in the upcoming expansion, incorporating a more ‘direct’ way of reading and advancing Advanced Visitor Stories (new UI!) and a visual representation of where each story is on your Wisdom Tree. People who buy HOUSE OF LIGHT – or the lucky so-and-sos who have Perpetual Edition and get it automatically for free – will notice some dark, delicious additions to their Wisdom Tree. Each one represents a different visitor story, and is placed somewhere appropriate on this occult map: the Affair of the Friar’s Tapestry, for instance, sits between Bosk and Skolekosophy, whereas you’ll find the Unfinished Lark between Horomachistry and Ithastry. Once you’ve finished a story from the base game, you’ll unlock a starry constellation which you can interact with to take that story further through HOUSE OF LIGHT, turning your Wisdom Tree over the course of the expansion into an arcane narrative star-chart.

Here’s a mock-up of the effect, along with some of the transitional states:

 

 

 

The inspiration is all very beautiful here – zodiac and astrology come to mind – but then of course HOUSE OF LIGHT also introduces you to this guy:

 

 

His name is POOR WISP and he will absolutely steal your hearts. Especially when you hear what sound he makes in-game… OK, so he might be a bit Worm-y. Nothing a good vet can’t fix! Probably! If any of you take him to the Foundry (AK has inexplicably made this an option) I will know and so will the gods. “The wisp begins to wriggle, pulling away from the heat, mewing like a broken-winged gull…”

I’m sorry. There must be something in my eye. Next week we should have new stock of the Tarot of the Hours in the shop, a second Weather Forecast, and if it so pleases the Flowermaker, I might even receive my final test deck of the Lucid Tarot. More intel as we receive it. Now go hug a Wisp.

]]>
1 14050
The Long and the Devil https://weatherfactory.biz/the-long-and-the-devil/ https://weatherfactory.biz/the-long-and-the-devil/#comments Fri, 07 Jun 2024 09:41:17 +0000 https://weatherfactory.biz/?p=14011 WARNING: This post contains the kind of technical detail you either like or don’t… but a lot of folk tell us they find these inside glimpses interesting.

“I am not sure whether the game is still being supported,” said a recent help ticket about Cultist Simulator. It is, and in fact we keep Chelnoque (who also helped with BOOK OF HOURS code) on retainer specifically to fix issues with CS. After six years it’s pretty stable… but that sometimes means that where bugs still exist, they’re weirdFortunately Chel is a dogged pursuer. Here’s his recent after-action report on one particularly stubborn blemish, as a guest post.

==

You may remember a CS issue that still gets reported occasionally, with followers losing follower aspect in Apostles after being injured by an enemy Long – I was finally able to track it down (almost two years since the first report). The root cause for this one is localization (of course it is), so might be somewhat relevant for BoH.

tl;dr version (spoils some revelations): if you have more than 1 mutation in an internal recipe, any loc will break it unless you apply my fix||

Actual repro steps turned out to be simple – on any language other than English, the recipe long.executestrategy.injurefollower.defencefailed doesn’t mutate follower_wound correctly. (wanted to brag that by now I am able to write this recipe’s id by memory but apparenty I still can’t)

Normally, it does two mutations – follower_wound: 1follower: -1. But with loc, follower_wound mutation id gets replaced with follower in this specific recipe. Why?

Mutations property is an array. UniqueIdBuilder, when making unique ids  (which, in turn, are responsible for making associations between core and loc content) doesn’t care whether something is in array, and gives sub-ids like mutations.filter – as if “filter” was mutation’s own property, but, of course, it’s a sub-property of a mutation object that mutations array contains. So both mutations’ filters in this recipe had an id like (simplified) >long.executestrategy.injurefollower.defencefailed.mutations.filter, making them essentially the same thing as far as locs are concerned.

But, “Chelnoque”, you will say (more eloquently probs), “Chelnoque, I distinctively remember having more than one mutation in other recipes too. Why don’t they bug out? And why only in localizations? And mutations isn’t a localizable property, how come loc even affects it?”

“Why only in localizations” is fairly easy to answer. Unique id plays no role in core content load as the loaded data there is stored in a list, while loc stores all data in a dict (so it can be later found and applied to loaded core data) by unique id. Thus, same unique ids overwrite each other.

But why only this specific recipe? Well, because it’s internal. The only internal recipe in the game that uses mutations.
Why it is important that it’s internal?
In short, “because localizable sub-entities are localized without a regard to their own localizable properties”.

For example, recipes have slots. Slots have localizable properties – label, description. But recipes don’t care about that. If there’s a slot defined in a loc, all of its properties will be seen as eligible for localization. Why? Giving the floor back to AK, in comments:

//Note: this doesn’t work quite in the way I intended it. Label and Description on Slots are marked as Localise, but
//the attribute is inspected only for the top level entity. Because the top level entity also has Label and Description marked as localise,
//the slot properties are added to the localisable keys, but this will break if the names are different. Consider explicitly inspecting subproperty attributes
//to see if they’re also subentities, when loading the data
//note: “explicitly inspecting subproperty attributes” won’t work in cases like “a normal Recipe defined inside “linked”
//LinkedRecipeDetails has no explicit properties like Label/Description, so they can’t be marked as localizable, so they won’t be included here

And:

//There’s another bug here that approximately cancels out the bug described above when scanning for localisable keys.
//We only check the top-level property, not its sub-properties. So if we’re registering loc data for ‘linked’ (localisable=true)
//we also register loc data for all its sub properties – eg both ‘startdescription’ (hurray) and ID (minor perf pain)

Okay, to sum it up.

  • Mutations aren’t localized normally
  • But links are localized, because they may contain internal recipes that may contain text data
  • Being sub-entities, they are localized in their entirety, loader not knowing what properties in them are localizable or not localizable
  • And knowing would do shit all, in fact, because we’re actually defining an entirely different entity here – a recipe, not a link
  • So we have no other way but to localize everything which means we accidentally localize non-text gameplay data which means it needs to be synced across locs
  • And also means the array stuff I started with becomes relevant because it means mutations become mixed in translation of internal recipes
  • But actually NOT EXACTLY, because there are set of clever traps and checks to prevent redundant localization – for example, only string properties’ locs are applied (meaning that, say, slot reqs won’t be localized; and "greedy": true won’t be applied; but "greedy": "true" will be)

BUT !!! filter and mutate properties are strings, which means they are eligible for localization again (and, consecutively, for a mix-up)

Phew. As you can see, the Devil had to work really hard to make this one happen. Loc pipeline is a minefield (not for us – for bugs) and it got passed with a commendable grace.

Well now. The most immediate way to fix that is to just to make id builder to index array entries (which I did), but that still doesn’t address all other stuff that surfaced during this investigation. So

1) I took the liberty of slightly rewriting the loc pipeline so it actually knows and respects sub-entities’ localizable properties. Works like that – instead of a single list with all localizable properties for entity, there’s now a dict; firstly, it contains a string-key equal to the current top-level entity’s tag (“elements”, “recipes”) with an associated list that contains all entity’s localizable properties. Then it contains other keys-property names and their respective localizable properties (ie “slot” -> label, description, “slots” -> label, description). When checking whether a property is localizable or not, it also checks whether it’s a sub-entity property and if it is, it iterates thought all of sub-entities’ properties, checking again, and possibly again, etc.

The dict flattens the nesting – ie if there’s a structure like “entity type A contains a localizable sub-entity B that contains a localizable sub-entity C” all A, B and C will be in the dict on the same level.This theoretically will cause problems in case, say, an entity has a property “slot” and that slot has a property “slot” too, and the latter property contains another type of entity that has different localizable property. Sounds fairly unrealistic, but give it a few years.

2) That still doesn’t solve the awkward thing about links that they don’t have labels/descriptions and thus can’t really be localized this way (unless again we localize them entirely which again opens us to a possibility of all kinds of insidious things). The best I can think of for now is to add unused pseudo-properties to them (like label/description/slots) so they are localized, and then flush them manually into the recipe.

]]>
1 14011
The Big Ones and the Little Ones https://weatherfactory.biz/the-big-ones-and-the-little-ones/ https://weatherfactory.biz/the-big-ones-and-the-little-ones/#comments Fri, 26 Apr 2024 11:52:27 +0000 https://weatherfactory.biz/?p=13928 “Al-Adim and Agdistis are gossipping, quietly, about al-Adim’s patroness. ‘Not a hundred legs,’ says al-Adim, ‘but more than you’d think…'”

If a videogame is a wall, what do you think – is writing more like the bricks, or more like the mortar? My answer would be usually the mortar… though it depends which game. They’re ‘video games’ not ‘letter games’, after all. The writing serves mostly to locate and direct the gameplay or to explain and contextualise the visuals. One of the reasons that writing in games is not always good is that writers in games sometimes forget this and stuff words into a scene like an panicked upholsterer frantically stuffing goose-feathers into a cushion. Or an overenthusiastic bricklayer adding so much mortar that it squelches out of the sides and leaves the bricks awry. Arrive late, leave early and all that.

Of course some games use the writing as a central feature. In these, the writing is more like the bricks. And of course this is so in Weather Factory games – and in most of my work as far back as Fallen London (née Echo Bazaar). But this isn’t a licence to write long! Even in a writing-centric game, you never want the writing to outstay its welcome. As soon as the player stops reading, it becomes pointless. The bigger the bricks in a wall, the crookeder the courses.

The very first design of Fallen London, from way back in 2009

This brings us to salons. I mentioned last time that the Salon feature in HOUSE OF LIGHT needed a lot of lines. The game benefit of Salons is that they generate Lessons – and you have some limited control over what Lessons they generate. (This is why you can only have one Salon a season, cos otherwise it would be tempting to turn Hush House into Party House so you can rush the Tree of Wisdoms.) But the actual reason that Salons are in the game at all is to extend the fantasy of having a huge occult mansion as your playground – here, by enlarging on the experience of running salons for this kaleidoscope of occult demi-monde types. I could have had the game print out “The conversation dwelt on Herbs & Infusions…” (in fact this remains the backup for when you’ve exhausted everything else) but that would have missed the whole point of the experience. Instead I spent a solid two weeks poring over and comparing tome text and the setting notes and the room descriptions, hammering out things like this:

“Stanislav and Arthur argue happily about which herbal tisane tastes the most disgusting, and hence is most useful to speed lingering guests on their way. [Lesson: Herbs & Infusions]”
“Al-Adim describes his memories of Thirza Blake, and her work, in his time as Secretary Nunciant of the House. He is clearly caught between affection and annoyance. Stanislav shakes his head: ‘I wish I had known her. I think we’d have got on.’ [Lesson: Herbs & Infusions]”
“Douglas has been looking into the six-centuries-past death of Abbess Nonna. He’s questioned sources he doesn’t share with Stanislav, and concludes that she was possessed by a Name of the Blackbone and ‘put down’ by her sistren – ‘nasty business, but best thing for it.’ He and Stanislav discuss the herb-mixtures that might have laid her open to that possession. [Lesson: Herbs & Infusions]”

Have you noticed how much longer the third is than the first? That doesn’t make it better. I mean it’s fine, and it’s a fun bit of backstory, but it’s also a bit of a lumpy brick. This is likely because I wrote it at the end of the day when I was tired (Mark Twain: “I didn’t have time to write a short letter, so I wrote a long one instead.”) If you can get as much effect for 29 words as for 64, you’ll want to go for 29. The player will thank you. And I’m conscious that when the Salon actually runs, the player will see several of these in a row, like bricks in a wall.  And it’s no more effort to write that 64 words than the 29 words, if anything the reverse – I mean 64 words imply a little more wear on the old distal phalanges, but the effortful bit is reviewing all the details, keeping the lore straight, and then coming up with ten to fifteen decent ideas an hour, for seven hours a day, for five days a week. (Lottie still chortles at me angrily pouring myself a glass of whisky towards the end of a rough writing day and grumbling ‘how many interesting things can you even say about pumpkin pie?’)

No pumpkin pie anywhere in this salon.

Any writer talking about their job eventually ends up complains about how tough writing is, boo hoo, get a real job then, so let’s bring down a merciful curtain and say: about four hundred Salon lines are written, and I’ll need another couple of hundred at least but how many there are depends on the old triage, deadline, cutting-room biz. And now that the essential work is done, I’m enjoying seating Coquille next to Morgen and having Yvette argue Jung with al-Adim. Some of these characters have been knocking around my head for the a good few years now, but they don’t often get to talk to each other, and you see more and different angles on them when that happens. Even Hokobald has a bit more light and shade now. Not to mention poor Zachary.

Lottie here, just rounding out the end of this post. I’ll leave you with two things: first, a round of Guess That Aspect. Can you work out what they represent in HOUSE OF LIGHT? Obviously my favourite is the SUDDEN FISH, becuase I am yin to AK’s yang, and where he drinks whisky while morosely contemplating the nature of pie, I am trying to sneak anarchic Pokémon into his very srs game.

More significantly, we’re finally ready to tell you when all this food, fraternity and occult demimondering will come out. HOUSE OF LIGHT will release on Steam and GOG on…

 

Thursday 26th September 2024

 

Wishlist it and mark your calendars! We’ll be running a closed beta for it ahead of time – more on that in the next few weeks, for those interested in helping test it out – and we’ll announce price points and more info as we get closer to launch. It’ll be free to anyone with Perpetual Edition (thanks again, early adopters!), and we can’t wait for you to get stuck in, like Hokobald into aglaophotis soufflé.

While you’re waiting, we’ll also be releasing full translations of BOOK OF HOURS into Simplified Chinese and Russian on Thursday 29th August (Japanese TBC), and we’ll even have some smol Cultist Simulator news this year for you all too. Dream furiously, friend. The Lighthouse awaits…

 

]]>
1 13928
What will you do with Thirza’s Knife? https://weatherfactory.biz/what-will-you-do-with-thirzas-knife/ https://weatherfactory.biz/what-will-you-do-with-thirzas-knife/#comments Thu, 28 Mar 2024 14:14:11 +0000 https://weatherfactory.biz/?p=13877 Spoilers ahead. Skip to the food pictures if you don’t want spoilers…

HOUSE OF LIGHT is a good-sized expansion with an unusual congeries of different features, which I’ve been assiduously altering from a congeries into a constellation, and I’ll talk about that, but UP FRONT let me say that absolutely nothing here is 100% confirmed or promised, everything may change up until release day, and if I get any grouchy emails complaining there are ‘only’ seventy cooking recipes then I’ll… well I’ll sigh, mark them spam and get on with my day. It’s not much of a threat. [edit: there were just under a hundred in the end]

The foot bone’s connected to the leg bone…

I really wanted cooking in the launch version of BOOK OF HOURS, but it was one of the half-dozen things that didn’t make the cut (a very casual way of describing the late-development triage process, which fails to evoke all the weeping forlornly at spreadsheets and bank statements). This makes it hard to connect meaningfully to the skill system. The risk with ancillary systems added later is that they can be disconnected from anything meaningful, so they just roll around under the surface of the game like one of those horrible oil globules under a steroid user’s skin.

Fortunately we have a natural use for them: salons! Which is to say, picnics, elevenses, supper, etc, where you invite visitors to chat about the invisible arts. Of course that basic outline immediately poses half a dozen questions, each of which has a couple of misleading answers before you get to a workable one, and then where the workable ones create further questions.

The leg bone’s connected to the knee bone…

For example: how  many slots do you need in a Salon verb? Ooh probably about ten, we need to revamp the verb window no that becomes wildly impractical, so instead let’s allow the Salon to respond to food placed in the room. This feels much more immersive for the Librarian, but also means reworking (a) some quite central code and (b) some of the room art – all those neatly placed chairs on the viewer side of the table made it impossible to arrange food on the table. (When I was testing the refectory I had to stack food on the mantelpiece.)

Okay then, how do food Aspects tie into the Salon process? Obviously if you want a good conversation about Resurgences & Emergences you stack the salon with as many Grail and Moth dishes this doesn’t work because much of the reason for the slot system back as far as Cultist was to make it impossible just to stack up twenty identical objects to power through an Aspect requirement. And we don’t want people maxing out Grail numbers by filling the room with cake:

CAKE SPAM
This is no longer a viable strategy.

So currently, instead, individual guests have some basic dietary requirements – usually based on their traditional interests (Arthur wants a meal with at least one Lantern-aspected dish) but with some variations (al-Adim doesn’t drink, Yvette isn’t fussy). This immediately throws up some silly preferences (Dagmar won’t eat much besides Aglaophotis Soufflé, Agdistis will eat basically anything because most foods contain Heart) which will entail a final brow-furrowed tuning session and probably some post-beta tweaks, but much of which will stand because it’s basically a game and because the alternative – hand-assigning a hundred-plus food preferences to twenty-plus guests with no particular mnemonic structure – is no fun for anyone, least of all me.

So you set up your Salon in one of the five or six rooms where you can hold it (it’s nice to make more use of the Hall of Voices), you invite your guests and.. wait invite guests? Visitors show up once a season. We need to do something about that, too. So in HOUSE OF LIGHT (and this feature may migrate back to the vanilla game) you can get someone’s address once you’ve helped them out at least once (though Hokobald, paranoid as ever, will basically only give you the general location of a manhole behind a pub where he might sometimes check for correspondence). You can then write ’em an invite, send it via the Postmistress, and they turn up. If you like you can write a number of invitations in advance for your big do. Or you can actually summon them so you can push through the Visitor stories to get to the new late-game Visitor Further Stories (all the systems connect! more on this anon).

And this brings us to the winnowing phase of design, after answering a lot of these questions:

al-Adim travels a lot, do we worry about him turning up after sixty seconds while Yvette who lives in London also turns up after sixty seconds? No. It adds nothing and it makes people think too hard about exactly where everyone is; anyway a lot of our visitors have Uncanny Means of travelling. (Travelling at Night, even.)

What if you keep spamming invitations? do people stop turning up? No. This would be hassle to code, hassle to signal, and would punish people who accidentally invite the wrong guests. There is a rationale (‘when the Librarian asks, the invisible world listens’) and there is a nod to the requirement to put some effort into invitations (there’s a low-ish Aspect requirement that you can satisfy with Soul cards and the right ink, and of course Hokobald will only turn up if he gets an invitation written in Orpiment Exultant). But as with the order forms there is a hazy line between making the invitations feel like some business, so you’re not just clicking buttons on a spreadsheet, and making players jump through hoops – a line that for some people we’re already on the wrong side of.

Do you get unique Salon responses from guests for relevant food and drink? Now we’re really in the meat of it (olol). I would like visitors to have unique lines because other visitors are present. I would like people to comment on the wine. I would like people to comment on paintings hanging in the room. I would like people to have conversations that reference ongoing stories. But that right there is a requirement for – well the maths depends on how you work it, but we can easily get up to ten or twenty thousand unique lines. Or a madlibs approach like the CK3 feast system – which is fine for what it is, I like CK3, but it’s a lot of work and it’s the opposite of the handcrafted Hush House feel. And we’re not even at the headline feature for HOUSE OF LIGHT story content – the Further Stories for Visitors / Lighthouse Institute stuff – and I’d quite like to get the expansion out this year. So the answer is ‘some much smaller subset of some of the above’.

I haven’t even talked about how the cooking system works. Or Thirza’s Knife. OK so briefly: making food is much more like a traditional crafting system, though you get a little bit of potential input from Spices & Savours. Milk plus flour with a mixing bowl (CAKE TIME) is dough, dough plus eggs is cake batter, cake batter plus honey is Cornish Honey Cake (never, never to be confused with Devonshire Honey Cake). Some of the recipes require knives. We don’t actually have a kitchen knife in the game, so if you want to chop onions you might need to bring down Sebastian’s swords from the Hall of Division. Or find Thirza’s Knife, which has probably never been used to cut up anything lamentable, probably.

The knee bone’s connected to the thigh bone…

Wait AK what are salons for? apart from ‘deciding not to invite Hokobald’? And what’s the difference between elevenses and a picnic? and why can you only hold salons once a season? For that you’ll have to wait until my wife wrestles me back to the blog to write another update. Right now I have aspects to assign to cake.

Did somebody say cake? LB here, and I have been made very hungry over the last week as I drew all the delectably 1930s dainties that AK’s requested so far for HOUSE OF LIGHT. It requires quite a bit of research – what is the history of Pyrex? What the hell is fish ‘Monte Carlo’ style? – but I hope the consistency will really create an unusual, European historical sense of reality and you can all enjoy making prune whip for people you don’t like. The below isn’t exhaustive – I already have a host of new food to draw, from mushrooms on toast to something alarmingly called ‘Walls-of-Ys’ – but you can already pick a pretty nice meal for yourself from what we have!

You can see in the header image of this blog post how rich, joyful and tasty a full spread of food looks, and how much life it adds to Hush House. AK’s mentioned we had to adjust some rooms to facilitate soirées, but the end result can have surprisingly sweet outcomes. The Refectory looks warm and inviting, like a welcome-home banquet for a long-travelled friend – but how suitably melancholy and sweet is a tea-party in winter in the Physic Garden? I feel like Valentine Dewulf would have been much the better for one of these.

In other news of things that hopefully brighten your life, we have another MERCH LAUNCH to announce – our limited edition Hours notebooks, now available in the shop. I tried to make them classy and BOOK OF HOURS-y, and I’m delighted with how they’ve turned out. If you have need of a gently occult notebook in your life – to write your hopes, your dreams, reminders of BoH recipes, etc – these guys are for you.

Finally, we’re moving offices next month so are running a major 40% off sale off almost everything else in the shop (the one other exception is the newly-restocked Wisdom Tree pendants, which I’ve just relisted. People selfishly bought them all, but other people also wanted them and were sad, and we can’t have that). So along with the new notebooks, go nuts on our biggest ever merch sale, and help us save our ancient backs by not having to lug 10,000 Lady Afterwards up some stairs.

]]>
5 13877
TWELVE DISMAYS OF CHRISTMAS https://weatherfactory.biz/twelve-dismays-of-christmas/ https://weatherfactory.biz/twelve-dismays-of-christmas/#respond Fri, 08 Dec 2023 13:00:03 +0000 https://weatherfactory.biz/?p=13517 This post was inspired by an exchange on https://www.reddit.com/r/weatherfactory/ in connection with a particularly memorable bug (of which more shortly)

These aren’t all struggles with the engine. Most of them are struggles with the sunken-footed helioporaceac structure of the codebase (which inherits directly from Cultist, which means there are parts of it that were written in 2016). Or with my own tendency to be distracted and the three-plus jobs I have in a microstudio (I feel the four years it took between full game releases as a personal stain on my honour, but Lottie sometimes reminds me that besides the eventful nature of some of those years, there are two novels worth of text in BoH as well as the actual game). And I can’t emphasise enough how domestic our set-up is on days we’re not in the office. Very likely at least one of these bugs was caused by my kid needing emergency purchases for art homework, or the cats thinking they deserve a second lunch. ANYWAY. Welcome, all ye merry souls, to the TWELVE DISMAYS OF CHRISTMAS.

TWELVE FLYING SCROLLS

I wish I’d thought to take a video of this one, but thanks to M.D. we have this screenshot, lest we forget:

Sometimes when a scroll tried to return to a shelf – perhaps because you’d just read it and clicked Collect – it would decide there wasn’t enough room for it and go somewhere else. If it decided there wasn’t enough room in Shelf B, it would whizz back to Shelf A, but unless you’d opened up some room for it, it would then whizz back to Shelf B again, like a ping-pong ball or a small child darting between alternative cupcakes. It would keep going, as long as you like, dawn and dusk, summer and winter, until you opened up space for it.

Why? A muddle about what size the scroll thought it was, and the methods it used in different circumstances to ask the shelf whether it fit.

I keep a trove of user-provided saves of a heavily populated late-game library, so I can test with real data (and confirm that even very old saves still work. One of these saves is still called CURSE OF THE FLYING SCRO2. Thanks, K.P.

ELEVEN RADIANT WINDOWS

Occasionally I get a fusillade of dismayed bug reports saying ‘everything in the game is just white!’ This screenshot courtesy P.V:

The Glory? Winter? a ferocious freezing fog? A promo for the first content expansion, whose name when revealed will make this look clever?

BOOK OF HOURS uses a great many 2D images. When a machine has to keep loading them individually into memory, the performance impact can add up quickly. So we use a ‘sprite atlas’, one big giant image with lots of smaller ones fitted together jigsaw style, that the machine can load all at once and keep in memory. Occasionally this big image gets borked, and none of the images can be loaded. Sometimes this is a download hiccup and the user can fix it by verifying the download, but Unity also sometimes chokes when I’m building the binaries for the game, specifically for some reason the Mac binaries. A few times I’ve missed this and uploaded a bad Mac build.

(You might wonder why the card images aren’t borked. We don’t keep them in the sprite atlas, because the narrative content system wants to be able to request images on the fly with names based on json. As with a hundred other things, there’s probably a hundred slightly more performant ways to do that, but the entire tech staff of Weather Factory is half of me plus some freelancers sometimes.)

Incidentally the atlas takes a few moments to load, and if it hasn’t loaded by the time we get to the main game screen, you get the white effect again. The quickest way to fix this was to reference the sprite atlas from the quote screen so it starts loading then, and the first small image in the sprite atlas that came to hand was a potted fern from the Violet Chamber, so every time you fire up the game, there’s an invisible plant just under the first quote.

TEN TINY PUGLINGS

The oldies are the goodies. When we launched the demo in February 2023, there were inexplicable tiny pugs scattered round the Atlantic Ocean and the Cornish moors, among other places, because they were half-finished default images for workstations that I thought were invisible and weren’t, and I’d “cleverly” used a very silly default image so that I “definitely” couldn’t miss ’em.

 

I did promise to add a PUG OPTION to the menu if we passed a certain wishlist threshold before launch. We did, so that’s still on my task list. Watch the seas.

NINE CRANIAL TCHOTCHKES

This is the Cranial Tchotchke:

It has the distinction of being the oldest non-book item in the game, because when Lottie was thinking about what other things an occult library might have on its shelves besides books, obviously ‘polished former Librarian frens’ came first to mind, so I had art handy for it when I was prototyping.

This is its close friend, the Glinting Cranial Tchotchke, which contains a small secret revealed by close examination:

But this is what it looked like briefly at the end of August – thanks L.M. for this screenie:

This is the effect you get if an image is missing, but I checked and the image wasn’t missing – it had been there from the beginning – so I didn’t realise right away what the actual problem was. A follow-up report and screenie from P.V. was the clue for an instant House-style diagnostic epiphany – you could now hang the thing on the wall like a painting:

There are more than six hundred items in Hush House – not counting books! –  so I use a spreadsheet to track their associated text and properties, and output it automatically to the .json files that the game uses to store content. (In the days of Cultist Simulator, I did this manually, which is why I try very hard to avoid doing it manually ever since.)

If that last column is blank, the spreadsheet knows to assume the item is a generic ‘thing’. I’d somehow let ‘wallart’ leak into the cell for the Glinting Cranial Tchotchke when I was jiggling things. Not only did this mean you could hang it on the wall, but it meant the game looked in a folder called ‘wallart’ for the image instead of a folder called ‘things’.

You can no longer hang people on the wall in Hush House.

EIGHT MAGIC CHAIR LEGS

You can Consider anything in the House that isn’t nailed down. Often it yields a Memory, sometimes it yields something else tucked down the seat cushions. Occasionally it got more exotic. Bug reporter J.D. during the beta in July 2023:

“I took a lamp from the Reading Room and put it into coNsider with Mettle and when the recipe finished I had a Melodic Chair.”

I checked, and he was right. If you looked too closely at the lamp, it turned into a chair.

Again, this was just a bit of spreadsheet borkage. The Lumpy Melodic Chair, when examined, yielded a treasure and turned into the Melodic Chair. I’d just put the Melodic Chair in the wrong row and instead created the world’s first developmentally metamorphic reading lamp.

SEVEN CREEPY MOMMETS

The enthusiasm generated by this bug has been rivalled only by the PUG REPORTS incident. Time to reveal the truth.

This dapper gent is the first Baron Dewulf, and his bust traditionally lives in a slot on a little table at the bottom of the Grand Ascent.

However, after an innocuous update at the end of November, some players noticed that the slot where Hendrik could be placed had disappeared; in fact, if Hendrik was in there at the time, he had disappeared too:

After another update, Hendrik returned. But he’d brought a friend back with him.

In fact to the mounting alarm of the affected players, wherever he’d gone, he’d clearly been a hit with the locals, and he’d brought a whole fan club back with him (thanks A.H. for the screenshot):

The clue is in the timing of the updates, which both occurred around the beginning of December, when we unleashed our advent calendar,and when Christmas decorations appeared in the Grand Ascent among other places:

I haven’t been able to piece together the precise sequence of events. but it went something like this:

  1. In mid-November I prototyped the code that puts Christmas stuff in the game, and then immediately went on a week-long writing break to do the initial planning for the first BOOK OF HOURS expansion.
  2. I wanted to make sure we had the Christmas stuff live the week before December to work out any remaining kinks ahead of time, so it was a bit of  a hustle when I got back, and Lottie and I had some merge problems getting the art into Unity. I’d been testing the Advent code on Hendrik’s niche, and I let the test settings leak into the live version, so Hendrik’s niche became invisible when it wasn’t December. And it wasn’t, at that point, December.
  3. I almost immediately did another update to fix another issue, and this update (without me even realising it) removed the test settings which had made Hendrik invisible. Unfortunately this code had been live for I think 48 hours, it had made the niche invisible in a number of saves during that time, and now the test setting was gone, there was nothing to make him visible again.
  4. When people reported the Hendrik-still-invisible issue, I got another fix up which made Hendrik’s niche visible in all times and places. All fine, I thought.
  5. Not quite. The test settings had used some of the code which puts things on Timothy’s Christmas tree on specific days. So while the bust niche was invisible for 48 hours, it had also been calling some code which invisibly populated it during that time.
  6. Worse – all this ran into something which wasn’t just a test setting left over, it was an actual bug. The game normally populates a room according to the spec when the room is first opened, and I had to work round that to make Advent presents appear in existing saves (Brancrug Village counts as ‘a room’). The first version of the code, when I was testing, made an Advent present appear every time the game was loaded. I’d already spotted and fixed the bug by the time people reported Hendrik’s disappearance, but meanwhile the bug was quietly doing its thing in the game, and when his niche reappeared, it contained one doll for every time the game had been loaded until the bug was fixed.
  7. So what happened in non-technical terms was this. Because of an error in a summoning technique I’d been practising, the bust disappeared behind the veil of reality. It remained there until I found out that I’d accidentally created a haunting, and used a counter-invocation to bring him back to the world. Unfortunately, a side effect of the spell was to conjure creepy dolls while he was elsewhere, and because the spell was operating without any oversight or intervention, we got a Sorcerer’s Apprentice scenario. I hope that clears everything up.

SIX DAFFY BANCROFTS

Much simpler one. A.K. (no relation) reported just after the game launched:

“Lord Franklin Bancroft seems to have written his diaries in Latin, a language he seems to be unable to understand.” 

There are a couple of dozen visitors in the game, another dozen aspects they might be interested in, and another dozen-plus languages they might speak. So early on I put together a list of who cared about what and what they could care about it in.

You might notice some discrepancies with the information in the game. That’s because this is an old spreadsheet from an earlier phase of design, and I hadn’t set up the automated outputs back then, I just manually typed it into the content files. Later, I considered linking it all up, but the information was in the game already, the sheet was already outdated, it was too much hassle, and the languages they spoke wouldn’t change, right?

When I put together that sheet, it seemed interesting to say that Douglas, being just a copper who’d come up through the ranks, didn’t speak any of these fancy languages. But when I started testing the visitor system, it was inconsistent and mildly annoying that he couldn’t read so many books. So I thought, well, he’s permanently with the Suppression Bureau now, he must have had a decent education; and I got a decent gag about his school scholarship into the game. It’s always fun when character backgrounds expand organically like this.

Unfortunately because my design spreadsheet and actual files were out of date, I just moved around the languages carelessly – I think I had some notional rationale why Franklin spoke Greek but not Latin – and ruined the original cross-checking I’d done against the book list.

For the expansion – and for Game Three – I’m being a lot stricter about connecting everything up round the back. That causes problems too, though, as you’ll see in a moment.

FIVE! LOST! THINGS!

Hahaha wow I had a hell of a time with this one. It went through a couple of different similar iterations while I tried to track it down.

For a little while in September, you could make an object disappear by doing this:

  1. Pick up an object from Room A on one side of the House.
  2. While holding the object, pan (technically ‘truck’ as systemchalk would point out, though he’d be very Canadian about it and wouldn’t want to make a fuss) at least a screen’s width to the other side of the house. Yup, your screen’s width, not anyone else’s.
  3. Drop the object in Room B. Watch it immediately disappear!
  4. Zoom out in panic and see it reappear.

Here’s what this was.

BOOK OF HOURS had some performance troubles at launch. Like most performance troubles, these had many causes, but one of the most significant causes was that, initially, we were rendering lots of hi-res 2D art all the time. Now we only render a lot of the art when you can actually see it on-screen – this is ‘culling’, it’s pretty standard, but unfortunately for boring technical reasons we couldn’t use some of the out-of-the-box approaches Unity provides to implement this. So there’s custom code that tells the game not to bother rendering rooms, or their contents, when you’re not looking at them.

The key phrase here is ‘their contents’. When is something no longer ‘in a room’? When you pick it up? Or when you drop it in another room? Both of those are reasonable natural assumptions, and different bits of the code made those assumptions slightly differently. So as far as one bit of the code was concerned, when you were dragging a vase from Room A, it was still provisionally in Room A, but another bit of the code assumed that it had already left Room A. So if Room A was no longer on screen, because you’d just moved your camera across the house and it had slid off the left-hand edge, then we should cull Room A, and not waste resources displaying the room or the vases which were probably still in there, right? And because the game updated its records when you did a bunch of other things, it only got out of sync in this one specific situation, so it went mostly unnoticed most of the time. And ‘mostly unnoticed most of the time’ is the helliest smell of bugs.

FOUR MISSING SLOTS

This is the nerdiest example in the whole list, so if the last one made you tune out, wait until the next one to tune back in. But people have been very curious about this one. So if you get excited about spreadsheet formulae and naming conventions, stay with me.

Just a couple of weeks ago, all books in the game written in Deep Mandaic became unreadable. Generally to read a book written in one of the nine great languages, you have to provide a Language card, and no Language slot was showing up for these books. Wut?

Every card in the game has an id, like ‘grapes’, and a human-readable label, like ‘Bunch of Grapes’. These are generally very similar but sometimes quite different – for example, most of the furniture art was sliced out of room art by Lottie, and I originally used her temporary names but changed the labels when I was writing copy:

… which nicely why it’s useful to have a stable ID – I didn’t have to go back and change all the config every time we decided it was a ‘Snug Chair’ not a ‘Cosy Chair’.

Lots of ids follow a convention, too. ‘Sky Stories’ has the id ‘s.skystories’ so I know it’s a skill when I’m writing content code. And it’s much easier if they’re consistent with each other, but ‘consistent’ is subjective. ‘s.skystories’? ‘s.sky.stories’? ‘s.sky_stories’? What about ‘Transformations & Liberations’?  What I settled on was that ‘&’ in skill names is replaced with a . and spaces are just removed, which is different from the furniture convention but means I don’t have to look at ‘transformations&liberations’ or convert it to ‘transformationsandliberations’ or anything else ugly. Okay? still with me? a few of us? okay. Break out the good Scotch, Ponsworth, these are the real connoisseurs. San Pellegrino for the teetotallers.

To keep everything 100% consistent, I put a formula on my Skills and Abilities tab that converted the human-readable label into the ID according to a consistent set of rules. So it could never get out of step. Then I output the skills json. All written up, all consistent. Lovely.

Except the language skills were s.vak, s.killasimi, s.fucine… s.deepmandaic. Deep Mandaic was the only one with two words in the name, the inconsistency annoyed me,  and a couple of times I typed it as ‘s.deep.mandaic’ so one day I just changed it to ‘s.mandaic’ everywhere, one big Find-Replace, no problem. This also addressed the plaints of a couple of very consistency-oriented people who thought it felt like a mistake that ‘Deep Mandaic’ was alphabetised under ‘D’ rather than ‘M’ (actually, alpha ordering via ID and otherwise in the game is a whole different story later, but there isn’t enough single malt in Scotland for that one).

Then I realised that I had broken my nice formula-driven consistent naming system. So I went back into the Skills & Abilities tab and manually overwrote it. I was in a hurry. And it was probably fine, probably. So I went back into Skills & Abilities and manually overwrote it rather than adding a distinct override column. Here it is! It’s just one value! What harm can it do? I put it in italics to remind myself! and Excel has a nice helpful Inconsistent Formula notation!

Here a third spreadsheet tab enters the story. (Top up their glasses, Ponsworth, come on man, quick sticks there.) This is the Tomes spreadsheet, a list of all the books in their game and their properties, which is auto-output like most of its kin.

Between you and me, and now we’re a couple of whiskies in, I’m going to confess that Excel is probably my favourite piece of software ever. It’s not a database, it’s not a word processor, but for the sweet spot for a system-oriented but distracted and arbitrary game designer, it’s a gorgeously customisable tool that supports all kinds of bizarre one-off requirements. Some of which come back later to bite me. Like that last column above with its 0 or 1. What’s different about Greek? There’s no Greek skill. All Hush House librarians know Greek. It’s just a bit of flavour that affects visitors. So Greek books don’t need a language slot. So I had a formula that checked whether a language with this name existed in my Skills & Abilities tab. And for this kind of lookup, I usually look up the label, not the ID, because it’s much more human-readable. But in this case I also wanted to output the language ID into the JSON which determined the slot that should go on the book. So I got lazy and I just stripped the spaces out of the human-readable label I found in this column, lowercased it, added an “s.” and wrote it into the json. Because the nice thing about language skills was, the label and ID were always identical if you did that! Vak, “s.vak”, Fucine, “s.fucine”, Deep Mandaic, “s.mandaic”…. ah.

This is where I compounded my first, cardinal, sin with a second, venial, one, for does not the Church of the Unconquerable Sun teach us that there is never only one Cloud to obscure the Light? Instead of changing the logic, I just went through and edited ‘Deep Mandaic’ to ‘mandaic’ throughout the Tomes spreadsheet.

 

FINE ALL FIXED LET’S PUSH WHATEVER URGENT PATCH NEEDS PUSHING.

Months passed.

The game grew more stable under my increasingly calloused hands. I even found some time to pay off a bit of technical debt. I reordered some of that which had been disordered. And so at at some point I did something careless. I can’t remember exactly how or what now. Tidied up ‘mandaic’ to ‘Deep Mandaic’ in the Languages column of the Tomes sheet? autofilled the ID formula down Skills & Abilities? Whatever it was silently broke my innocuous little formula hacks. In a constantly changing spreadsheet with 44 tabs, it’s not hard to lose track now and then.

Then at some later point I ran another output from the spreadsheet, and put it in another build, which I then at some other later point pushed live, immediately erasing all the Deep/Mandaic slots.

A week later I sheepishly came back in fixed it so I could output a non-broken version of the game json.

Finis. Except –

THREE MORE MISSING SLOTS

The following day I was fixing one of the bugs above (Hendrik, I think) and I USED AN OUTDATED VERSION OF THE SPREADSHEET BECAUSE I WAS ON MY LAPTOP AND HADN’T SYNCED EVERYTHING. All the Deep Mandaic slots disappeared, again. I fixed them, again.

F I N I S.

Ponsworth, I think we’re finally done, please fetch the coats and also the hats. Ponsworth? Ponsworth? Somebody wake up Ponsworth, he’s dribbling again.

TWO INPUT DEVICES

Usually, it’s my fault. Occasionally, it’s not my fault. Here’s a standard prefatory response I now send when someone reports mouse control problems.

“(1) I had a similar report from another user a couple of weeks ago… they later followed up and said they had a second input device attached to the machine that they’d forgotten about. so it’s worth checking that :)”

Because occasionally the bug is actually just “someone attached an extra mouse to the computer.”

AND A RAGDOLL IN A BUST NICHE

The week after launch, I had this email from bug reporter M.S. :

“Hello, I found a very important bug in the game: you can’t put your cat on top of the bust pedestal in the grand ascent. Here, I’ll send you a picture of how it should look:”

This is the picture he sent:

I’m happy to report that I fixed this bug in the next patch. And then, much later, I added another feature to the Thirteenth Librarian niche that not many Librarians have yet noticed.

Happy Christmas. May your Januaries be bright and your Februaries tolerable.

]]>
0 13517
“COSELEY” release https://weatherfactory.biz/coseley-release/ https://weatherfactory.biz/coseley-release/#respond Tue, 10 Oct 2023 13:54:08 +0000 https://weatherfactory.biz/?p=13432 (Lovely image above is courtesy of the Lucid Tarot.)

Another big update only two weeks after BANCROFT? Why not. COSELEY is a great big grab bag of quality-of-life improvements, and a couple of new features. I’m not done with QoL yet, but the next update (DAYMARE) is more content-focused. That’s going to be a while away though, because Lottie and I are taking a couple weeks off, because apparently working all the time is in some nebulous way bad for you and you’re supposed to ‘relax’ and have ‘fun’ and all that other human nonsense.

Patch notes, and my glosses, follow!

  • Zoom-to-cursor is back! I’ve reworked it from my eccentric experimental version to be more what people expected, and switched it on by default. You can still turn it off in the options menu if you don’t like it
  • Auto-arrange changes; undo button, separate merge and arrange, variant ordering on reclick
    Keep clicking the arrange button (or pressing Tab) to see the effects
  • It’s now possible to dream on a Memory when night comes, preserving it for the following day
    You can’t do this with Weather, and you can only do it after nightfall
  • Dedicated verb icons for workstations
    Lottie wanted these in to add character – and they’re also pavingthe way for another UI upgrade
  • Added a small feature to make the endgame, and rare scenarios in the midgame, easier (psst it relates to Numa)
    psst psst there’s a way to finish the game when you’re ready without waiting for the right time
  • More performance optimisations! Still ongoing, still experimental
    I’ll keep working on these, but do drop me a mail if you’re still struggling on a machine that’s above minimum spec
  • There’s now a second phonograph in the House *on new saves only* (i.e. if you haven’t opened the Severn Chamber yet in this playthrough). The Governor’s phonograph also now accepts different aspects (run something through it to update)
  • TAKE NOTE! If a Soul card becomes contaminated after this update, it will sometimes be able to pass on the contamination to books
    Expect more from contaminations and maladies later – but I’m feeding these in very cautiously
  • You can now mute copied-text popups (and/or re-enable them in Options)
    Sorry, folks, finally got to it
  • The harp in the Windlit Gallery is a little different (on new saves only)
  • The Librarian can now burn correspondence
    Right now that means ‘spare reminder from St Rhonwens isn’t wirh you forever’ but it may be more relevant in future updates
  • You’ll no longer get two simultaneous Numa incidents when playing on 6x speed
    I was hunting this one for a while – thanks to D.K. for giving me the final piece in the puzzle via their bug report
  • One candelabrum moved in the nave of St Brandan’s so you get a little more space in the window-shelf
    We’d have done this a coupla weeks ago, but the other half of Weather Factory, who does the art, just put in a couple of fifty-hour weeks to get the Lucid Tarot finished. WELL DONE LOTTIE. Same with the art bits below
  • Entrance hall chairs now show in front of shelved objects
  • Added a visible path down from Earl Brian’s field to make the cliff-link clearer
  • The Mirrors in the Hall of Division now accept Grail (as usual, you’ll need to run a recipe through them to see this, if you’re playing an existing save)
    This is more thematically on-point; also there was a single solitary Soul evolution where you could still lock yourself out of an upgrade, and this resolves it. Thanks to those who reported this!
  • You’ll only see the Wisdom Tree tip once (finally got around to this)
  • Swimming in the sea is now possible, though not always wise, and a swimmer should ensure they know where their towel is; AND examining Fabric no longer destroys it; AND clean fresh linen now has restorative properties
    All these three points are related. I wanted to stop destroying Fabric, as part of upcoming feature tweaks for both analysis and Mommet work. So I wanted to give towels and linen something else to do. (previously they were one-shot Memory generators – they had just looked nice in the room art, and it’s often hard to find a use for these objects). PS people should stop trying to give their dirty laundry to Mrs Kille, people, she’s a midwife not a laundress
  • Added an extra quarter-second delay to the room preview window
    Still too intrusive? now too slow? needs to be configurable? we’ll see, it’s all a grand adventure
  • Added a Revert button to the crafting helper panel, which returns the window to the first available recipe
  • Added a missing connection from Gullscry Loggia to Gaol Bridge
  • Lucid Tarot cards in ending screens display at a better ratio
    I didn’t even notice, and I don’t know if anyone else did, but it was upsetting my wife to see her art squashed
  • Fixed some Ouranoscopy hint and recipe issues, and added a new recipe
  • Fixed some Stone Stories hint and recipe issues, and added a new recipe
    There’ll be more of this sort of thing
  • Options in crafting helper panel are slightly easier to click
  • Fixed an irritation where mousing over Period aspect could bring up an irrelevant unlock preview tooltip
  • Father Schaller now admits that he reads Sanskrit
    Expect him and other visitors to show more of an interest in some other relevant books in the future
  • Westcott Room scroll cubbies now work
  • Fixed an issue where Memories found as random gathers would sometimes only appear once (with thanks to M.W.)
  • Wormwood Dream is persistent
  • Crafting is no longer possible in bed. It was rarely useful, usually confusing, always a health and safety issue
    Are there other things coming that you can do in bed? no wash your mind out, not that. But one of the potential expansions has to do do with dreaming
  • A terminological issue re: scientific instrumentation has been addressed.
    Can’t believe I forgot what an astrolable looked like
  • Added a missing sound for some small things being dropped
    I only noticed this because I was tuning the volume of the spookier sounds in the caves below the House
  • Fixed a problem where detail messages weren’t showing on consumable objects when they were Considered
  • Clearer slot labelling on Skills
    So fewer people will get to hour six and only then realise you don’t need to use up Lessons for every slot?
  • Saves and Backups button doesn’t suffer from desynced text
  • Detail images for very small objects no longer pixelate
    Surprisingly fiddly to fix, but glasses of water are now much charming-er
]]>
0 13432
Horizon-Sight https://weatherfactory.biz/horizon-sight/ https://weatherfactory.biz/horizon-sight/#comments Tue, 19 Sep 2023 12:54:28 +0000 https://weatherfactory.biz/?p=13402 As you may have noticed from our Steam updates, we’ve been updating BOOK OF HOURS with loads of fixes and improvements since launch (well, AK has. I’ve been fidaddling about with ART like the hornswoggling dilettante that I am. More on that below). We’ve got some big QoL features nearly ready to go on the beta branch for the game. But first of all, here’s one much-requested change that has made it into the main game. Over to AK:

NEXT COMPLETED WORKSTATION WATCHER/BUTTON. This function was in the game from the beginning, but you had to hammer the BACKSPACE key, and the implementation was a little rough. It’s much easier to keep track of what you’ve done and where you’ve done it, now.

Now the features that are almost ready to come out of the oven (or you can try them now on the beta branch on GOG or Steam):

LESS CLICKY ROOM NAVIGATION. Mouse over a locked room to get a preview of its unlock requirements – which will also highlight any relevant assistants you have ready to go…

…and when you click to get the room unlock window, I’ve tidied it up so all the details are in one place.

SAVE-INDEPENDENT ENDINGS. BOOK OF HOURS is a long game – I didn’t especially plan for people to replay it, at least not without waiting for expansions and updates. More – the reason there are so many endings is that I wanted people to play through once and get a distinctive ending that most others would never see. I didn’t really particularly think people would want to save-scum and try out different endings. So endings were locked to a particular save file.

But almost everyone else felt differently! In hindsight it seems obvious that people would want to fossick around and experience at least a couple of endings, without starting a whole new save. (This is the peril of making the games that you want to play yourself.) So I’ve fixed it; all endings are stored save-independently and you can build up a library of logged histories from multiple saves. When the update hits, it’ll pick up any endings in your current save and add them to the store.

THE CRAFTING HELPER PANEL. Used to be that you could lock yourself out of lower-level crafting recipes if you increased your skills too much. This was usually not a problem, because you could usually just leave a relevant ingredient out and not activate the higher-level recipe, but it was much more annoying than I’d realised. This helps with that, but it also makes it much easier to explore the crafting system… and it’s a starting-point for further crafting improvements in this and future games.

The response in beta was enthusiastic, but a few harder-core folks were worried that it might automate away some of the fun of exploration. Banish those worries. (1) it doesn’t show all the recipes in the game, just the ones most relevant to the crafting system (though I’ll probably enable it for Determinations and Histories, too) and (2) you can just leave it permanently hidden if you prefer.

SCREENSHOT MODE. This has caused an unexpected degree of excitement…

.. AND THIS. A very small number of people are very enthusiastic about getting rid of the stray penny in their Sundries tray. There will almost certainly be more uses for pennies in the future, but

 

Back to Lottie’s hornswoggling art, also known the long-awaited Lucid Tarot. I announced this aaages ago before BOOK OF HOURS evolved into the all-encompassing Fabergé egg it became and I had more free time to focus on merch. Let this be a humbling lesson to me to remember that Even If You Are Excited About Something It’s Not Necessarily The Best Time To Tell People About It, and the other sobering truth, There Are Only So Many Hours In The Day. I feel guilty about not having completed it yet so I’m trying my hardest to get the Lucid Tarot out on our Etsy shop by the end of the year – ideally in time for people to order as Christmas presents! Here are a few WIPs to give you a sense of the minor arcana, which I’ve never shared before:

Anyone want to guess who the Knights, Queens and Kings of each suit are? I shared this already on my Twitter, so here’s Aunt Mopsy to get you started:

UP NEXT…
  1. Another big performance pass. That’s AK’s priority for this week.
  2. Nuisances pass. Why are Pale Mommets so hard to make? Are some skill evolutions technically possible but practically impossible? why is bookshelf x in room y 10 pixels shorter than it should be? etc. etc. etc.
  3. Another QoL pass. AK hasn’t forgotten he said he’d add notes; and he really wants to sort out that zoom-to-cursor function.
  4. New Free Content and/or Paid Expansions. By Christmas, we’ll be sorting out what content goes free into the main game and what goes into our first paid expansion (though these are free to anyone with Perpetual Edition, too).
  5. Soundtrack. Everyone seems to like it (everyone has EARS) so we’re getting this out ASAP. Please note that because of royalty splits with our composer, and because it’s not a content expansion, this isn’t included for free in Perpetual Edition like almost everything else. But it will be extremely reasonably priced!
  6. Localisation. We’re starting with Simplified Chinese and will announce more languages as they’re official.

May Hush House keep you warm as the season turns to autumn. More news soon!

]]>
9 13402
‘Though Much is Taken, Much Abides’ https://weatherfactory.biz/though-much-is-taken-much-abides/ https://weatherfactory.biz/though-much-is-taken-much-abides/#comments Sun, 20 Aug 2023 11:54:35 +0000 https://weatherfactory.biz/?p=13388 Well that’s nice. We thought BoH would do pretty well, but we emphatically didn’t expect this:

The launch went really, really well. Lottie and I teared up more than once, basically the max number of times Brits are allowed to show emotion and a bit over. Thank you, everyone.

The downside of the launch going really well is that I’ve answered something like a hundred help tickets since Thursday night and I have another 135 in my inbox right now! So I’m taking today off but next week I’ll be back on the patch train. Our regular freelancer, Chelnoque, is pitching in, and we’re getting a specialist in from the Knights of Unity for optimisation and obscure technical issues (‘why is my mouse cursor insanely tiny on this Linux distro’) .

The next month is going to be all about quality of life improvements and bug fixes – after that, a holiday – after that, we’ll start looking at content updates and, ultimately, localisation. But it’s QoL first. We don’t want to polish away the intentionally eccentric design decisions that some people have fallen in love with… but we don’t want to annoy people needlessly, either. There’s almost always a smart third way.

We probably won’t add an in-game recipe book… but we probably will add in-game note-taking as room notes or bookshelf plaques.

We probably won’t add fast-travel to Brancrug, because I want the House to feel remote… but we definitely will tweak and improve ways to get around the map and reduce wear on the wrist.

We might add mouseover to view on slots… and we definitely will find ways to make the game less ‘clicky’.

And so on and so on and so on and so on. We’re nowhere near done with this game: we’re going to keep on improving and expanding it. Thank you to everyone who’s left a review. As I said elsewhere, I enjoy reading the rave reviews much more. But the nuanced positive reviews, and even the negative ones, are also the designer’s meat and drink, and we’re going to use them to polish this game until you can see your face in it.

EDIT: yes polish the game with meat AND WHAT

 

]]>
18 13388
The Land’s Voice https://weatherfactory.biz/the-lands-voice/ https://weatherfactory.biz/the-lands-voice/#comments Fri, 16 Jun 2023 09:29:46 +0000 https://weatherfactory.biz/?p=13173 “After the red leaf and the gold have gone,
Brought down by the wind, then by hammering rain…
…I speak to you now with the land’s voice,
It is the cold, wild land that says to you
A knowledge glimmers in the sleep of things:
The old hills hunch before the north wind blows.”

— Howard Nemerov, ‘A Spell Before Winter’ (1962)

By the time you read this I’ll be in Dungeness, a wonderfully desolate shingle headland in Kent where I go for writing breaks, sometimes (although inaccurately) called ‘Britain’s only desert’. Dungeness features an army of gulls, three lighthouses, two defunct nuclear power stations, a snack shack, a lot of sky and absolutely zero distractions. I’ll work happy twelve hour days, subsist on cornichons and rainwater and a half a bottle of emergency late night Eagle Rare, come back with the last major writing tasks complete. These are the visitor stories – The Affair of the God in the Wood, The Affair of the Threshold Revolt – and the endings – That Old Lost Music, A Final Understanding, The Sun’s Secret.

I reserve writing breaks for the difficult, deep dive design & writing work where I need to splash about in spreadsheets and cover the dining room table with index cards. The visitor stories and game endings – which interweave references with each other, with the Librarian origins, and with the deep lore of Hush House, the Secret Histories, pentimenti and numina – are some of the most allusive and self-consciously literary work in the game. They need to be compelling and satisfying for the casual players and they need to reward years of analysis and argumentation by the most dedicated players. So they merit a whole-ass not a half-ass approach.

Fig. 1 — A ‘whole-ass’ approach

And after that, the hay is in the barn. We’ll have a release candidate that we could go with if we absolutely had to, if we didn’t mind the launch being a bit of a shambles. We’ve still got lots of QoL work, bug fixes, audio tuning, performance optimisation and balancing to do so that it won’t be a shambles – and some features it would be nice to add before rather than after launch (‘Mr Kille sends you marrows if you’re nice to him’; ‘Hokobald steals his own book’) – but even if I fall into a deep coma on June 17th, we should still be OK as long as I wake up on August 17th.

Three things I want to say, just in case I do fall into a deep coma!

First: a big thank you to everyone who’s participated in the beta and sent us helpful feedback and bug reports. All I can offer you is the assurance that it’s made a serious and significant difference to the final quality of the game you’ll end up playing: but I can offer you that assurance. We’ve kept a lot of final detail back, partly for canny reasons but partly with beta testers in mind. Everyone was keen to see everything, and I know how tempting it can be to spoil yourself on one too many details. (There will be one last beta phase, but even that will keep some juicy stuff back for launch.)

Second: a big thank you to Lottie, who is going to be embarrassed now she has to put this into a blog post. There’s been a real creative dialogue on this one between writing and art, and as a result, Brancrug and Hush House and the moors above, with all their mists and histories, feel wistfully and transcendently real. I half-forget sometimes that they can’t actually be physically visited.

But we’ll be making the place as visitable as we can very soon now. Just a few more weeks to oil the hinges, clean the bird droppings off the windows, lay fires in the hearths. We wanted Hush House to feel like a home to anyone who’s ever been momentarily tempted by the idea of life as a country librarian or a lighthouse-keeper. If that’s you, then welcome home.

]]>
5 13173
PUG REPORTS https://weatherfactory.biz/pug-reports/ https://weatherfactory.biz/pug-reports/#comments Tue, 07 Feb 2023 12:07:25 +0000 https://weatherfactory.biz/?p=12967 Below, a screenshot of the demo of BOOK OF HOURS, ‘Early Draft Edition’:

Crowcross Beach: seagulls and their friends

 

Much as you’d expect: very pretty but clearly an early alpha. Lots of placeholder UI work, no animations, the driftwood log on the beach has slid sideways over the rock, etc. etc.

At the bottom left hand corner, however, is something you might not expect.

 

“Enhance 224 to 176. Move in, stop.”

 

unclear small detail in sea

 

“Pull out, track left, stop. Enhance 34 to 36.”

 

 

 

“Enhance 15 to 23… give me a hard copy right there.”

 

pugs at sea

 

Yes that is a badly part-alpha’d row of three adorable pugs floating at sea. (The sea’s still there, but when you zoom in too far the background darkens, to spare you the sight of a low-res background zoomed in too close – another good-enough placeholder effect.)

But wait, there’s more! The pugs are interactive! Here’s the most detailed and helpful of the emails on the topic that we received last night:

“4. The “Combing the Sea” action is very finnicky to actually find. For some reason, only when I click on the tiny image of three pugs in the center of the sea the interface appears. When I first unlocked it I thought nothing was there, and only when I accidentally clicked on the pugs did it open up. It also doesn’t have a timing bar that I could see, so I was never sure when it was done.”

Pugcombing

The pugs are indeed your gateway to a Beachcombing activity. You might, however, find the results less than fulfilling; you might for instance wonder why the ‘Eva’s Locks’ seaweed is a pewter-coloured blank card full of question marks and gibberish.

 

That’s right; it’s placeholder content. The actual WIP game is full of this sort of thing, but I made it unavailable in the demo. So how did this one get in, and why did it get in via three surreally tiny pugs adrift in the Atlantic Ocean?

There are three important clues in this screenshot. Note the poster of 80s Irish-British game show icon Henry Kelly advertising Japanese beer; the bust of Ianus Bifrons from the Vatican Museum; and the spectacularly horrible chair. What do these things have in common?

That’s right: they’re all placeholder images intentionally chosen to look jarringly different, so that there’s no possible way they could escape notice and end up in the actual game. Like the pugs.

The pugs were a placeholder image for the Beach “workstation”, the interaction point for beachcombing. I thought I’d taken them out, but I hadn’t, I’d just somehow dropped them in the sea and made them tiny, and then got distracted before I could fix it, because e.g. a cat jumped on me at an inopportune moment or my daughter reminded me we were supposed to be watching Lockwood & Co.

Then about four hundred players noticed them, interacted with them on the perfectly reasonable presumption they were supposed to be there, and sent me… pug reports. Thanks erryone.


THAT ASIDE the response to the demo’s been great. People are saying ‘lovely’, ‘haunting’, and ‘can’t stop playing’, which is particularly gratifying given what a tiny part of the game it actually is. Thanks to everyone who’s sent feedback and… pug reports… I’m buried under emails so if you don’t see a response please don’t think you’ve been ignored. “The eye sees more than the heart knows.”

Try the demo here, if you haven’t already.


Lottie and I haven’t decided yet if we should patch the pugs out of the demo, which will only be up for another week or two anyway. It would mean fewer emails, but on the other hand, it would also mean fewer pugs.

]]>
2 12967
GHIRBI, the Gatekeeper https://weatherfactory.biz/ghirbi-the-gatekeeper/ https://weatherfactory.biz/ghirbi-the-gatekeeper/#comments Tue, 13 Dec 2022 12:43:21 +0000 https://weatherfactory.biz/?p=12751 There are now a hundred and forty mods on the Cultist Simulator Steam workshop. The number’s exploded since we enabled DLL modding – that is to say, we allowed modders to run their own code as part of a mod, changing fundamental game behaviour rather than just adding new narrative content and images. Four of the top five mods are DLL mods.

Any time you run someone else’s code on your machine, there’s a risk. In theory, a modder could include malicious code in a DLL mod. The risk is very low – AV programs may notice it, Steam will block malicious modders – and the same applies to games anyway – there’s nothing in principle to stop a game developer from putting malicious functionality in their work.

But there was an incident earlier this year where a modder did include malicious code in a Cities: Skylines mod. It was trivial – it just interfered with other mods as part of some sort of community drama, it wasn’t ransomware or anything. It was spotted within days. And it only affected about fifty people. But it did happen. (A few months later we got an email from a security researcher pointing this out.)

 

GHIRBI, the Gatekeeper, screenshot

So from the beginning of next year, we’re making it slightly harder to enable DLL mods. All you’ll need to do is install a gatekeeper mod, Ghirbi, and all Ghirbi does is show you a notice making you aware of the theoretical risk. This is basically the same as making the user tick a box to say ‘I am OK with this’ – but most people tick most checkboxes without reading the notice, especially when they’re playing games.

[You won’t need to download or install Ghirbi to use DLL mods until after our next patch, NEMESIA, but you can install him now to save hassle. If you don’t use Steam, you can download Ghirbi here.]

Honestly I think the risk here isn’t traffic-accident low, it’s hit-by-a-meteorite low. But if someone was hit by a meteorite because they’d installed our game, then even if it was a bizarre accident, we’d feel bad about it. So we’re adding a meteorite warning it’s impossible to ignore. Happy Christmas.

]]>
1 12751
Announcing: the Sixth History Community Licence https://weatherfactory.biz/announcing-the-sixth-history-community-licence/ https://weatherfactory.biz/announcing-the-sixth-history-community-licence/#respond Fri, 18 Nov 2022 09:56:36 +0000 https://weatherfactory.biz/?p=12534 Update 28/11/2022: the Sixth History Community Licence is now live and available here.

How It Is

Something about the Secret Histories enthuses people. Fanworks, fiction, commentary, art; I’ve lost count of the number of TRPG homebrew rules projects I’ve seen. For a long time, our take on this was sure, it’s nice to see this kind of thing, use our stuff… as long as you’re not making any money out of it, because our IP is our livelihood, and we need to protect it.

But a few months ago I had a conversation with a smallish YTer who wanted to do actual-play videos with their own Secret Histories-based content. I said, sure, as long as you’re not making any money out of it… they said, well, we make a little bit out of ads. I pressed for details and when they said it was literally only a couple of dollars a month, I immediately felt abashed.

Lottie and I began to realise two things. Firstly, we get a lot of these sort of borderline requests – can I run a LRP based on your work and charge to cover costs, can I use your tarot deck to do professional readings, can I do DeviantArt commissions – and our answer is nearly always yes, but it’s often complicated and we have to think about it. And secondly, we really don’t mind if a semi-pro or even pro creator pays the rent using our IP, as long as it doesn’t hurt our own ability to pay our own rent. And if someone does really well and helps grow the audience, so much the better.

But what, people always ask, if Hollywood calls and then their lawyers say the IP situation is too complicated? Bugger Hollywood. We got optioned for TV a few years ago, did I ever mention that? Like most options, it never went into production, and I realised afterwards how relieved I was. Even though the people involved (a) were clearly nice and smart and (b) had actually played Cultist. If the upside of community licensing is that people make interesting things, and the downside is that we damage the remote possibility of a someday deal which would make us, eh, about as much money as a really successful piece of DLC in exchange for titrating away a quarter-soul’s worth of our distinctiveness over several subjective years of meetings… I lost my thread. You get the gist.

How It’s Going To Be

So we started talking about permissive licensing. This is where we ran into a snag. It’s the lore – the background, the story, the mysteries – that most attracts people. A lot of you want to write your own answers to the questions posed by Cultist Simulator et al. But we designed a lot of those gaps and mysteries very carefully, and we need to be sure there’s a clean distinction between Weather Factory answers, and everyone else’s.

Here’s what we came up with. There is not only one History, as they say.  The known Secret Histories are five in number. So if there were an unsanctioned, unknown, unlawed Sixth History… it would be your playground.

We’ve talked to our lawyers and we’re finalising the licence details. We’ll release the licence next week but basically:

You’ll be able to use the Secret Histories setting as a basis for your own TRPG, board game, app, fiction, art commission…and earn money from it, up to a limit of 50K GBP p.a… without needing to check with us… as long as you follow the licence, particularly by using the Sixth History logo to make clear it’s not an official Weather Factory project.

That’s the tl:dr;  but for God’s sake do read the whole license, don’t skip bits, if you’re planning a project along these lines. (And of course this is meant for small-scale works. If you’re thinking of proposing a serious commercial project that may make more than the revenue limit, or if it needs our direct creative involvement, like the Mysterious Package Company’s super-deluxe Lady Afterwards, or the Locksmith’s Dream, then you’ll still need to talk to us, and we don’t usually agree more than one of these a year.)

Where’s the licence again?

Here! Happy creating. 🙂

I have other questions!

r/weatherfactory on Thursday 1st December 2022 at 6PM GMT. Bring snacks and a post-work drink! Or if you’re in America and it’s therefore early in the day, I don’t know, bring porridge.

]]>
0 12534
XVII. THE VAGABOND (Nicola Rigby, 2022) https://weatherfactory.biz/xvii-the-vagabond-nicola-rigby-2022/ https://weatherfactory.biz/xvii-the-vagabond-nicola-rigby-2022/#comments Mon, 03 Oct 2022 19:05:36 +0000 https://weatherfactory.biz/?p=12341 One of my more quixotic projects has been to commission one piece of unique art for every Hour of the Mansus. You’ve already seen the gorgeously crochet Mother of Ants; the Vagabond is a project on a much larger scale. The sculptor Nicola Rigby took the best part of a year to sculpt her in clay, and has finally been cast in bronze resin this week. She’s on her way to the office now.

Each item in the basket is individually sculpted. There are two hidden compartments. And see if you can count how many Secret Histories references Nicola has managed to work into the piece…

]]>
2 12341
Reverend Timothy Speaks, Part One https://weatherfactory.biz/reverend-timothy-on-the-history-of-hush-house/ https://weatherfactory.biz/reverend-timothy-on-the-history-of-hush-house/#comments Wed, 29 Jun 2022 16:50:49 +0000 https://weatherfactory.biz/?p=12031

“BOOKS ARE THE MEMORY THAT DOES NOT DIE.”

– Inscription above the door of Hush House

As Lottie and I work on BOOK OF HOURS, we’ve become better acquainted with the long and layered history of Hush House, the library where the game takes place. Lottie’s worked on recapturing the House’s look and feel over its many eras – Roman shrine, Dark Ages monastery, mediaeval abbey, baronial seat, institute of learning, and finally (whisper it) a highly select reformatory prison. I’ve been digging into the history of its inhabitants.

Resources on Hush House’s history are hard to come by (and no I can’t just make it up, good heavens). Fortunately on a recent research trip I happened across a 1930s tourist pamphlet produced by the rector of Brancrug Village.

I do take issues with some of Reverend Timothy’s scholarship. He passes over the details in the death of the sixth Baron Brancrug – did he leap, did he fall, was he pushed? – and he’s clearly a bit of an Eva Dewulf fanboy. But then, aren’t we all?

 

 


HUSH HOUSE – A Visitor’s Guide 

by the Reverend Timothy MacDonald

(price fourpence)

Dear Visitor,

I would like to welcome you to Hush House, one of the unexpected treasures of our Cornish coast. I have set aside considerable time to research the thousand-and-a-half years of its history, and I am pleased to share the fruits of my researches with you.

The history of the House is complicated, and can be bewildering to the ‘uninitiated’! To ‘ease you in’, I have identified five distinct periods or ‘phases’ in Hush House’s history.

Access to Hush House is by appointment. Please inquire at the Rectory. I regret that tours are not possible at high tide, on Church holidays, or while the Moon is visible in the sky. All proceeds from the sale of this booklet, or donations to tours, will be donated to the St Rhonwen Trust for the Advancement of Education.

 

DAWN PHASE

In the sixth century, the Abbey of the Black Dove – sometimes called also the Abbey of the White Crow – is established as a double foundation of monks and nuns, surprisingly common in those Dark Ages. 599 A.D. is traditionally celebrated as the date of the Abbey’s foundation, although I believe the island church of Our Lady Beneath – regrettably unsafe to visit due to flooding and subsidence – dates from the third century. 

The Abbey was subject to Danish raids on at least two occasions in the ninth century, although the raiders are also recorded as mercenaries quartered here against the incursions of Egbert of Wessex. One raider apparently becomes a brother of the Abbey under the name Thomas, and later rises to become Abbot. Abbot Thomas evidently finds it difficult to leave his savage past behind, and dies in circumstances too violent for me to describe here. “Live by the sword, die by the sword”!

 

SOLAR GOTHIC PHASE

The splendid Abbey Church we see today – St Brandans – dates from the eleventh century. The Watchman’s Tower and its fortified gatehouse were built in wood as a protection against Saxon rebels after the Conquest. They were later rebuilt in stone, after the Abbey gave shelter to a tree brought from Normandy by the new Earl of Cornwall. The tree is said to flower white, black and red in consecutive springs. Perhaps if you keep a sharp eye out, you can identify one of its descendants!

Its substantial expansion in the thirteenth century was funded by an endowment from Eva de Braose, a noble lady of the Marches whose husband was hanged under undignified circumstances. The Solarium and Chapter House date from this point. St Brandan’s is by now established as a centre of learning and healing, and no doubt they were of assistance to Lady de Braose in some manner.

The Winter Tower, later called the Long Tower, dates from 1322 – curiously, the same year as the collapse of the tower of Ely Cathedral. The Tower stands alone in the gardens, and is fortified to no obvious end. I have examined what remains of its frescoes and I believe it was built in dedication to the Sun Before Dawn, according to the pre-Reformation solar traditions.

The Barber’s Tower was constructed in 1450 to house the healer Natan of Regensburg – as a sanctuary or perhaps a prison, since Natan is a learned but a Hebrew gentleman, and his people are regrettably unwelcome in the Kingdom of England at this time. The Crucible Tower dates from a little later. The fire of 1929 has left this tower unsafe, and I recommend strongly against close inspection.

 

BARONIAL PHASE

In 1537, as part of King Henry’s reforms, John Tregonwell is appointed to investigate St Brandans. He uncovers evidence of indulgent, corrupt and scandalous behaviour. The monastery is dissolved and the isle of Brancrug granted to Hendrik Dewulf, one of Tregonwell’s captains, formerly a Guelders mercenary. Dewulf is clearly an uneducated and violent man, and he suppresses a local rebellion with intemperate brutality. One story tells of a local oracle who places a curse on Dewulf in revenge: “There will be no seventh of his line.” Dewulf has the man dragged before him, tells him “There will be no second of yours,” and unmans the oracle with his own knife!!

Nevertheless, the Dewulfs grow more temperate over time. They treat the Abbey Church with respect, and their seat, Brancrug House, is the core of the other buildings that grace the Isle today. Thomas Dewulf, the second Baron, is nicknamed Baron Silence by the poets and playwrights of London – this I believe may be the origin of the later Hush House ‘moniker’!

Thomas restores the Watchman’s Tower and builds an observatory there in 1576 – with some foresight, since the Great Comet passes in 1577. His son Giles runs away with a Bristol girl, although he and his father are ultimately reconciled. The Bristol girl, named Hafren, has the pale hair and eyes notable in the later Dewulfs.

The third Baron, Walter, remodels much of the interior of Brancrug House. Many of his innovations have been lost beneath later work, but you can still admire the Grand Ascent that unites the House’s various levels. Walter supports King Charles in the Civil War, but in 1648, Walter’s son Bryan is hanged for treason that same King’s men. Walter’s heart bursts with sorrow, and his son post mortem receives special dispensation to be buried with his father. You may see their gravestones to this day, just to the west of the church.

In the 1650s, The fourth Baron, Musgrave, ‘the Lamb Dewulf’, restores the Winter Tower as a residence for Julian Coseley, the scholar and antiquary, who assists with the cataloguing and expansion of the library. Musgrave’s son, Gideon, is wickedly nicknamed ‘the Motley Baron’ for his odd and brindled appearance, and so the Motley Tower – once the Barber’s Tower – wins its name.

The sixth and last Baron is Valentine, an eccentric gentleman who builds the Gullscry Tower to house his aviary-collection. When Valentine falls to his death from the tower top, his daughter Eva inherits the estate at the age of nineteen.

Educated visitors will already know the name of Eva Dewulf, the Pale Lady, who cuts quite the ‘figure’ at court! Alas she is engaged to a rapscallion named Abraham Wheelock, who abandons her at the altar. Eva returns to Brancrug to recover, and is not seen at court again. However three days after her departure, Wheelock’s body is found on the beach near Gravesend. His face is so badly pecked by birds that he is only identified by his belongings. These include a waxed pouch containing a letter addressed to Wheelock, whose contents seem to show he is a spy in the pay of the Austrians! I suspect the matter has been ‘over-egged’, but Lady Eva no doubt would have found it all something of a relief.

Lady Eva never marries. She opens her library and draws visitors from across Europe and beyond. Some of these visitors are selected by peculiar and exacting criteria to attend sophisticated feasts in her Hall of Division. Others are drawn by Lady Evan’s reputation for scholarship – including the notorious Franklin Bancroft, whose deep friendship with Eva inspires wicked gossip.

 

THE CURIA PHASE

In 1759 Lady Eva’s heir, Captain Sebastian Dewulf, is drowned in battle against the French at Quiberon Bay. Lady Eva comes to a tragic end, and the Dewulf line ends. Brancrug House is all but abandoned, and the caves beneath the island become a smuggler’s haunt. 

But in 1785, a group of scholars acquires the deed to the Dewulf estate, establishing the ‘Curia of the Isle’ as an institution for the preservation of knowledge. Ambrose Westcott, Kitty Mazarine, Solomon Husher – all these names

[water-stained and unreadable beyond this point]

]]>
1 12031
“FAILGATE” https://weatherfactory.biz/failgate/ https://weatherfactory.biz/failgate/#comments Fri, 17 Jun 2022 08:11:45 +0000 https://weatherfactory.biz/?p=11334 You’ve read exposés of games studios before. But in the whole history of the games industry, there’s never been anything quite like this: almost a hundred pages of evidence compiled from dozens of sources – evidence of harassment, deceit, bullying, intimidation, and spite. The guilty parties are the execs at Failbetter Games, the studio which I founded and where Lottie worked. Three years ago they unleashed a smear campaign against us. We’ve tried again and again to talk to them, and to fix the situation. Their response? In public, to go silent; in private, to escalate.

So in self-defence, we’ve published what you’re about to read. If they want to keep behaving like this, they’ll have to do it in the open where everyone can see what, little by little, they’ve become. Not monsters, or even really villains: just ordinary people who were given power, yielded to the temptation of spite, kept doubling down when challenged, and lost their way back. It reminds me of kids who’ve egged each other on to paint an ugly word on a neighbour’s door, and then can’t bring themselves to admit it was wrong.

 

FAILBETTER’S ONLINE HARASSMENT

First, the Failbetter Report: a collaboration between a veteran investigative journalist and a team of data mavens, following a similar approach to the analysis of the networked harassment of Carole Cadwalladr. It describes in detail, with evidence, the malicious behaviour of the execs at my old company –  how they were unmistakably the prime movers of the smear campaign against Lottie and me. The headline findings: just how much of the ‘spontaneous’ Twitter assault came directly from Failbetter; the grossly misogynistic abuse that Lottie was subjected to; the total absence of evidence for the horrible things said about both of us, and about our families.

You might remember that Failbetter have resolutely tried to block any formal investigation into the whole business. You can probably now imagine why.

The networked harassment of a British video game developer and his fiancée

“Failbetter Games employees, past and present, accounted for nearly a quarter (21.93%)
of all the tweets directed at Kennedy and Bevan, including employees who had never worked with [Kennedy…] We identified 339 tweets specifically targeting Bevan which were sexist, misogynistic and/or sexually explicit […]
Our data analysis shows that the abusive content is found to be cross-pollinated through significant retweeting and quote tweeting by various individuals associated with Failbetter.”

 

FAILBETTER’S MISTREATMENT OF WOMEN

This is an employment tribunal complaint made against a game development studio by a woman. The complaint is of sexual discrimination, direct and indirect, against her and others, and of a years-long campaign of bullying. The studio didn’t deny a word of it. They just got their corporate lawyers to intimidate the woman in question into withdrawing it. The woman was Lottie Bevan. The studio was Failbetter Games. Our experience suggests they’ll already be reaching for a lawyer to send us yet another letter (we’re on #12, I think). They might reconsider if I point out that we would both be happy to testify under oath; the execs, less so.

‘What would a kind, progressive, benevolent company who cared about women do, if a female employee complained of mistreatment? What if she said their actions had really damaged her life? Most would investigate her claims. Some might apologise. Others might ask if they could discuss it informally over coffee, like humans. Alternatively, they could hire expensive lawyers to block information requests, suppress employment tribunals and threaten repeatedly to sue her. Wait.’

Lottie has written about this in more detail, and summarised the most important claims.

 

 

FAILBETTER’S MISUSE OF PERSONAL DATA

Third, this is the evidence we compiled for a complaint about Failbetter’s breaches of data privacy law.  Their CEO, Adam Myers, has fought for years to prevent us accessing the evidence that would prove him a liar – but as the saying goes, it’s not the crime, it’s the cover-up. The Information Commissioner’s Office upheld complaint after complaint. Adam has responded with contempt and spent tens of thousands on corporate lawyers to slow the ICO’s roll and to intimidate us. It began when he used his power as CEO to snoop through our private messages and use carefully selected quotes, mingled with outright lies, to smear us – while keeping us from accessing those private messages ourselves, on the pretext that he’s protecting the privacy of others.

“In 2019, Adam Myers leaked a phrase from a private DM conversation between Olivia Wood and Alexis Kennedy, where Wood came to Kennedy for advice on a raise. The phrase is ‘holy shit’. Myers characterises this as evidence of abuse. He omits to mention that Wood was requesting the biggest pay rise in the company’s history…. or that Kennedy took her request to the board, and fought to secure the pay rise, on the grounds that she was worth it. Myers repeatedly refused GDPR requests to turn over any of Kennedy’s other statements from that conversation.”

But it also shows how the privacy of others only mattered when Failbetter could use it as an excuse to keep our own data from us. It details how they eagerly sent us almost a hundred screenshots of remarks about us from the ‘moderated’ Failbetter Discord, because they knew the many nasty ones would upset us. (They didn’t ask consent of any of the people making those remarks, or tell them about it. If you said anything about me on the Failbetter Discord before March 2020, I’m afraid Failbetter harvested it and sent it to me personally, though I probably haven’t read it.) It describes how when I asked for my own photos, they inexplicably sent me photos with clear, unredacted images of literally every female employee from my time at the company, including the one they pretended I’d ‘abused‘, and ignored our incredulous query about that. (Failbetter didn’t ask their employees’ consent or tell them about it, either.)

‘Lottie Bevan and I made a Subject Access Request follow-up to Failbetter Games on Friday 12th June 2020. In the early hours of Monday 15th June 2020 we both began to receive anonymous, threatening, violent, sexualized emails. These emails included clear references to information in our DSAR follow-up message.’

I wouldn’t often recommend you read a colour-coded spreadsheet, but this one is astonishing. Have a scroll through. The appendix about their CEO rooting through Lottie’s email exchanges with other Failbetter employees, so he can snoop on them too, is particularly unsettling.

 

HOW FAILBETTER RETALIATES

After I left Failbetter, they used the likeness of my little girl on a Steam trading card without my permission. Here’s me trying to get them to replace her image with something else. Her grandmother and mother both wanted the image removed too. Failbetter refused, and the very next week, two execs retweeted a new and horrible smear that I’m a paedophile. They later deleted it – perhaps from some vestigial impulse of decency, perhaps just concern that it might be actionable.

Six months later, Failbetter are still refusing. The ICO upheld our complaint, after requesting a signed letter of authorisation from my daughter herself (she’s twelve now) but that didn’t work either. I don’t know how far down the rabbit hole someone has to go before they think this is okay, no matter what beef they have with a kid’s family. Failbetter have also established a nasty precedent: if you back a Failbetter Kickstarter at a level that allowed you to get your likeness in the game, it’s now their property and they will refuse to remove it.

“Your client is claiming that the inconvenience of replacing one of several hundred images in a seven-year-old game outweighs the rights and freedoms of a little girl and her family. My daughter is as yet unaware of your client’s paedophilia smear and of their highly specialised fantasy of targeted post-mortem defecation, but she is an Internet user who knows my name. As and when she stumbles across these or other accusations, I hope I can rely on Wiggin to explain to her why her face still appears in this company’s products.”

[Just as I was writing this post, the ICO had a letter from Failbetter. They are changing their story again for the ICO’s benefit. Among other things, they’ve started claiming it’s impractical to remove my kid’s image because Failbetter no longer develops software for iOS.]

 

FAILBETTER’S CRIMINAL NEGLIGENCE

For years now, it’s been the two of us against a multi-million-pound business. The imbalance has made them careless and arrogant. They have the money; they have the power; they thought our reputation was so sullied by the false accusations they endorsed back in 2019 that no-one would ever listen to us. If you’re wondering, as you might well be, “what the hell is their problem?”, I talk about some likely motivations here – but the short version is they had a CEO with a crush on Lottie, grudges against us both, and a lot to hide.

So they’ve heedlessly let the evidence pile up. They think they’re invulnerable. They might even be right. More about that in a moment. But first: why are we making a noise about it now?

Happier times in 2015. Left to right: Adam Myers, Alexis Kennedy, Paul Arendt

We posted last year about the more public attacks, and about Failbetter’s refusal to allow an investigation or to meet us for mediation. As soon as we did that, the public attacks stopped as if a tap had been turned off. As with a tap, there’s still the occasional drip; but Failbetter couldn’t, and didn’t, deny anything we’d said in that post. They wouldn’t even give a comment to the press. After that, no-one who was paying attention could really believe they were credible.

But behind the scenes, Failbetter stepped up the pressure. In the last post, I described how we unexpectedly tripped over the silliest plot twist ever: that I still legally own Failbetter. Instead of using that to go on the attack, we naively let Failbetter know about it as a show of good faith, back last year when we were pleading for mediation and investigation. Unfortunately that just made them aggressive. We started getting letters about it, trying to pressure me (and my mother!!) to sign documents of dubious legality.  Let me be really clear. I didn’t chase them about the company ownership issue. I let it go. They wouldn’t.

Eventually it came down to a conversation between their and our lawyers, and here’s where it’s got interesting. Lawyers, like Le Guin’s dragons, might misdirect but won’t actually lie. So their lawyers admitted, repeatedly, in writing and on the record, that actually yes, because of Failbetter’s criminal negligence, I’m the legal owner of Failbetter Games Ltd.

 

FAILBETTER’S LEGAL BULLYING

This meant they had to change their line of attack. They now agree I do own the company, but also claim that I signed a contract, back in 2016, which commits me to selling the shares. This contract was actually drafted, but because we were all on very good terms back then, we never got to the final signature version (this is part of the reason the sale of my shares failed). After a whole year, and a complaint upheld by the Information Commissioner, they still can’t produce a signed copy of the contract, even though they still insist one exists somewhere (the suggestion is that it fell down the back of a filing cabinet, or into a shredder). They do keep hopefully sending us a Word document that they say they definitely printed out and I definitely signed. To be fair, although the title of this document seems a little fluid, it always includes the word final:

But whatever the title is on any given Tuesday, it also always includes tracked revision requests from Failbetter asking for further edits. They evidently hoped we wouldn’t notice that, and have been unable to come up with an explanation for it.

The last threatening lawyers’ letter announced, quite explicitly, that they’re going to sue me. They didn’t specify what they’re going to sue me for, and after three months the lawsuit has failed to materialise. So it looks like a SLAPP to intimidate us – again, shades of the Cadwalladr case, where this kind of intimidation is the next escalation after harassment. But every day for the last three months we’ve had to worry that this might be the day we get served.

Last contact from Failbetter, 30th March 2022. Our reply said that we were still willing to resolve things amicably. We haven’t heard anything since.

So it was the last straw for us. We won’t be bullied any more and we can’t live in fear like this. We’ve spent those three months putting everything in this post together.

 

SURVIVING FAILBETTER

The next steps: the publication of this information, and one final attempt to have a reasonable conversation. I’m requesting that they call an extraordinary general meeting of the company to resolve the situation. As directors in dispute with the majority shareholder, the Failbetter execs should hold that meeting and work things out with me. It won’t be much fun for either side, but it’s clearly the right thing for me and them to do. I have to try.

But we tried to appeal to their better natures last year.  It didn’t work then. And the idea of any of those execs having the guts to look Lottie in the eye, and say the same things to her in person that they have over email – that’s almost funny. Here, then, is what I think will actually happen next.

Failbetter will read this. They’ll ask their lawyers: can we get away with this? Their lawyers will say: it’ll cost some money, but probably. So probably, they’ll ignore the general meeting request, maybe even send us another threat. They’ll dare us to sue them. Fallen London is still printing money. They can outspend us in the courts.

The games press will read this. Some of them will have pangs of conscience when they remember how they printed the rumours in 2019. But it’s too complicated and low-profile a story to get clicks. If Lottie or I were properly famous – if Failbetter were less ready with the legal threats – if we had some ham, we could have ham and eggs, if we had some eggs. Failbetter have shown more than once how effectively they can wield a Twitter mob. wouldn’t go up against them if I could avoid it. A few of the smaller sites might print something. The rest will pass. Failbetter will be counting on that.

The Information Commissioner’s Office will continue to pursue Failbetter. Failbetter will keep on fighting a rear-guard action and paying lawyers. Finally, when they’ve made it as difficult as possible for us, they’ll grudgingly make enough concessions to pacify the ICO. If my daughter and I are lucky, they might even take her picture out of Sunless Sea.

This article will sit on the web like a scar, and every so often someone will happen across it and send us a sympathetic mail. Or send Failbetter a disappointed one. A Failbetter staffer will read the mail, feel briefly conflicted, remember what their management does to troublemakers, and quietly close the ticket without saying anything. From time to time, one of their execs will retweet something viral about how shameful it is when studios deny credit to ex-employees. “Like Lottie Bevan,” someone will ask, “or Alexis Kennedy?” The exec will snort indignantly and block them.

Happier times: Alexis Kennedy and Lottie Bevan, April 2019
Happier times: Alexis Kennedy and Lottie Bevan, April 2019

But with any luck, the publication of this information will deter future attacks. All we can realistically hope for at this point is that Failbetter will leave us alone.  I do think now that we can realistically hope for that.  So I can’t give you a happy ending, but I can give you an upside.

They really tried to end us. They’ve been trying for years. We were outnumbered and out-resourced. They hijacked and perverted the #MeToo movement at its height. They shredded our reputation and they drove away our team. Dealing with their lies, their threats, and their harassment has been like a second job. But we’re still here. We are going to go right on making games and books and tarot and stupid cat tweets. We don’t have to win. We just have to survive. On a good day, making art with people you love is as good as it gets.

‘Go scorched earth,’ the peanut gallery once advised me. I’m not doing that. This is the real world, not Twitter. Real people, real lives, real consequences. People who cry, lose their temper, fight with their friends, hug their kids. It’s been difficult to remember that sometimes, these last few years, but it’s true, of the execs at Failbetter just as much as it’s true of me and Lottie. When all this is done, whatever the outcome, we have to live with each other in the world we’ve made, and you can’t log off from the world. Or at least, not twice.

]]>
18 11334