Design Goals for the SKALD Engine

The SKALD Roleplaying System consists of three components:

  • A set of RPG rules usable for pen-and-paper as well computer RPGs.
  • A game engine for making gamebooks, interactive fiction and text-heavy roleplaying games.
  • The games published using the SKALD engine.

The current focus of the project is to finish the game engine. This post will attempt to summarize the design goals for the engine. For more information about the project in general, see the welcome post.

NOTE: I’m writing this post as much for myself as anyone else. As such, this post will be highly prone to edits as i update and change the design goals.

SKALD is a Storytelling Tool

First and foremost, I want to create something that will allow me to tell stories. I was a pen-and-paper RPG game master for years but as I grew older, holding together a gaming group became near impossible. I began to miss the creative outlet that GMing represented. This was been a big driving force in deciding to develop a game engine for text based roleplaying games and gamebooks.

Specifically, I chose text-heavy games because I feel comfortable with using text as a narrative device. Text is easy to add (if you don’t consider the hardships of writing prose) and very flexible. Flexibility was another important point as it gives me the option of choosing between an infinite variety of settings: From sci-fi and fantasy to historical and educational. This was an important rational for beginning this project by creating a setting-agnostic game engine.

SKALD is a roleplaying game

In addition to creating a system for writing choose-your-own-adventure style gamebooks I also want SKALD to be rooted in a proper RPG system. At a minimum the SKALD game engine must allow for the following game mechanics:

  • a character creation and advancement system complete with skills and feats
  • skill checks
  • tactical combat (in one way or another)
  • looting, buying and selling items
  • magic and / or psionics

An important part of implementing the RPG features is that the system must be modular enough that it should be fully possible to choose away any and all parts of the RPG system at the design level and without changing the source code. In other words: Using the same game engine, it must be possible to make a vanilla gamebook with no features beyond one paragraph leading to the next, as well as gamebooks with full RPG game mechanics.

SKALD has rogue-like features

In addition to the rpg game-mechanics it’s also important for me that the SKALD game engine allows for certain rogue-like features. In particular I want to have the ability to add procedurally generated content to the game. This, combined with an underlying RPG system will make it possible to essentially write a text based rogue-like. At the same time, just as with the RPG system, it must be fully possible to write a gamebook without using a single rogue-like feature.

Why add rogue-like features? Well, my reasoning thus far is that this will make it a lot easier to add to the runtime of the game. I have a vision of the narrative of the gamebooks being superimposed on relatively open worlds and thus adding a lot more replay value to the game beyond just going through the main plot over and over.

Again: This is an optional feature I’ll add to give myself the full breadth tools to tell the kinds of stories I would like.

Engineered with Sustainability in Mind

Not only is SKALD a labor of love, but it will also serve as a tool I could potentially be relying on for years to come. In the long term, it might even be adopted by other game developers interested in working within the gamebook genre.

As with all code that sees long-term use, there’s a lot to be gained by “measuring twice and cutting once“. In other words I intend to take my time and keep the source code architecturally sound, compact and well documented.

The notion of strictly separating the logic from the data and making all aspects of the game itself modifiable via the data is the prime tenet I’m currently building the engine around.

SKALD as a Brand

Lastly, it would be pretty neat if the SKALD system and the game engine in particular becomes a recognizable brand. It would be awesome to see “Powered by the SKALD engine” and “SKALD Roleplaying System presents:”  on games!

 

That’s it so far. Thanks for reading and be sure to keep following the SKALD devlog! In the meantime, follow Scape-IT and SKALD on Twitter for all things RPG!