Building a Digital Escape Room

What is an Escape Room?

Escape rooms are a whole new way of experiencing storytelling and of adding gamification to your classroom. Typically, they are a room in which people are locked in order to play a game requiring them to solve a series of puzzles within a certain amount of time to accomplish a goal, typically finding the key to unlock the room. 

In a digital scenario, the escape room is also based on unlocking rooms – virtual rooms in the form of locked pages. Participants still need to solve puzzles, collect passwords, decipher codes, etc.

Determine Your Purpose

The first step is to determine the purpose of your escape room. What do you want students to get out of the Escape Room? Is this a fun way to review material at the end of a unit, or is the escape room the learning itself? This will also determine how big the escape room is and how long it will take to complete. A review type of escape room is designed to take one class period, or at most two, and have students apply their learning by solving puzzles. A larger, longer escape room, on the other hand, could be designed to BE the learning so it contains multiple pages and puzzles that will take students many class periods to complete. This could be used for a unit, or as my goal is for my Around the World Adventure for the Grade 12 Ontario Literacy Course, a full subject learning experience.

Select a Theme

First, you’ll pick which epic, themed escape room you want to play! Themes range from exciting and action-packed to silly and light-hearted. 

Some missions are about escaping the room, like in a prison break room. Other missions might not be centered around escaping, but instead, you might be completing a heist or launching a Martian spaceship.

Here are some other popular themes:

Prison break
Treasure hunt
Bank robbery
Outer space
Secret agents
Ancient Egypt
Murder mystery Horror/supernatural
The roaring 20’s
Witches and wizards
Alien spaceship
Mad scientist’s laboratory
Haunted house
Arctic expedition
Greek or Roman mythology
Ghost ship
Jungle or safari
A table listing theme ideas

I chose to do a traveling based escape room as visiting sites around the world offers a rich array of resources to use in the escape room narrative and challenges.

The introductory page of my Around the World Escape Room for the Ontario Literacy Course

Write the Narrative

PROMPT: Write an Escape room narrative, including code words and puzzles, that involves traveling to famous sites around the world

You and your team have been hired by a mysterious organization to complete a series of challenges at famous sites around the world. The challenges will test your problem solving skills and knowledge of each site. To start, the organization has sent you to your first location: the Great Pyramids of Giza.

Upon arrival, you find a locked door with a keypad. The keypad has the following message:

“The code to unlock the door is the answer to this riddle: I am taken from a mine, and shut up in a wooden case, from which I am never released, and yet I am used by almost every person. What am I?”

The answer to the riddle is “a pencil.” Inputting “pencil” into the keypad unlocks the door and you enter the first room.
The room is filled with puzzles and artifacts related to the Pyramids. You see a note that reads:

“Welcome to the Great Pyramids! To proceed to the next location, you must find the code word. Look for the artifacts and solve the puzzles in the room to find the word. Good luck!”

One of the puzzles involves arranging ancient Egyptian hieroglyphs to form the code word. Another puzzle involves finding a hidden message in a papyrus scroll. Solving these challenges reveals the code word: “Pharaoh.”

You input the code word into a portal device and are transported to your next location: the Taj Mahal in India.

The process repeats at each location: you arrive, solve puzzles related to the site to find the code word, and use the code word to transport to the next location. The other locations include the Colosseum in Rome, the Great Wall of China, and Machu Picchu in Peru.

Can you and your team solve the challenges and make it to the final location? The fate of the world depends on it! Good luck.

Sidebar: A Little Bit About ChatGPT


  • Corpus: the library of text a language model learns from.
  • Encoder and Decoder: The encoder is responsible for analyzing and “understanding” the input text and the decoder is responsible for generating output.
  • Decoder: a decoder generates the output sequence based on the output from the encoder and the previous output tokens.
  • Language models can learn a library of text and predict words or sequences of words according to how likely a word or sequence can occur (probability).

Important takeaways and the limitations of GPT models (from Guodong (Troy) Zhao article – see below)

  • ChatGPT is made to take in a sequence of text and output a probability distribution of tokens in the sequence, generating one token at a time iteratively, in other words, the text that ChatGPT gives is based on the probability of that text showing up next. In a much more simplified model, think of texting and how your phone will give you suggestions for the next word. That is based on probability distribution.
  • Since it doesn’t have the ability to search for references in real-time, it’s making predictions in the generation process based on the corpus it has been trained on, which can lead to false claims about facts.
  • It’s pre-trained on a huge corpus of web and book data and fine-tuned with human conversation examples through supervised learning and reinforcement learning from human feedback (RLHF).
  • Its capability is mainly based on its model size and the quality and size of the corpus and examples it learned from. With some additional supervised learning or RLHF, it can perform better in specific contexts or tasks.
  • Since the corpus comes from web content and books, they might have biases that the model can learn from, especially for social, cultural, political, or gender-based biases, resulting in biased responses to some requests.

Further Resources

Some Pointers for the narrative:

Don’t make the story too long. Keep it to a 2-minute read or around 200 words so you will want to make every word count. For my longer escape room, the narrative is serialized with a new piece added with each challenge (which happens to coincide with a move to a new place).

Add some mystery. People love mystery and fantasy and have an innate curiosity about the world and how things work. Our minds are designed to solve problems and make sense of things. Mystery also allows us to escape reality. (Maybe this is why students like them so much – they don’t feel like school!)
E.g. You have arrived in India. The journey was long, but uneventful — except for that strange looking man on the ship. He was odd, and kept staring at you. Was that something to worry about? Or are you just being paranoid?

Put on the pressure. Escape rooms are all about testing problem-solving abilities. In face to face escape rooms you work against the clock. You could use this strategy in a virtual experience as well by setting deadlines for the “room” to close (closing the dropbox by a certain date and time or putting a time limit on a quiz, for example). If time limits aren’t your style, then you can add pressure by dangling a carrot – this will open the next challenge, or you’ll receive an award or badge.
E.g. Pay attention to the story because you can’t go to the next challenge until you answer the riddle! You will be able to collect hints from the story to solve the riddle to open the chest.

Create the Challenges

Find puzzles and challenges that match your story line. Fending off a Zombie attack doesn’t really go with launching a mission to Mars (unless the mission to Mars is to escape the Zombies).

Another way I utilized ChatGPT is having it help me write quiz questions. I prompted ChatGPT to write a specific number of multiple choice questions based on an article that I pasted in after the prompt. This was a really quick way to create questions and with more practice, I think I could hone the prompt to create different types of questions and questions based on specific details I want to focus on.

Vary the clue types to suit different skill sets

Vary your clue types to accommodate different strengths and learning styles. For instance, incorporate allusions to pop culture, literature, and science, use both math and word puzzles, and others that are trivia or knowledge based.

There are a ton of puzzle makers on line and Matt Miller of Ditch That Textbook has collected a wealth of them in this Wakelet collection:

Some of the items in the collection can definitely spark some ideas, for example, how about a Tweet creator. Seeing this inspired me to include a tweet in my storyline for the Around the World Adventure.

Part of the narrative from my Around the World Escape Room that utilizes the Tweet Creator

Some other puzzle ideas:

  • Compose a message with invisible ink – you can do this virtually be creating a coloured text box and writing in it in the same colour as the background. Students will only be able to read the message if they highlight the writing with their mouse.
  • Find a hidden clue
  • Leave a diary lying around.
  • Use a letter lock.
  • Solve ciphers and codes.
  • Write instructions in a foreign language.
  • Word puzzles.
  • Math problems.
  • Morse code.
  • Logic puzzles.
An example of a hidden message

More Resources for Puzzle-making:

Putting it all Together in Brightspace

Putting it all together in Brightspace involves creating HTML pages for each challenge. The page should include your narrative and associated puzzle that needs to be solved in order to unlock the next room. 

An example of a page for one of the challenges in my Around the World Escape Room

There are a variety of things to do to accomplish this. 

  • use the Quiz tool
  • use the Assignment tool
  • complete a Content page
  • contribute to a Discussion
  • and many more

All of these are done by using release conditions. 

Release Condition Types

Here are all of the different types of release conditions that can be used to build a course. 


You can release content if a learner:

  • submits to a folder
  • receives feedback on a submission
  • scores on an associated rubric
  • doesn’t submit to a folder


You can release content if a learner:

  • earns a specific award

Awards earned


You can release content if a learner:

  • completes a checklist
  • completes a specific checklist item
  • doesn’t complete a checklist
  • doesn’t complete a checklist item


You can release content if a learner:

  • gets enrolled in a specific group
  • gets enrolled in a specific org unit/course
  • gets enrolled in a specific section
  • has a specific role in the current org unit/course
  • has been enrolled in the course for a specified numbers of days (as a minimum)


You can release content if a learner:

  • achieves a competency
  • achieves a learning objective
  • scores on an associated rubric
  • has not yet achieved a competency
  • has not yet achieved a learning objective


You can release content if a learner:

  • visits a content topic
  • visits all content topics
  • has not visited a content topic
  • has not completed a content topic
  • has completed a content topic


You can release content if a learner:

  • authors a post in a discussion topic
  • scores on an associated rubric
  • has not authored a post in a discussion topic


You can release content if a learner:

  • receives a specific grade or grade within a range on a specific grade item
  • score on an associated rubric
  • has not received a grade
  • has their final grade score released to them


You can release content if a learner:

  • receives a specific grade or grade within a range on a specific quiz
  • completes a quiz attempt
  • receives a specific grade or grade within a range on specific questions within a specific quiz
  • scores on an associated rubric
  • has not completed a quiz attempt


You can release content if a learner:

  • completes a survey attempt
  • has not completed a survey attempt

Creating Release Conditions

How to Add Release Conditions in the Content Tool

Adding release conditions to content folders (and other activities within the VLE) and topics allows educators to control when and how students see pieces of content within a course. Essentially, you can hide different pieces of content until students meet a condition or you can release content to specific groups of people or individual students. You can also add more than one condition to any given item and either require ALL conditions be met or ANY of the conditions be met

To get started with release conditions, navigate to the content topic that you want to conditionally release. Go to the three action dots, and click on View Release Conditions.

image showing dropdown menu of content topic

Next, click on Create. Now, a comprehensive list of conditions will appear. Don’t be overwhelmed. Instead, think about this question: What do I want my students to have completed before they can see this content?

image showing some release condition examples

A few key examples of release conditions that educators can add to their content include students having:

– visited a specific content area before unlocking the next piece

– submitted an assignment before moving forward (and you can even release the next piece based on a specific score on that assignment)

– completed a quiz (and you can even release the next piece based on a specific score on that quiz)

Example One 

This tool is useful for asynchronous eLearning classes to help students pace themselves through units and complete activities in sequence. In the example below, a teacher has created release conditions based on the students achieving 100% on a quiz before they can see the next piece of content.  

The teacher first scrolled through the dropdown menu to Quizzes and then clicked on Score on a Quiz.

image showing option to choose score on a quiz

Next, the teacher chose the specific quiz, then the equal sign, and finally they input 100% into the box. This means that students have to achieve 100% on that specific quiz before they can see this content piece. The teacher could have chosen a score greater than or equal to, a score between two numbers, or various other options. 

image showing the dropdown menu with quiz names
image showing the full example of a release condition

Once the release conditions are chosen, the teacher clicks on Create and a summary screen will appear. Here, they could choose to add more release conditions or finalize the process.

Note – if educators are adding more than one release condition to a content topic, it will be important to choose whether ALL the conditions need to be met, or ANY condition can be met for students to move forward.

image showing which release conditions are mandatory

An example where ALL conditions must be met might be students needing both a specific score on a quiz AND having submitted something to a specific assignment folder. Educators can choose more than two conditions as well. 

If ANY condition must be met, students would only have to meet one of the given release conditions to be able to see the content. An example of this might be students needing to belong to a certain group to see some content, OR students having completed a checklist to see that same content. Either of those conditions being met would allow students to see the content topic. 

Example Two 

In more of a blended learning environment, release conditions can also be used to give a group or one specific student access to different content items. In order to release content to specific groups or individual students, you would have to first create groups with the student names to attach this condition.  (To see more about creating groups, visit: LINK) 

In much the same way, educators can also release items (announcements, content, quizzes, assignments) to users in sections in a course shell. If two classes are merged, for example, each class will have a section and therefore the potential to see different things. 

Image showing restrictions based on student enrolments

Once release conditions are created, they can be edited at any time. For example, in Content, simply click on the three dots at the top-right of the page and click on View Release Conditions.

Image showing where to edit content release conditions

In order for release conditions to be active in content, the content tab needs to be viewable overall. The toggle can be found at the top of the content section. The blue link there (Conditions) will take you to the editing page of the release conditions as well. See the image below:

Image showing how to ensure release conditions are active

Intelligent Agents

You may also choose to use Intelligent Agents to aid in delivering Escape room clues. You can set up agents to email the student as soon as a condition is met.

Intelligent Agents can help keep students engaged in your course. They are customizable messages for students that will be emailed automatically when they fulfill certain criteria set out by you, the educator. For example, a teacher may choose to set an intelligent agent to let a student know when they have missed a deadline on an assignment, or when they got 100% on a quiz. In the case of an escape room, they could be set up to email a student a code word once they submit an assignment that they then use to open the next challenge.

To create an intelligent agent, there is a little bit of setup required ahead of time, but then they can run all on their own, in the background of a class to keep students engaged and informed. 

To set up an Intelligent Agent, navigate to the Educator Tools tab and then click on the “Edit Course” button. Then, find the “Intelligent Agents” button. 


Once you have given your Intelligent Agent a name, you have multiple options for what to do based on what you want to communicate out to students. The example below shows how to set up an agent/email to go out to students who have not accessed the course in 2 days. 


In this example, this agent is set to only send one email as seen below. Educators can choose to send the message once or as many times as the criteria are met within the course. 


Below, you will find the options for the email that the Intelligent Agent will send. In the message section of the email, you can add links, images, text, etc…Or, if you want to give your learners a break from reading emails, you can record yourself using the Video Note feature through the Insert Stuff button.  


Since you don’t necessarily know who this email will need to go to, instead of putting in an email address for the TO* box, you will need to use a replace string. The replace string will take place of an email address in this case and find anyone that meets the criteria you set out for this agent to email. 

The “{InitiatingUser}” string would be used above to find any students/users that meet the criteria you’ve set out.

If you want to CC or BCC yourself to each agent that gets sent out, you can add the replace string “{InitiatingUserAuditors}” to ensure that you receive each email as well.

In the above example, no release conditions are needed, as this Intelligent Agent would run simply based on the “Course Activity” criteria that you set.

For other types of Intelligent Agents, like sending out an email when particular students have not submitted an assignment, or even when particular students get an excellent grade on a quiz, you will need to use the release conditions function. 


Release conditions are how you attach the agent to an item that you want to send something out about. In the example below, you can see a release condition that is set to send an agent when a student has not submitted a specific assignment. 


Since the assignment would have a specific date associated with it, the educator will also need to scroll down and set up a schedule. Otherwise, the agent would send on the first day of the class and continue sending. In this case, the educator will choose to send this agent a few days after the due date of this specific assignment and stop sending it at a later date. 


*A note about Intelligent Agents and other release conditions: Currently, Intelligent Agents do not recognize some other release conditions. For example, if you set an Intelligent Agent for an Assignment that is conditionally released to only some students/groups, the Intelligent Agent will include all students, even though the Assignment is not visible to all.

All in all, creating an escape room has been a creative and fantastic learning experience for me and promises to be an engaging activity for my students.

One response to “Building a Digital Escape Room”

Leave a Reply

Create a website or blog at

%d bloggers like this: