Content uploaded by Lorenz Cuno Klopfenstein
Author content
All content in this area was uploaded by Lorenz Cuno Klopfenstein on Mar 16, 2018
Content may be subject to copyright.
X MARKS THE BOT: ONLINE CODING-BASED
TREASURE HUNT GAMES FOR CODE LITERACY
Lorenz Cuno Klopfenstein, Saverio Delpriori,
Brendan Dominic Paolini, Alessandro Bogliolo
DiSPeA, University of Urbino (ITALY)
cuno.klopfenstein@uniurb.it
Abstract
Coding games, both computer-based and “unplugged” ones, have been increasingly used over the past
years to promote code literacy and to bring basic programming concepts to the larger public, in particular
to children in pre-school, elementary, and middle school ages.
Chatbots on instant messaging (IM) platforms provide a modern and friction-free interface that allow
software developers to instantly connect with a wide audience, making use of familiar conversational
interface patterns.
“Code Hunting Games” is a chatbot-based multiplayer game, which engages multiple teams in a
“treasure hunt” guided by a Telegram bot. On their track to the treasure, teams are challenged with a
sequence of coding puzzles that must be solved using the conversational interface. At the same time,
teams must move through physical space in order to reach geographical locations marked by a code,
as indicated by the bot.
In this paper we present the implementation of the game and describe several large-scale deployments,
including one Europe-wide game session during Code Week 2017 with more than 160 competing teams.
The system is freely available online for custom game sessions.
We discuss the game’s impact, in terms of engagement for children in particular, lessons learned during
development and deployment, and future work.
Keywords: code literacy; coding challenge; messaging bot; treasure hunt; mixed reality
1 INTRODUCTION
Modern computational tools and digital instruments are ubiquitous and pervasive in our lives. Most jobs
on the modern workplace require some degree of digital skills, which vary from basic control over IT
tools to more complex computer-based workflows. In many cases, such workflows can be hard to grasp
for many workers because of a lack of core IT competencies. This pervasive lack of digital skills has
been largely reported to be a threat to the economy and it has been shown that a large percentage of
the population can be described as “digitally disadvantaged” [1, 2]. Moreover, studies have shown that
the lack of digital skills leads to compound and sequential digital exclusion, resulting in even higher
disadvantages if these fundamental skills are not developed [3].
Over the last years many coding literacy campaigns have been launched, including the Europe Code
Week, which has been promoted by the European Commission since 2013. However, learning to code
is a difficult endeavor that requires focused training and relies on a large gamut of abilities, including
logic, problem-solving, abstraction, and creativity [4]. The development of these fundamental skills and
of so-called “computational thinking” have been shown to have a positive impact that is not limited to
coding alone [5, 6].
In the context of these learning initiatives different innovative tools have been developed and promoted:
many rely on online web-based solutions that allow students to experiment with block-based
programming [7].Other developed tools include “unplugged” activities, which do not require electronic
devices and thus grants full accessibility and immediacy [8]. Games of this kind can be commuted to
virtual reality experiences to improve engagement [9] or played within immersive large-scale
events [10].
Novel technologies to be considered include conversational agents for modern messaging platforms
(such as Telegram, Facebook Messenger, or Skype). These so-called “bots” provide a friction-free
communication channel to a huge audience [11] and offers an enticing platform to offer services and
access to software through the familiar and simple interface of text messaging [12]. Messaging bots as
a software platform sport many advantages, including their simplicity, accessibility, and efficiency. As
instant messaging (IM) tools are already widely used by both teachers and students [13], they can be
adopted and used with no special training or supervision. Possible IM bot applications are wide-ranging
and include entertainment, communication, access to services, quiz-based games, and education [14].
2 CODE HUNTING GAMES
In this paper we propose an online game based on an instant messaging bot and inspired by treasure
hunt game schemes. Players must find hidden objects or places by following a series of clues obtained
by solving puzzles. In “Code Hunting Games” this classical paradigm is transported in a mixed-reality
scenario, where a Telegram bot manages the game and player teams have to find hidden physical
tokens located in different places, following the directions the bot provides.
The Telegram bot @treasurehuntbot is freely available to players and game organizers. Documentation
can be found on the official website: http://codehunting.games.
2.1 Player roles
“Code Hunting Games” is played in teams. Each team has to be composed by at least two participants.
One of the players takes over the role of team leader for each team.
Figure 1. Configuration of a game instance.
As outlined in Figure 1, the bot interacts through a one-to-one chat with each team. The team leader is
responsible of communicating with the game bot (i.e., the leader will control the team’s smartphone and
will most likely use his or her Telegram account). A public Telegram channel is provided where the bot
or the game organizers will communicate important announcements or to give updates on the progress
of individual teams. Any player, not only team leaders, can join the public channel and receive updates.
Before starting the game, each team is required to register providing (a) their team name, (b) the number
of team members participating, (c) a group selfie or image representing the team, (d) the correct solution
to a “warm up” coding quiz (this serves bot as a captcha verification and prepares the team for the kind
of coding challenges they will receive during the game). After these 4 steps the team is ready to play.
2.2 In-game mechanics
Game sessions can be divided into multiple steps, all guided through a conversation with the bot, as
shown in Figure 2.
At each step, the team is assigned a specific location to reach and where to go searching for a hidden
QR Code (usually printed on paper or plastic). The QR Code contains a so-called “deep-link” that, once
scanned by means of a smartphone camera, seamlessly redirects the user directly to the Telegram bot
chat. Through the use of specifically encoded deep-links, the bot can interact with players and be aware
of their current location.
Once a team reaches their intended destination, the bot asks the players to take a group selfie and to
send it. This is required as a proof of the full team reaching the location (even if the verification is not
automated and must be done by the organizers).
Additionally, selfies are also automatically forwarded by the
bot to the public channel, in order to provide updates about
the game’s progress.
The bot prompts the players with a random coding puzzle.
Players who solve the puzzle are assigned a new destination
along with a hint they will use in the last step of the game.
Destinations are represented as pinpoints on a map and—in
case of outdoor games—are associated with a pair of
geographical coordinates that players can use in their
navigation system.
When a team reaches the last randomly assigned location—
and thus solves the last coding puzzle—players are directed
to a predetermined last location where they will be asked to
complete the last puzzle. This final puzzle is based on all
previous hints shared during the course of the game. The
team who first solves the last puzzle wins the game.
Each game session can be organized as an isolated event
or it can be part of a shared event of larger scope, wherein
multiple teams, across a possibly very wide area (e.g., the
whole European territory), challenge each other while
playing synchronously in different local game sessions.
2.3 Coding puzzles
At each step of the game, after reaching a location and
snapping a selfie, players are required to solve simple
coding-based puzzles. Questions are always composed by
an image and some text. Solutions, on the other hand, are
always provided in text-only form. This allows the bot to
validate the player’s answer simply by performing string
matching with the expected response.
In the current “Code Hunting Games” sessions, puzzles are always based on the “CodyRoby” action
cards metaphor [8] and on grid-based movement. Figure 3 shows some of the standard coding puzzles
used during the game.
Figure 3. Examples of standard coding puzzles used during the game.
Figure 2. A sample conversation
between team leader and bot.
2.4 Game creation and management
The messaging bot also provides a conversational interface that allows any user to generate a custom
“Code Hunting Games” session. The game creation process is started by following a special “deep link”,
which activates the bot and collects basic game information: (a) the game session’s title, (b) contact
information of the game’s administrator, (c) the public Telegram channel used by the bot to publish
updates (including the participants’ selfies) during the game, (d) the start location where the game will
begin, (e) the predetermined end location where teams will converge to when completing the game,
(f) a sequence of intermediate locations (which will be picked randomly for each team during the game).
Locations can be specified to the bot either by using the default location-sharing facilities in Telegram
(which allows the user to drag a pinpoint on a map) or by writing the location’s coordinates as a text
message.
Administrators also have the option to completely disable the automatic selfie forwarding on the public
channel: this is intended to protect the privacy of teams, which may include minors or persons not willing
to share their pictures on a public Telegram channel. In this case the bot will publish only text-only
updates to the channel.
Once the creation process is completed, the bot will prepare the game session and generate a set of
PDF files containing the QR Codes. A separate PDF will be generated for the start location, the end
location, and each intermediate location. A special QR Code will be generated that allows teams to
register and another one will allow teams to start the game. Game organizers will then have to print the
PDFs and install the printed QR Codes in the target locations in preparation of the actual game session.
Moreover, the bot offers a set of Telegram commands, available to the game administrator only, that
allow to gather information about the overall status and the status of individual teams.
3 RESULTS AND EVALUATION
In this paper we presented a novel team-based multiplayer game that merges the paradigm of classical
treasure hunt games, the interaction with an IM bot, and coding-based challenges, in a mixed-reality
experience. Game sessions can engage any number of teams. Single game sessions may also be
organized in the context of a large-scale event.
“Code Hunting Games” was first presented publicly during the “Coding in your Classroom, now!” summer
school in Urbino (Italy), 22–27 August 2016. Subsequently the game was further developed and
frequently adopted to provide engaging learning sessions for primary and secondary school teachers
and their pupils during coding summer schools or field trips.
On 14 October 2017 an international “Code Hunting Game” event was organized, with multiple game
sessions running in parallel in several European countries. All game sessions, locally organized by
ambassadors of the EU Code Week initiative, started together at 11:00 CET, featuring the same puzzles
and an equal number of locations to reach. A total of 22 parallel game sessions were organized, with
more than 160 teams and approximately 1000 individual participants competing with each other. A full
account of the event is available on the Code Week blog
1
.
Figure 4. Montage of team selfies collected during the summer school in Urbino (2017).
The game’s bot will continue being available at @treasurehuntbot on Telegram. The official project
website provides documentation and guides, while the bot’s source code has been released on GitHub:
https://github.com/CodeMOOC/TreasureHuntBot.
1
Code Week Treasure hunt report: http://blog.codeweek.eu/post/166975540609/the-codehunting-game-more-than-1000-people
3.1 Player and administrator survey
An evaluation survey was sent to ambassadors and organizers that have contributed to the Code Week
event of 14 October 2017, in addition to members of the CodeMOOC community, composed in large
part by elementary and secondary school teachers
2
. The survey contained general questions, details
about participation and usage, a set of statements to evaluate with a rating based on a Likert scale, and
optional comments about the game.
A total of 67 survey responses were collected. The majority of respondents are over 35 years old, with
an average between 46 and 55 years. 93% of respondents are female, while 94% of them are
professionally involved in a full-time teaching job. 30% of respondents were present during the first game
launch in 26 August 2016.
Figure 5. Results of the evaluation for players.
A set of statements to evaluate from the point of view of “Code Hunting Games” players was provided,
with responses ranging from “strongly disagree” to “strongly agree”. The statements to evaluate and the
collected responses are shown in Figure 5. Statements linked to ease of use and enjoyment of the game
and of the bot (“It’s a fun game”, “The game is easy to play”, “Instructions are clear”, etc.) have been
evaluated very positively.
In general players described the game as being well-centered on coding and provided very high ratings
for team play and the improvement of skills. Results indicate that the puzzles could probably be more
challenging. Not many players would prefer challenges based on writing code instead of simple
question/answer puzzles, even if several players otherwise suggested to add more variety to the coding
challenges.
Interestingly, players generally liked that the game is delivered through an IM bot and the majority
wouldn’t prefer a bot provided through a messaging platform other than Telegram.
In Figure 6 survey responses for statements about the game administration process are shown.
Responses were generally very positive, with some room for improvement in the area of team
management, in particular getting an overview of the game during play and solving problems that teams
might have. While responses confirm that the game creation interface was evaluated positively, it can
2
Facebook group, with more than 25,000 members as of February 2018: https://www.facebook.com/groups/CodeMOOC/
be argued that getting an overview of a running game through a bot conversation can be a cumbersome
experience.
Future work on the system will aim at improvements in the conversational interface, possibly with the
addition of a web-based control panel for administrators for improved clarity and information density.
Figure 6. Results of the survey for game administrators.
ACKNOWLEDGEMENTS
The authors wish to thank all members of the CodeMOOC community and all participants that have
tested “Code Hunting Games” since the first run in 2016 and all users that have taken part in the online
survey.
REFERENCES
[1]
R. Cellan-Jones, "More than 12 million fall into UK digital skills gap," BBC, 2015.
[2]
Department for Business, Innovation & Skills, Department for Digital, Culture, Media & Sport, and
Ed Vaizey, "Digital skills for the UK economy," UK Government, 2016.
[3]
A. J. A. M. van Deursen, E. Helsper, R. Eynon and J. A. G. M. van Dijk, "Compound and Sequential
Digital Exclusion: Internet Skills, Uses, and Outcomes," in Proceedings of the 66th Annual
Conference of the International Communication Association, 2016.
[4]
J. Du, H. Wimmer and R. Rada, "“Hour of Code”: A Case Study," in Proceedings of the EDSIG
Conference, 2017.
[5]
C. Duncan, T. Bell and S. Tanimoto, "Should your 8-year-old learn coding?," in Proceedings of the
9th Workshop in Primary and Secondary Computing Education, 2014.
[6]
M. Sabatini, "Learning geometry and visuo-spatial abilities through coding," Form@re—Open
Journal per la formazione in rete, vol. 16, pp. 201-212, 2016.
[7]
D. Weintrop and U. Wilensky, "Comparing Block-Based and Text-Based Programming in High
School Computer Science Classrooms," ACM Transactions on Computing Education (TOCE), vol.
18, p. 3, 2017.
[8]
A. Bogliolo, "Unplugged language-neutral card games as an inclusive instrument to develop
computational thinking skills," in INTED2015 Proceedings, Madrid, 2015.
[9]
L. C. Klopfenstein, A. Fedosyeyev and A. Bogliolo, "Bringing an unplugged coding card game to
augmented reality," in INTED2017 Proceedings (11th International Technology, Education and
Development Conference), 2017.
[10]
A. Bogliolo, S. Delpriori, L. C. Klopfenstein and B. D. Paolini, "Immersive Coding: Innovative tools
and formats for large-scale coding events," in EDULEARN16 Proceedings, Barcelona, 2016.
[11]
A. Battestini, V. Setlur and T. Sohn, "A large scale study of text-messaging use," in Proceedings
of the 12th international conference on Human computer interaction with mobile devices and
services, 2010.
[12]
L. C. Klopfenstein, S. Delpriori, S. Malatini and A. Bogliolo, "The Rise of Bots: A Survey of
Conversational Interfaces, Patterns, and Paradigms," in Proceedings of the 2017 Conference on
Designing Interactive Systems, Edinburgh, 2017.
[13]
D. Bouhnik and M. Deshen, "WhatsApp goes to school: Mobile instant messaging between
teachers and students," Journal of Information Technology Education: Research, vol. 13, pp. 217-
231, 2014.
[14]
L. C. Klopfenstein and A. Bogliolo, "The Quiz-Master Bot: a persistent augmented quiz delivered
through online messaging," in INTED2017 Proceedings (11th International Technology, Education
and Development Conference), Valencia, 2017.