Inspiration
Last year our company, Trineo, was acquired by Traction on Demand. Our Slack Workspaces merged, and our small team of 80 found ourselves in a much larger Slack environment of 1,300 people.
We pondered how to introduce ourselves to the wider company. We wanted to do something fun, memorable, and worth your time. We wanted share a slice of our culture and introduce our people.
We decided to create an original adventure game, and make it playable within Slack.
What it does
In the spirit of classic text adventure games, you navigate a world, collecting items, solving puzzles, and unlocking doors.
As you progress through the game you encounter us as characters. Our CEO might make you a coffee on our trusty office espresso machine, which you can use to resuscitate our director of engineering.
How we built it
The game grew out of a LucidSpark map, with contributions from across Trineo. The story grew organically, as we tried to incorporate a wide range of ideas. There are 11 items and 126 scenes in the final game.
We built an engine that empowered our team to create unique items and scenes. We taught others how to add content. Scenes were prototyped in Slack’s Block Kit Builder. Contributions flowed from throughout the company – from puzzles to artwork, photos and memories. We weaved these into fun narratives and play-tested them with volunteers.
We used a separate Slack instance to share updates with a dozen or so beta testers, pushing out multiple releases a day. Beta testers had tools to leave feedback or edit scenes as they played. We also built tools that automatically detected issues like broken links, found inaccessible scenes, and drew diagrams of possible pathways. Our CI/CD pipeline tests ran these tests with each change. Each addition we made was reviewed by at least another person, giving opportunities to catch spelling mistakes or make suggested improvements.
The game was written with Bolt and TypeScript, running on Heroku.
Challenges we ran into
We really wanted to put the power of Block Kit in the hands of creators. For those that could write JSON, Block Kit Builder was great. For those that couldn't, we worked with them to craft the scenes in Block Kit.
Accomplishments that we're proud of
Hundreds of people played the game. We had positive feedback from everyone who played, and we achieved our goal of a memorable introduction. We also raised money for charity in the process.
What we learned
Block Kit and unfurling are incredibly versatile technologies. You can really be creative.
For me, the biggest takeaway was seeing an old lesson in new light: constraints drive creativity. The engine was limited. It boiled down to customising a scene based on what items somebody was holding or missing. There were limits on how many action buttons you could display or items you could have in your inventory. But what people did with the game truly surprised me. One puzzle in particular used Block Kit in an ingenious way. It hadn’t occurred to me you could use the engine in that way. I love that – technology whose use exceeds your vision for it
What's next for Slack Adventure Game
Although the engine could be reused to develop further games, we don't have any active plans to do so. We mostly wanted to share our experience with you. Perhaps it will inspire others to use Slack in similar ways.

Log in or sign up for Devpost to join the conversation.