1. Dwarf Fortress
  2. News

Dwarf Fortress News

Hiring Assassins is Hard Work

Hello!

As we noted in the last news post, I'm finishing up the villain work that was in progress before we move on to getting the Steam release together, and this work had just hit the 'post world generation' phase, where we take our foundational but abstract data and code that was used to make the world's history and get it into a form that can be used in player fortresses and in Dwarf Fortress's RPG mode. In the previous post, I'd just finished a basic assassination plot.

The next step was to get the villain's lieutenants and handlers to work with assassins. In our existing plots from DF history generation, the villains don't always contact the assassin directly, in order to better conceal their identities. This adds some complications once you get into play, because the villain needs to contact the handler, and then the handler needs to hire the assassin, and each of these pairs need to meet in some location, which isn't always simple since the desired assassin (or the handler) might be doing something else, making an immediate meeting impossible. There are various sorts of possible missed connections, some unavoidable, but the basic two-step plots are working now.

However, sometimes a villain or handler is just too important to go on a lengthy secret trip (they are a ruler, say). To solve this problem, I've allowed sufficiently important people to send messages more abstractly. An important villain might send a message to a handler, who then travels physically to hire an assassin, or a villain might physically travel to speak to a highly-placed corrupt official, who then sends word to an assassin via message. The messages still take time to travel, and they'll be a form of evidence when we get to the investigation process, where you as a fortress mode player or adventurer are trying to unravel whatever plot you've encountered.

But in most situations, there will be people moving around, going about villainous business, and these will be the same people that arrive at your tavern in fort mode, looking to meet a conspirator or otherwise cause trouble for you.

Some supporting features from history generation have also needed to make the transition to play. For instance, as I mentioned last time, we added some religious information (on top of mercenaries, merchant companies, etc.) in order to give the villains more connections for their plots, and I spent some time transferring that into a form that can be used once play starts. Each culture now tracks religious demographics and certain historical data (such as persecution and famous sermons) in a way that the in-play civilians can see. These include dwarves immigrating to your fortress, and the people you meet as adventurer.

Additionally, I began updating the other (non-assassination) plots - there's still a bit to do there, right where the action of the plot happens (whether it's sabotage or a theft), but they mostly use the same code, because concepts like 'handlers' work the same regardless of the plot.

- Tarn

(P.S. a note from Kitfox Games: talk about this and other DF lore on the official, friendly Discord! This past week we've had great discussions of hatching forbidden eggs, coffin advantages, and disarming prisoners...)

Development Progress: Plots and Villains

Hi! This is Tarn Adams, a.k.a. Toady One.

Ha ha, yes, we have a Steam News section! We thought we'd start posting here when I was able to work on the graphics code in earnest (I'm completing the half-finished villain features before that begins), but we've been reminded that a lot of people don't see our regular development logs over at Bay 12, and additionally, the artists have been hard at work and we can certainly start sharing what they are creating before the coding begins.

To start, I'll just use this opening post to make sure everybody is broadly on the same page with the odd creature that is Dwarf Fortress development.

Back in July of last year, before there was a publishing contract or much thought of one, we finished our last major release cycle, and started up on the next version for what we now call Dwarf Fortress Classic. Basically, the fortresses that you play in the game will be subject to devious plots of NPCs in the world well beyond the normal sieges that have been in the game since the beginning.

We thought this would take several months, though it's not that unusual that we're rolling up on almost a year now. And of course, something unusual happened in the meantime! We're have a Steam page now, and the work toward a Steam release has begun. The new music and sounds are complete, thanks to Dabu! Meanwhile, Mike and Patrick are producing lots of great sprites for the game. We'll have more on the art progress to date in a future news post.

For now, I'll just try to join the stream of dev logs, what we've been doing for the last months, up into the News section here. Due to the layered nature of the game, where a world history leads to a dynamic in-play world where you control either a fort or a single character, new features are generally added in the following fashion:
  • 1: the broad contours of the feature are added to the world map+history generator. For this release, that means hundreds of plots unfolding over decades or longer, operating all over the map simultaneously, but without a lot of actual moving creatures. Most of the logistical details are abstracted away.
  • 2: make it work in play, in the detailed ongoing world simulation, away from the player. The logistics are handled here. Most of the data and code can be transferred over from world generation, but we often need extra information and mechanics. For instance, a villainous plot that used to rely on a plotter contacting a saboteur with an intermediary, easily and abstractly, now has to actually see more than one person moving over the map, arriving to meet the person they want to meet in a defined location, and advancing the plot step by step (where many steps didn't even exist before.)
  • 3: handle it in Adventurer Mode, the RPG side of the game, which is quite underdeveloped compared to the main Fortress Mode, but it has the advantage of being very granular. If something is wrong with a feature, it's much easier to spot it if you are walking around inside of it, interacting with each detail. For villains, this means two things - adventurers that can be villains, and adventurers that can investigate villains.
  • 4: make the new feature work in Fortress Mode. Having worked with the feature for some time by this point in detail, we can focus on the player experience and getting the new mechanics hooked up in an interesting fashion that interacts with other player-facing pieces of the game. With the villain release, for example, this includes the existing fortress justice system, and the existing ability to send dwarves out on missions.

So where are we in this process, and when can we get started on the Steam features and graphics coding (while the artists continue working)?

We're in the middle of step two. The hard foundational part, world generation, is complete. The villainous plots are done in history, all of their main pieces work, and they can be quite entertaining! Assassination, sabotage, embezzlement, theft, coups, corruption, bribery, counter-intelligence and surveillance, with mercenaries, merchant companies, guilds, religions, and new relationships thrown in to give the plotters and their adversaries more connections and tools to work with.

I've now moved on and completed the initial basic update of the assassination plot in play, which involved adding the logistical mechanics all of the other plots will also use. You can read an in-depth description of our first complete plot pulled off in play after world generation was complete over on the Bay 12 blog, featuring a dwarven necromancer named Ustuth, the dwarf Count Limul Treatyvessels, and Jonu the human assassin.

It's important to note that the villain release I'm talking about here will be the classic, free version (without graphics, so, not yet the Steam release) -- though of course it will then be included in the Steam release. After the villains release is complete, we'll be able to start in on the code for the graphical version, which of course will have all the villain features along with everything else.

I'm sorry that the development plans are a bit convoluted here, with this unusual initial step to complete. The DF boat has been sailing along and gaining tonnage for many, many years now, and turning it can be quite a process, but we will arrive at our destination, as we have many times before. Never anywhere this shiny, though, he he he. It is good to be seeing the pixel cats and alpacas.

We'll be keeping everybody updated regularly here on Steam News from now on, as well as continuing the Bay 12 development logs as usual.

- Tarn

Announcing: Lucifer Within Us!

Last night, we revealed our newest title: Lucifer Within Us, from the creator of the Shrouded Isle.

As a digital exorcist in Lucifer Within Us, you’re asked to solve murders, purify the possessed, and purge their daemons.

Watch the trailer and add it to your wishlist now!

Investigate timelines.

Question your suspects. Watch their movements and testimonies closely, as the reconstruction may be based on lies. Use contradictions and clues to form your own hypothesis. Who is lying and why? Who is possessed? You must decide what is the truth for yourself, based on the evidence presented.

Real mystery-solving.

No hidden plot twists, no QTEs, no random puzzles or mini-games, just you and the information. Don’t just act like a detective -- BE a detective. Finding the murderer will require true understanding of the case, not just following the story.

Banish daemonic A.I.

Enter the minds of citizens to gain insight into what they don’t want you to know. Dig through their subconscious and accuse the guilty in order to cast out their daemons, for the good of the Inquisition. Any damage done to a citizen’s psyche as a result of quarantine, exorcism, or rehabilitation is a consequence of their own immorality.

Expose the False Utopia.

Through centuries of indoctrination, humanity is taught to think pure thoughts and speak true words, untainted by falsehoods and delusions. Yet beneath this facade of purity, you find dark desires stir deep within people’s hearts, yearning for release.

If you want to keep tabs on the game's development, maybe check out our Discord and the Lucifer Within Us channel, where the devs sometimes hang out with other fans of digital exorcism.

Ain Soph's blessings,
Tanya and the Kitfox team