MUDdying the waters: Creating text-based adventure games using Drupal and Slack

In the 80s and early 90s, I played a lot of text-based games - single-player like Zork and Colossal Caves, and multi-player online games on BBSs like Kyandia and Infinity Complex. I created an engine for using Drupal to author and play these games, using Slack as the player interface.

Applying these behaviors in your own applications doesn't need to be for something quite so nerdy as re-living those days. You'll learn how to:

Create a custom plugin manager and support custom plugins and annotations
Dynamically load and execute plugins based on user input
Create and subscribe to custom events
Use migrate to import data into the site in multiple stages
Create a custom migrate source to handle loading data from ancient source files, such as Galaticomm MSG files and ZIL (Zork Implementation Language) files.
Create a Slack application and point it at your site
Respond to incoming Slack slash commands, incoming webhooks, and events
Send messages to channels or users in Slack
This talk is for people who are interested in Drupal module development and Slack integration, but don't know where to start, people who find it helpful to learn from functional projects, or people who have struggled with the intricacies of creating complex Drupal-based infrastructures with an eye towards re-use and extensability.

...Or, people who just want to play a mostly-functional multi-player Zork game (jade key not included).

Jonathan (Jack) Franks
Senior software developer @ Breakthrough Technologies

Drupal is a registered trademark of Dries Buytaert.