Posted December 09, 2023 by aletail33
#procjam-2023 #story-generator
Upon entering the 2023 Procjam jam, I had the idea of generating a story as my entry. I have actually drawn out numerous documents over the years with ideas on how to do this but never really sat down to implement as I would always get stuck. So with this project I decided to shrink the scope way down and settled on producing a “beginning of a quest”.
So the idea was set, the big question was “How was I going to build this out?”. I didn’t have a ton of time to work on this, I thought AI techniques could be useful but that brought up a lot of questions…How to integrate with Godot? Making api calls in a game didn’t make a lot of sense to me, etc…So I decided the brute force attack is the way to go, get something together then iterate over it to see how far I can take this.
I started with writing out a pretty generic “quest” introduction, a group of adventurers meeting in a tavern. I then just started iterating over different portions of the story, what can be changed here and will it make sense, what sections can be 100% changed and everything makes sense.
I ended up generating characters, taverns, cities - mostly in name, which is easy to swap in and out of a story. I then decided to add some flavor, by adding generic descriptors to the tavern, describing the weather, etc…I also started swapping out words and phrases at random to make it more varied.
It all worked pretty well together, though not as varied as I liked. I think I could spend another month on this and it still wouldn’t be good enough in my eyes.
With that said here is what I like:
Here's what I don’t like:
In closing, I am pleased with the result. I learned a lot and figured out how hard it is to produce a natural language generated story. I will take what's here and continue to iterate on it in future projects. I see using this in a generated world, where random simulated elements can play a big part in generating stories, which in the end will make it even more varied.
Hope you get a little enjoyment out of this, I did for sure! Also please don’t judge my writing skills, I am no writer :)