Wednesday, 18 January 2017

Telling a story; Creating a Compelling Narrative.

Telling a story; Creating a Compelling Narrative.

In this blog I will talk about my own recent brush with story telling and go on to talk about how tools from creative wring can help you to better author the narrative in your games, whether they have a traditional linear narrative or a procedurally generated interactive narrative.

Narrative and structure in traditional fiction 


last week I started writing a story set in the world I'm developing for my game Vinland: 1936.

I hope the story will help me to flesh out my game world and develop my own expanded universe which will be a good place to set my games in the future.

After about a week of work, on and off I've progressed the story to outline stage. For each character thread I have half a dozen chapters which plot a course through the events of the story. Each thread is told from the perspective of a different character.

Actually I started writing as soon as I had my outline, but I've since gone back and deleted what I wrote. The problem was that the scenes just weren't compelling. They read like summaries of a boring office meeting or lecture.

Why? There simply wasn't any conflict, the characters didn't have clear goals, and when they did they achieved them too easily.

I spent some time talking to my old school friend, a Teacher of literature in the UK. He teaches creative writing and has written his own book, which I read last year called "Ape Flesh".

I told him I had actually looked at some online "How to..." posts about writing and they suggested using certain tools. Not computer apps, but formalist tools. Things like the "action-reaction cycle" and "Goal-Conflict-Outcome". I wanted to know if these were things that writers actually use.

Yes, it turns out they do.

Here's a pair of scenes from my Friend's scene map which he was generous enough to show me:

What is a scene map? Well it's what a novel is before it's written. It's an outline of each chapter, scene by scene.

You can see that scene number 69 is an "action" scene. This doesn't mean that it contains action, but that it is the POV character doing something (or trying to do something) while scene 70 is a "reaction" scene, i.e. the POV character reacting to what's happened.

The Action scene can be broken down in to three components:

It has a Goal; to get to the van. 
You need a goal or else your story becomes directionless. The characters float around not really knowing what they are doing (pretty common in bad novels).

It also has a Conflict; It's difficult because of darkness and mud. 
If the goal was too easy then it's not an interesting scene. Conflicts help to make the story interesting.

Finally it has an Outcome or a "disaster". They get separated.

Not every scene has to end in a disaster, but if it doesn't, and the character achieves their goal, there should be some bad side effect that negates their victory. If there's no disaster then the scene stalls and the book becomes difficult to read.

The reaction scene also has three components:

First is the Reaction; Eva is scared.
It's important to know how your characters are feeling, how they deal with stress and failure. This helps the reader to empathize with them. The reaction stage is a place you can do this without breaking up the flow of the story.

Next is the Dilemma; Is she lost?
Think of this part as the character's thought process. How do they go from failure to success, how do they move past their current obstacle. They have to identify the obstacle first and then come up with some possible choices.

Lastly is the Decision; Lewis finds her and they continue to the van.
The character has to choose a new goal. This will take you back to the start of the next Action scene.
The example here shows how the decision doesn't always have to come from the character. An outside source can force an unexpected result to the dilemma, for good or bad.

Here's one of my scenes written in the same way:

Now it is starting to sound like a real story!

Action/Reaction cycle in games


Anyway, this made me think about how this can be useful not just for novels but also for making games. This month's Blender Game Making Challenge is soon to start and the theme is "Tell a story".

So how do games tell a story?

Sometimes a game has a linear narrative, just like a novel. Other times it has a non-linear or interactive narrative. The tools I talked about above can be useful in any case.

If you google "Action-Reaction cycle in games" You will find a lot of articles on the subject with graphics like this:

Actually this structure is very naturally applied to games. It's how games work. Consider the following scene map:

To be complete we should consider the situation from the AI's (or GMs) perspective. it also has an action and reaction cycle which runs parallel to the player's. That's what's shown in the Action/Reaction/Processing/Decision cycle graphic above.

This is non-linear, interactive storytelling, a story that writes itself through the player's actions. So in fact we can't describe it as a linear map at all, we should use a tree:

This type of action-reaction cycle can be authored, you can design the game this way, or it can be procedurally generated. Because of the way the branching of decisions could easily become unmanageable (1>2>4>8>16>32>64>128 etc...) procedural generation is an option.

If you're going to author the story directly (by designing the levels and story by hand), you need to find a way to limit the branches of the story. This can easily make the game seem restrictive if it is done wrong, you might make it so there is only one dungeon accessible at any time for example. It would be better to make sure there is something in the dungeon that you need before you can realistically visit another one. Character levels and level appropriate monsters make a great organic method of channeling the player. In games without character levels you could use a MacGuffin.

Even if you're using Procedural generation, limiting narrative choices can be an important part of your job. Procedurally generated games can easily become boring if there is no clear narrative thread, if there's no goal or direction, or if the generated content is too random (see no-man's sky).
Again, character levels can help. Equipment and loot can be used as ongoing goals to drive the player onward. Creating prefabs or epic items can help to stop the game from being too random. This is why the procedural generation model works so well in roguelikes which have so many of these elements.



If you're making a game, whether a linear narrative like a point and click adventure, or a non-linear narrative like a roguelike it pays to think about the action-reaction cycle:
  • Think about character goals: Does the player have a clear idea of what they are supposed to be doing fro the start?
  • Think about conflict: Is the game too easy or too hard? This can make it boring.
  • Think about disaster: Does the player have something to lose, or can they just reload a recent save game? If you haven't explored the idea of permadeath, now's a good time to look it up. 
  • Think about Reaction: How does the game make the player think and feel? Do they react to it? Maybe you need to think about atmosphere. 
  • Think about dilemmas: Does the player have an meaningful decisions to make? Does what gear they use or what tactics they use make any difference to the game?
  • Think about decision: If they have decisions to make, are they too easy? Are there too few meaningful decisions?
I think that taking this approach could help you to better author your games so that they are compelling and interesting. A game which you can't put down.

Thursday, 12 January 2017

Modernizing the UI.

I'm revisiting the vehicle editor currently, partly because of some issues what have cropped up with how vehicles are saved and loaded. If I'm going to go back and dig in to it that deeply, it's better to rewrite it.. and update the visual elements at the same time.

Here's a preview of some of the elements of the UI, I've simplified and cleaned them up a little. I think it looks better already.

On the writing front I blocked out the chapters for the story, I'm pretty happy with it. This is the first time I've approached writing like this, with writing a chapter summary for each chapter and then going back and expanding the scenes to fill in the chapter. It makes much more sense than just starting writing from page one and going with the flow. That's why all my previous stories failed probably. :)

Sunday, 8 January 2017

Happy People have no Stories.

OK, following an exchange on Deviant art, I've decided to write a short story:

S7alker117 That sounds really cool. Looks like the kind of setting where you could write some great stories in, a little in the line of 1632, dunno if you know the series?
pickledtezcat I hadn't heard about 1632, but I just looked it up. Sounds interesting.
I actually have got a plan to write some stories in the setting, and possibly open it up to anyone else who wanted to.

I love the alternative history novels of Harry Turtledove, the way he uses ordinary people who can enter and leave the narrative at any time instead of main characters who can't die.
It allows him to really put in the background details while sketching out the overarching themes and history. (1632 sounds somewhat like this from reading the wikipedia article)

The thing I love about his books the most though is that you never know who is going to win. It's not like real history, where we already know who won the second world war. With Alternative history you get a real thrill from hearing the reports of a battle, or watching the ebb and flow of the fortunes of war over time. (I especially like that it's only fiction. No real people suffered and died, it's just imagination).

You don't get burdened with hindsight, you're not constantly thinking "What an idiot! He should have seen that coming!" Characters can make mistakes and it's normal and human of them.

It's something I really enjoyed while reading the Battletech novels too. Though the early BT novels had their share of "super" heroes who never made mistakes and never made bad decisions, the middle period had tons of great characters who acted as best they knew how, but still ended up failing sometimes.

Lots of modern stories, (movies, Video games and novels) fall in to the trap of "the chosen one" trope. The main character is special and unique, can't die, always gets out of every bad situation (often resorting to deus ex machina) and always gets the girl. I'd like to write some stories where the characters are ordinary people with ordinary stories, but living in a time and place we don't have any foreknowledge of.

I want to introduce the setting of Vinland 1936 with a work of fiction which will set the scene. The characters will talk about other places, recent events, current political and social trends and reveal the cultural bias and prejudices of their era and locales.

There will be several main threads, each one told from the POV of an ordinary soldier or civilian. Right now I have Three of the threads planned out with locations and characters. The individual threads will be quite short, and the story will be made up of the threads intertwining.

It will be set before the events of the game, in 1922, the end of a long war between the Holy Roman Empire and the Arab/Turks.

I downloaded some free writing software, chosen almost at random:

I like the way you can organize your scenes, your characters and locations and see an overview which lets you keep it all under control. It's a bit outdated but I'll give it a try and if I like using it I may get something better later.

I suppose this counts as wasting time, but it's something I've wanted to try for a long time. Let's just see how it goes. :)

Saturday, 7 January 2017

What is Vinland 1936?

S7alker117 asked me today on Deviant art:

What's the story behind this project, if I may ask?

To try to lay it out as briefly as possible:

It's an alternative history "... if Alfred the Great had been defeated and England had become The Daneland".

From this base, using Anglo-Saxon and Celtic Slaves, Viking settlers were able to colonize North America. However, the little ice age which brought viking occupation to an end in our own history left this fledgling civilization isolated from Europe for around 300 years.

During that time Christianity developed differently, partly merging with the pagan beliefs of the viking settlers and partly being subverted by the Vinlanders as means of controlling their slaves and lower classes.

There are some other departures from our own history;

The Eastern Roman Empire and the Holy Roman Empire of Charlemagne were (re)united by the political marriage of Charlemagne of the Franks and Irene of Athens to form a pan European Empire which endured in one form or another until the 20th century under the leadership of the Pope of the Catholic Church and the Emperor.

In the far West, the Battle of Toulouse was lost when Duke Odo was killed in a fall from his horse weeks before, and later the Battle of Tours was a draw. The Iberian peninsula remained a part of the Muslim world to the present day with the Franks directing their attention eastwards towards their new partners in Constantinople.

The Arabs and Turks failed to capture Constantinople, (defended as it was by both Franks and Byzantine Greeks) and later crusades pushed Christian influence down towards Jerusalem. But in the East, Turkish influence extended up around the black sea so that most of Russia is ended up a Muslim confederacy of Turkish/Mongol/Cossack states. 

There wasn't any colonial age for the Europeans (with Spain and England out of the picture), but Muslim expansion was faster through Africa and South East Asia.
South and Central America was forcefully colonized and converted by Muslim settlers from Iberia.

North America is divided between the Vinlanders in the North, (descendants of the original Norse and Danish settlers) and Aremorica/Avalon in the south, a lose collection of states that arose during a rebellion of the slaves (which by that time included Native Americans, and early Muslim settlers).

As the end of the 20th Century approaches the Holy Roman Empire, the largest, richest and most powerful nation on Earth, (driven by a belief that the end times are approaching) begins a series of crusades against the enemies of Christianity. These include the Southern and Eastern Turks, the Heretical Christians in America, the Moors in Spain and increasingly break away regions of the empire itself.

Technology levels will be similar to our own history at this time, with the Europeans just having fought against the Southern Turks and Arabs in a bitter battle of trench warfare around Jerusalem. The introduction of tanks and early aircraft by the Europeans helped to drive the Turks back as far as Arabia and Persia but their own hastily introduced versions stabilized the front before it could collapse. Spies from Vinland acquired examples of these new wonder weapons from a deserting Mercenary company employed by the Turks.

The Holy Roman Empire has recently come under the influence of an aggressive and talented Prince from the province of Saxonia, this Emperor has been working together with a Pope who is a strong advocate of the crusading principle, and has been remodeling the Imperial army after a more disciplined model developed by German soldiers who formed the backbone of the Capture of Jerusalem several years before.
The army is moving away from its Frankish traditions of personal bravery and Honor, and towards a system based on efficiency, discipline and technological advancement.   
After several years of intense military buildup, the Empire is getting ready to launch an initial invasion of Marklund in Northern Vinland, secure bases in the Caribbean, put down a rebellion in Scandinavia, attack the Eastern Confederacy in Russia and stage a number of attacks in to North Africa and Iberia. 

The Turks, initially splintered by their defeat at the Battle of Jerusalem, have come together under a Southern Caliphate, stretching from Iberia in the West to Persia in the East. This new nation is fragile though, since those regions are a mix of Sunni and Shia Muslims who are united only in their hatred of the Franks and Germans.

In the New World a Charismatic leader has risen in the South, determined to forge a new Celtic Nation across clan divides. The Celts, previously divided into several Castes or Clans by religious dogma which forbade inter clan marriage have gone from being a collection of minorities ruled by the more numerous and more united Anglo-Saxons Avalonians, to a strong majority in rebellion against their rulers. 

The Avalonians have turned to the Holy Roman Empire for assistance and have offered a base from which to launch further operations in to North America. The Vinlanders have made common cause with their old enemies, the Celtic Amoricans, and are getting ready to defend from both the south and the North.

This background sets up a number of theaters for warfare, such as: 
  • The jungles of South America, 
  • The Islands of the Caribbean, 
  • The cold North of Vinland and Scandinavia, 
  • The hot south of Amorica,
  • The Dry desert of the Middle East and Arabia.
There is a lot of scope for different factions, including at first:
  • The Holy Romans,
  • The Southern and Eastern Turks,
  • Scandia and Moscova,
  • Vinland,
  • Aremorica and Avalon,
There are also other factions which could be explored later, such as the East Asian Alliance (Japan and Korea engaged in a colonial effort on the west coast of America), the Mexica Sultanate (The descendants of Aztecs who converted to Islam when the first Muslim settlers/ invaders arrived) and several other Native American Tribes, who with earlier contact with Europeans gained better resistance to disease and quicker technological development, but still lag behind somewhat compared to the Vinlanders.

If the timeline extended in to the later part of the 20th century other areas for expansion include the continual low intensity warfare between the Hindus, Sikhs and Muslims in India. Or the slow burning civil war which afflicts China. Or the various proxy wars in South East Asia and Africa which break out as the winners of the early wars of the century become Global Superpowers.

Friday, 6 January 2017

More Artillery!

I got the artillery converted over to act like a hybrid unit.

I really like how they turned out, though it did expose some messiness in my code. After cleaning up some junk I feel like the project is pretty well organized so far.

Here's an animation of the light artillery:

And the heavy artillery:

With artillery you can set your crews to defensive stance to protect them from enemy fire, but it makes their rate of fire and movement rate slower.

I'm considering allowing artillery to be sandbagged (fortified) and camouflage nets to be deployed when in sentry mode, as a special skill for high level units.

Thursday, 5 January 2017

Stress Test and Artillery

I did a stress test with infantry yesterday:

The important bits to look at are "Logic" which is the performance of my python scripts and "Rasterizer" which is how long the scene takes to render.

At this point with around 375 infantry men in the scene Rasterizer is proving a much bigger drain on resources than Logic. In fact Logic costs are really very low indeed. They'd have to double again before you'd get a loss of frame rate from 60fps. That's great news!

Some other things I worked on this week:

  • Adding the code for units to use binoculars. This allows you to see further but with a limited field of view. Good for scouts or officers.

  • Began working on artillery units. For now they work almost exactly like vehicles, the infantry modes are just static meshes. I hope to make them a kind of hybrid unit with mesh guns and sprite crews. But for now they work like this.

The have to be deployed before use, and stowed for transport. This takes a little time, depending on the weight of the unit, so it should be possible to flank enemy guns before they can turn and fire on you.

Sunday, 1 January 2017

Happy New Year!

Happy New Year!

It's hard to believe I started the germ of an idea that became my current project over 2 and a half years ago!

Over the last few weeks I've done a lot of work to get the UI up and running and to get infantry movement modes functioning.

You can watch my latest video Diary here.

And here's a GIF of the infantry movement modes and UI status bar in action: