Trolley Problem Inc is a satirical, black comedy game based on real world philosophical debates and ethical problems. It was designed and developed by Sam Read-Graves and published by The Yogscast.
During the development of Trolley Problem, I was studying games design and development at West Suffolk College in Bury St. Edmunds, where Sam was lecturing. One day in class, he approached me about a technical problem he had and asked if I could solve it and, after spending a few days trying to find a solution, it became apparent that I didn't really have the experience or knowledge to find a good solution to the problem.
It's at times like this that people reveal who they truly are. I had two options:
- Option 1. Return to Sam and explain that I had bitten off more than I could chew, and quietly skulk back to my classwork
- Option 2. Say nothing about this problem, grit my teeth, learn as much as I could about the given systems as possible and deliver a working version in a couple of weeks time
I voted for option 2.
As it turns out, writing a module library for a game engine in a language you're fairly unfamiliar with in order to use an API you've never used before at the same time as you're trying to finish a class project is quite hard. However I got it done, and by the end of my time as a contractor on the project I had built two systems for the game:
The first was the stat tracking system. If you've ever played any of the episodic Telltale adventure games, you may remember that at the end of each chapter you get a set of graphs telling you how your decisions skewed in the context of the total playerbase. I wrote a version of that system which is used in Trolley Problem.
The other system I built was the Twitch integration, where players could let their chats vote on which option to take in a given encounter. This is one of the main systems attributed to the game's success. Of course it was Sam's system, I just implemented it. But I feel it's worth being proud of.
See the project!
The Stat Tracking in Action
Slimecicle using the Twitch integration during his stream