Planting SeedStories

I'm sitting here porting the PlantSeedStory code and I realize that it's garbage. My scheme, involving frequently updated CASE statement in Pascal, is inaccessible to the storybuilder. I need a system that allows the storybuilder to declare that something is a seedstory. The problem is, every seedstory has all sorts of special constraints; any general-purpose language for expressing those constraints is going to be a bear to design and a pain to learn.

 

A seedstory would have to be defined in the Erasmotron. It would require a variety of assigned parameters. First, of course, is the flag indicating that this is a potential seedstory. Then we have to assign specifications for the kinds of subjects and direct objects &emdash; sheesh, what a mess that is. Then there are constraints on any indirect objects.

 

Perhaps the seedstories should be fixed. That would make life so much easier. We simply create a huge pile of possibilities, and then pick a random number and let er rip. After all, there aren't that many possibilities.

 

OK, so how do we edit this pile of seedstories? I see two ways.

 

The fast easy way is to have a text file specifying subject, verb, dirobject, and indirect object. We just read them and run.

 

A second way is to build a seedstory editor which creates and displays the seedstories in primitive format.

 

You know, we could expand the system with the use of three pronouns: Anybody, AnyMale, and AnyFemale. This would give us some simple logical constraints.

 

Aw, hell, for now I'm going to do it with a simple text file. Format: subject, verb, dirobject, indobject. Delimited by spaces. We'll do pattern matches on the strings to extract the values. I will need a new data structure giving the names of the characters, as well as the three pronouns.