Complex game worlds, simple interfaces 25 Aug ’15 The whole point of egamebook is to allow for complex game worlds that are controlled by a series of simple choices. By simple, I don’t mean “easy” or “without complex consequences”. I just mean they’re not a complicated interface.1 They’re a list of 2 to 5 options to choose from. You could say that even strategic games like Civilization only present a few buttons at a time. But you’re forgetting the world map where each of the thousands of tiles is a potential option. ↩

48% Americans know what gamebooks are 10 Mar ’15 I recently ran a miniature survey to gauge interest in egamebook and to find out more about the kind of people who might be interested in it. I thought I’d share what I learned because much of it could be interesting to others.

Blog started 7 Mar ’15 Building egamebook — the system for writing non-trivial electronic gamebooks — has been a years-long journey already and I have poured lots of energy, time and thinking into it.

Egamebook

Illustration of a book

You are anxious to find out more about this “egamebook” thing. You open the page at egamebook.com in your browser and you read its contents. The following is written on the page:

Egamebook is a project which strives to bring the gamebook (aka Choose-Your-Own-Adventure) experience to the ‘new media’ platforms (mobile, tablet, web, …). True, great examples of electronic gamebooks are already out there, but they are not much more than a copy of the older, paper gamebooks – you merely choose between different paragraphs to read.

This was a necessity in the old medium. In a book, you couldn’t – for example – run a simulation and then describe its changing state in natural language. But there is nothing stopping you from this today.

Interesting. You scratch your head and read some more.

Well, actually, there is something stopping you. Existing electronic gamebook platforms are not ready for any of this. They are stuck in the book mindset. At best, they keep track of a few simple variables (e.g. number of gold coins), they do elementary computations on them, and then report the results in short messages.

Imagine reading a book where you can do much more than just choose a path. Imagine a book where your actions have realistic and meaningful impact on the fictional, simulated world.

Knight illustration

  1. You are playing as a bandit and choose your base of attack to be in a forest between two villages. Your actions lead to one of the villages having a shortage of goods, leading to higher prices there. It also leads to the forest acquiring a fame of being home to some supernatural evil, because none of your victims make it out alive.

  2. You are a starship pilot with an asteroid in tow. When confronted with a much bigger, hostile ship, you execute a maneuver which sends the asteroid flying toward it. The asteroid hits, resulting in structural damage, and disabling some of the ship’s outer systems, including the scanner and two thrusters. This allows you to make your escape.

  3. You are a boxer in the midst of a championship fight. Your opponent is shifting his weight as if to prepare for a massive left hook. You decide to call his bluff, expose your side, and deal a punch to the face in order to throw him off balance. He was not bluffing though, and before you can hit, his left hook lands squarely on your exposed face, sending you flying to the ground.

Your eyebrows go way up. Okay, you think, nice. But how is this possible? I’m sure it’s fun to dream up things like these, but the big question is whether there’s a way to actually make them work. You skip a few other examples. Then a subtitle catches your attention.

A living, breathing world – through scripting

Existing electronic gamebook systems work with either scripting languages (like JavaScript) or – more often – with something even simpler (something that only allows variables and conditional statements and not much else). In contrast, egamebook (this project) is build on Dart, which is a mature, structured programming environment. Authors can do as little as simple arithmetic assignments, or as much as running physics simulations or complex ecologies.

Illustration of a plane

There is no limit to what the authors can implement. They have all the tooling and structure that they need for implementing complex mechanics like the ones above. Actually, in this respect, the tooling is better than for many AAA games.

In the development of titles like Skyrim, most work is spent on the visual representation. The world needs to look as realistic as possible in 3D (not just graphics, but also the way people act, walk and talk, in 3D – that’s a lot of work). Scripting (including the world ‘simulation’ logic) is often done in languages like Lua, or in something like Skyrim’s Papyrus, and tends to be the last thing to worry about. In contrast – for an egamebook – scripting is all you do (apart from writing, of course), so it makes perfect sense to give it a little more attention.

An egamebook author can use libraries like Box2D for 2D physics, AStar for pathfinding, darwin for genetic algorithms, Backy for neural networks – to name a few. Authors can also easily create their own libraries, which they can test independently from the gamebook.

Let’s say you need to keep track of each city in a game world – their population, economic characteristics, diplomacy status, and much more. In a language like Dart, the complexity is manageable: you create a City class and its logic, you test it, and when it’s ready, you then use it in your egamebook.

Cleaner illustration

All this starts to feel like a lot of BS. It looks good in theory, yes, but is there actually something that works?

Current status

The system is being developed along with the first true egamebook, called The Bodega Incident.

Already, it can do all the basic stuff and much more, but it doesn’t make sense to release it just yet. The world doesn’t need another ‘okay’ electronic gamebook system. It needs a polished system, with a shining example of a gamebook.

It looks like you join a mailing list at this point (in case you’re interested in playing – or creating – an egamebook in the future).

Complex game worlds, simple interfaces 25 Aug ’15 The whole point of egamebook is to allow for complex game worlds that are controlled by a series of simple choices. By simple, I don’t mean “easy” or “without complex consequences”. I just mean they’re not a complicated interface.1 They’re a list of 2 to 5 options to choose from. You could say that even strategic games like Civilization only present a few buttons at a time. But you’re forgetting the world map where each of the thousands of tiles is a potential option. ↩

48% Americans know what gamebooks are 10 Mar ’15 I recently ran a miniature survey to gauge interest in egamebook and to find out more about the kind of people who might be interested in it. I thought I’d share what I learned because much of it could be interesting to others.

Blog started 7 Mar ’15 Building egamebook — the system for writing non-trivial electronic gamebooks — has been a years-long journey already and I have poured lots of energy, time and thinking into it.