Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Story Generation in Code  (Read 1483 times)

iluxan

  • Bay Watcher
    • View Profile
Story Generation in Code
« on: August 27, 2007, 01:57:00 pm »

The idea:

The game engine will create a readable transcript (in English) of the events that it considers important, producing a continuous story.

At first this can be applied to individual significant events or occurrences - the duration of one battle, events surrounding a festive event or a death.  If this works, can be extended to the whole fortress's duration.

This may sound bizarre at first, but hear me out:

  • ThreeToe's focus for the game as an environment where real meaningful stories can be generated (my interpretation).
  • There is already a great amount of detail being modeled by the game, including thoughts, feelings, motivations; costumes, positions/locations/minute actions of the participants; details of battles.
  • Some of the details that can be modeled are very hard to communicate to the player.  Looking at the latest story "Wedding of Doom", I can see lots of interesting things that would be near impossible to convey meaningfully to someone playing the game.  So this is a very fertile ground for generating stories.

The approach I'm proposing would basically add a new layer to the game, where after an event happened in real time, a generated story would remain, recording the events.  Could be really interesting once it starts to work.

The final part is that even attempting to do this in itself would be a great step in the experiment of computer-generated stories.  There is research on the subject, academics constructing artificial environments just for the purposes of story generation.  But their environments are very limited, artificial.  You, however, have already done all the work of constructing a great super-detailed environment where lots of thoughts and motivations of the participants are marvelously modeled.  What remains is building a filter on top of that to evaluate "significance", and finally adding the natural language generation code (which is non-trivial, of course, but could be well worth the effort).

Please, send any and all suggestions, I would really like to find out what other people think (especially what Toady and ThreeToe, of course).

Logged

Reign on your Parade

  • Bay Watcher
    • View Profile
Re: Story Generation in Code
« Reply #1 on: August 27, 2007, 02:25:00 pm »

We support this idea. It's a very good one. Perhaps you could imput what values you considered storyworthy... perhaps you really like this one dwarf and want to know his daily exploits: Tell the game to focus stories on him!
Logged
ou''re just as free to state your opinion as I am free to completely disregard it.

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: Story Generation in Code
« Reply #2 on: August 27, 2007, 02:34:00 pm »

This is one of the primary reasons why we set out to make this game in the first place, and how we eventually want the Legends screen to convey information (as well as in-game books, songs, and other media).  It'll just take a while to get there, not only because the task itself is difficult, but because there needs to be sufficient relatively unchanging game mechanics in place for the stories to be created.
Logged
The Toad, a Natural Resource:  Preserve yours today!

iluxan

  • Bay Watcher
    • View Profile
Re: Story Generation in Code
« Reply #3 on: August 27, 2007, 03:14:00 pm »

Right!  Good to hear that I got the general gist of the project correct.

I guess my suggestion is, in the spirit of iterative development, is to try to implement some parts of this earlier on, to get a feeling of how it's working and which direction to go in.  And the added benefit is that we, the end users, would get to see it sooner  :)

Although of course I understand your reluctance due to continually changing game mechanics, algorithms and data structures.

Logged