Welcome to Ghostwood

Welcome to Ghostwood
Photo by Michelle Ding / Unsplash

I'll be using this blog to keep track of the ongoing development of the Ghostwood Game Engine. Look at this space for periodic updates!

The idea for Ghostwood was born when I realized several game or game-like projects I was working on had key overlapping feature sets, or a serious need for improvements over existing tools.

Here are some of the features I have in mind to implement in Ghostwood.

  • A way to define a free-roaming world area which can act as a sort of menu of things to do during a game loop, or as a clue-gathering mechanism.
  • Screenplay-like scriptable scenes (such as in Visual Novels,) which can reference separately defined characters, locations, and even camera angles.
  • A time system where areas have different properties depending on whether it is day or night (for example.)
  • An optional date system where the calendar progresses, which can be used to advance the plot.
  • A sophisticated inventory system, which understands stackable (quantity) items, containers (which can be opened, closed, persistent, or ephemeral, and have limits on what they can contain), expendables, key items attached to specific quest, items with internal tagging so that they can be used interchangeably to fulfill plot purposes (i.e., matches, cigarette lighter, and flint and steel all have the "fire" tag.)
  • An achievement and quest tracking system.
  • Support for various methods of deployment—in browser, mobile app, or as a desktop application.
  • Support for various rendering styles—text only (command line, browser-based, or wrapped into a user interface), or fully visual (either tile-based or backdrop and overlay image-based), rendered via Canvas, WebGL, or OpenGL.
  • Support for single-player games where you control one or more in-story characters, and potentially gain NPC companions—characters who adventure alongside you at times.
  • Support for socially interactive multiplayer environments, with chat, trade systems, friend lists, groups or adventuring parties.
  • Support for various scores, leveling systems, in-game currencies, in-game stores with options to buy or sell items.
  • And more!

Inspiration

The games most inspirational to me in designing the Ghostwood Engine are:

While our focus is on Interactive Storytelling, the engine won't be restricted to this. It will be perfectly usable for simpler projects such as Kinetic Novels (a story told in a similar visual format to a Visual Novel, but which doesn't involve any choices or interactivity aside from telling it to proceed, much like turning the page in a book), or even for more complex and demanding applications such as Multi-User Social Environments like Habbo Hotel or Pony.Town.

If we achieve all of our goals, it will even be a possible basis upon which to develop Massive Multiplayer Online Role Playing Games (MMORPGs).

What is won't be.

There are no plans to develop roamable full-motion 3D environments like you would see in Unity or Unreal Engine. However, our strategy to decouple the Rendering Engine entirely apart from the Storytelling, Quest-based, and Social parts of the Game Engine leave open the future possibility of additional rendering methods, or of embedding our technology in some way within such a 3D game engine.