Skip to content

Instantly share code, notes, and snippets.

Created August 25, 2015 19:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save SharpCoder/7f2866c4a72a6735f5ba to your computer and use it in GitHub Desktop.
Save SharpCoder/7f2866c4a72a6735f5ba to your computer and use it in GitHub Desktop.
NaNoGenMo 16


Generating a story will all be piped through the architect. A system that essentially takes a cahracter/action tuple and outputs a narration that describes the event. The difference is, the architect will assign a positive or negative rating to the character/action tuple which can then be fed back into the character for learning. The character will determine whether this action was appropriate at the time and, given various environmental variables, will hopefully learn to make actions that advance the story.


All characters in the world will have the ability to invoke an action. Tentatively, these actions will include the following:

  • Use an Item
  • Drop an Item
  • Pick up an Item
  • Attack Another
  • Move about the World
  • Talk Positively to Another
  • Talk Negatively to Another

Once an event is taken, the various world parameters will be fed into the characters Neural Network which will help it learn which actions are better to take given the current variables. Other attributes that a character may have include the following:

  • Disposition towards Another
  • Health
  • Weapon Capacity
  • Location on the Map
  • Attack Power
  • Defense Power
  • Hunger Level

These attributes can change by taking actions.

The Architect

This is a sybsystem that takes a character/action tuple and describes the outcome while assigning a positive/negative attribute to the action. Attacking another may be positive or negative depending on various attributes that the person in question has. Essentially, the outcome will have to be hard-coded (initially). The story itself will be programatically determined. If it's a survival story, then anything that causes harm to the player is considered negative.

One alternative idea is the architect playing out an action and iterating into the future to see the outcome of the action. In this way, the architect can more accurately predict the positive/negative influence of a given event.

Initial Story

The first story will be a zombie survival story. A player will be placed on a map and must survive as long as possible. Either finding their savior situation or dying in the attempt.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment