Stories & Songs (part 2)
Hey folks, I know it’s been a long time since I posted, but I’m here with another short exploration of MicroVenture’s story system.
This time, I will talk a bit about the extent of the story generator. From the get-go, James wanted to have meaningful stories to tie our adventures together; give something more meaningful to the player than the throw-away text you might get from another mobile game.
At first, our ultimate goal was the incorporation of MINSTREL into our game. Being that we have close ties to the creators (them being our professors and TA), we thought it would be a neat practical application of the technology for a game about stories. Quick rundown, MINSTREL is an author-level AI being developed with the goal of automatically generating engaging stories with complex plots and relationships.
If you’re interested, the paper they wrote on it can be found here:
http://dl.acm.org/citation.cfm?doid=1822309.1822321
Go ahead and read it; it’s good stuff. Don’t worry, I’ll wait…
…aight, welcome back. Anyway, that was the original plan. Note the quantifier “original”. Two realizations dawned on us as we developed the more “Mad Libs” style generator that was our initial system.
1) Writing tons of stories is not easy. Procedural story generation is HARD.
There’s a reason people have devoted their entire careers to this subject: you could spend that long on it and never really reach a conclusion. We don’t have that luxury of time. Moreover, technical limitations made the logistics of incorporating MINSTREL onto a phone alongside a game a daunting task. Our best solution would be to put it on a server, and have the game query it for new stories every time the player starts a new game.
2) What do we get out of it?
This one came to us much more slowly than its brother. How many players are actually going to read the stories? How many of them are going to get something out of the stories? How would complex plots add to a game that should take less than 10 minutes a day to play?
In short, the answers are “Most of them”, “Enough of them”, and “Not much”. We are first and foremost a video game – to ignore that fact in favor of trying to duplicate a system that took years to create that makes stories people might not even be reading would be an almost suicidal decision. We wouldn’t be a game anymore.
If you ask a person which they cared about more, who wrote a story or what happened in that story, most of the time people will care about the story itself, and not where it came from. They’re there for an experience, not a tech demo.
So, we abandoned high-level author decisions in favor of a simpler and more manageable template-based system. I hope this sheds a little light on the decisions we have made so far. Talk to you more soon.
-Kyle “I am so sick of reading right now” Huey
Whew!
We made it! Our first sprint is over!
A sprint!? I thought we gamer types didn’t run… Can you imagine mass of software engineers sprinting? It’s a scary thought, but that’s just what we did! Well … we didn’t run, but we did just finish our Scrum sprint! Instead of pushing our bodies into motion, we pushed our brains and computers to the limit over the last few weeks working on our game.
In just three weeks we planned out everything we wanted to accomplish over the next couple months, made a huge diagram of every little detail we needed to program, and finished an amazing chunk of work. While we aren’t quite done with the entire game, we now have the under-the-hood framework for the game finished, a procedurally generated level with actual game objects scattered throughout it, and a system set up to make touching a phone screen actually control a character! Pretty darn exciting if I do say so.
For the rest of the quarter we can focus on taking this foundation and turning it into an amazing experience for anyone who checks it out. I’m personally really looking forward to working on the story generation portion of our game. I really love the idea of a program generating for itself whatever it needs to keep working and a game that can create its own stories, scenarios, and levels is sooo cool! I can’t wait to hear people playing our game talking about the stories they play though.
Keep in touch! This is going to be a fun development!
Stories & Songs (pt 1): Everyone needs a hero
Hello everybody, this is story generation engineer and writing supervisor Kyle, making his debut on the team’s blog. A little about myself: I enjoy long WAAAGH!’s on the beach, watching cartoons, playing video games, and making awesome procedurally-generated RPG’s for handhelds and other mobile devices. My main duties here at Studio Mu and Microventures is to help develop the procedural story generator and integrate it into the game in a meaningful way. I won’t lie, there are scars on my heart from many a year ago, left by the vicious betrayal of a moral-choice system based platformer, but James’ vision of a beautiful future for games has brought me away from my modest plantation in Brazil for one last go. I wanted to make sure I left my mark on the development process, so I’ll be describing my work here for the next few months.
So, to kick this thing into gear, I thought I’d start off with a brief exposition of what I was thinking when Lauren and I first drafted the heroes of MicroVentures.
The Knight
During James’ initial pitches, the Knight (formerly known as Warrior) was described simply as a loyal champion of justice in service to the king. He obeys without question, and carries virtue on himself like a mantle.
A solid start, but Lauren and I felt that he was too serious in comparison to the overall tone of the game. While such an uncompromising character would make casting your typical fantasy adventures easy, it didn’t really leave a lot of play for us when it came to writing for him. So, I suggested taking him in the direction of the incompetent glory hog.
After all, how hilarious would it be to have a pompous windbag to repeatedly tear down? He gives big speaches, but as soon as he tries to actually do anything, he gets destroyed. Winner!
We immediately rejected that idea. It’s kind of overdone, and it ruined the flow of the game having this useless coward continuously clearing dungeons full of monsters that wanted to eat his succulent flesh. It would be too much of a disconnect between the player’s actions and the information presented. Still, it got us thinking…
Instead of a raging incompetent, what if he was just inexperienced? Fresh out of the academy, full of ideals and dreams, with a grade A can of whoopass to back him up? A character like that has the potential for hijinks and personal growth, without compromising the tone of the game.
The Rogue
The Rogue more or less retained her starting personality. James described her as a heartless bastard, a hardened mercenary who doesn’t care for king or country…until they name the right price, that is.
This was a pretty good start, so the question once again became “How do we make the tone of the character match the tone of the game?”
Deadpan snarker; the comic relief. The rogue became the deliverer of cynical observation and breaker of fourth walls. She is still in conflict with the principles of the other characters (believe me, this will probably come up at least once in any player’s game in the future), but she accepts that she’s along for the ride with them and occupies her time by picking on them.
The Wizard
The wizard was viewed from the start as sort of a mentor or guide to the other heroes, leading them with wisdom and foresight. He also had a great thirst for knowledge, wandering far and wide just for the sake of curiosity. The intent was that this trait would grant us a storytelling opportunity to take the player on an adventure that reveals more of the world and its lore. Powerful and insatiable, if I had to describe him with two words.
Again, Lauren and I were fairly pleased with the direction he was already aimed in, so we only needed to reorient him to match, you guessed it, the game’s humorous tone. I had a suggestion…
The wizard kept his wise, thoughtful personality, but he was a bit quirkier. His vast experience and accumulated knowledge makes him think that others can’t keep up with him, so he tends to explain things in layman’s terms, no matter how easy it is to understand the subject. He also has a penchant for the dramatic, both in how he speaks when he gets excited or when he’s casting spells. He is no less intelligent or powerful, just a bit of a know-it-all.
—–
I hope you enjoyed this little breakdown of the three main heroes. I’ll be discussing more of the writing and story generation techniques in subsequent weeks. Peace out y’all!
– Kyle “may or may not have based his decisions on his favorite characters” Huey