• Register

This member has provided no bio about themself...

RSS My Blogs

For the past week, we've been working on a very important part of our development: the design tools. Modders should take notice too, as we're planning on releasing these either with the finished game or soon after it's done.

The design tools were developed in C# with Windows Forms, and give a pretty good idea of how the game's story is structured. Currently, the whole thing is split into two programs: the general design tool and the story design tool.

Character Archetypes:

The stories in The Kingsport Cases are incredibly complicated and branching because of the procedural writing, so we need tools to organize the huge amounts of information we need to deal with. The central units of all of this is, as with any story, the characters involved.


In this game, we want characters to be able to repeat believably across multiple stories. That means that, instead of writing specific characters, we need to write character roles. The characters themselves are different from playthrough to playthrough, but each character placed into a story has a role to fill. These roles are tied to every part of the story, from their goals (Plot Directives) to the knowledge they have and their relationship with the player.

Procedural Dialogue, and why we're not crazy

Each personality and trait has a set effect on relationships with other characters (an introverted person is going to find a bubbly person annoying, for example), and these relationships have an important role in dialogue. For the dialogue to take all of this into account, we can't just set up dialogue trees for every possible set of cases in existence. That would take literally hundreds of years, and we don't have that kind of budget. That's where our special dialogue tool comes in.

This tool lets the user craft dialogue that can be chosen from a common pool, instead of from a tree. This is one of the important features that makes The Kingsport Cases possible. It essentially boils down to units of dialogue called "Social Moves." These social moves are comprised of a list of intents and preconditions, which determine whether it makes sense for the move to be used (for example, a character may not be nice to you if they plan to murder you).
After that, it chooses an result based on more specific preconditions (if you try to flirt with someone who hates your guts, they will reject you, for example). Here, the script that the dialogue follows is chosen based on a set of conditions, as well as a set of effects to your relationship, knowledge, and other factors. Additionally, it can add a bit of knowledge to the characters' "gossip pools" (a concept borrowed from Prom Week), which can be referred back to later to describe why NPCs act the way they do ("You didn't give me pancakes when I asked, and you want me to risk my life for you?!").
And that's basically the heart of our social engine. In a week or so, I'll talk about how this ties in with knowledge and plot progression (here's a hint: It's also procedurally generated)

More models

We don't have any in-engine screenshots yet because we've been focusing on this (without a design tool, we can't get started on the writing, which is the most time-consuming part of the endeavor), but we should have something shiny for you next week. Until then, enjoy the new set of daily models:

More models

We don't have any in-engine screenshots yet because we've been focusing on this (without a design tool, we can't get started on the writing, which is the most time-consuming part of the endeavor), but we should have something shiny for you next week. Until then, enjoy the new set of daily models:


Observatory

Storage room

Boiler room

Library

Closet

Library

Start a group Groups
Machines in Motion

Machines in Motion

4 members Developer

Machines in Motion is a small group of developers working to create great games. Our first release, Borealis, was a Kickstarter-funded experiment in slow...

Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account:

X