0% found this document useful (0 votes)
75 views

Capstone Final Report - Part I 1

The document describes a proposed interactive puzzle game called The Recursion Escape that aims to teach programming languages in an engaging way. The game would allow users to choose a language to learn and then solve puzzles of increasing difficulty related to that language in order to "escape" through different rooms. The goals are to provide a fun alternative to traditional learning methods and bridge gaps in understanding older and newer languages. Evidence suggests such a game could help discouragement by making learning more interactive compared to other programs. The feasibility of an escape room-style programming game is supported by the history of escape room and programming games individually.

Uploaded by

api-428087497
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
75 views

Capstone Final Report - Part I 1

The document describes a proposed interactive puzzle game called The Recursion Escape that aims to teach programming languages in an engaging way. The game would allow users to choose a language to learn and then solve puzzles of increasing difficulty related to that language in order to "escape" through different rooms. The goals are to provide a fun alternative to traditional learning methods and bridge gaps in understanding older and newer languages. Evidence suggests such a game could help discouragement by making learning more interactive compared to other programs. The feasibility of an escape room-style programming game is supported by the history of escape room and programming games individually.

Uploaded by

api-428087497
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

The Recursion Escape: When Bits Byte

Kevin Bentley, Craig Calvert, Samuel Pearce, Brian Sheridan

California State University, Monterey Bay

CST499: Directed Group Capstone

Dr. Eric Tao, Brian Robertson, Cassandra Eccles

May 19, 2020


1

Executive Summary

Computers are relatively new in the terms of history, but since their introduction, they

have helped to put people on the moon, opened up global markets, and provide many new and

exciting fields of employment and study. Computers run on two aspects, hardware, and software.

The software provides a functionality that is built using various languages that tend to be

mysterious to the user. Only by understanding the magnitude of different languages can a user

fully unlock the true potential of the computer. This brings us to the goal of this project, to help

facilitate the bridge from an everyday user to a maestro of the computer world.

There are many different programs out there that try to achieve the same goal, most of

them require the student to immerse themselves into a stale environment. This technique tends to

create frustration and a loss of interest, causing the student to eventually give up. Other programs

are built to be games that tend to be too simple leading to boredom. This is where we are trying

to bridge the gap.

The goal of our project is to bring a fun and interactive learning environment that keeps

users engaged but provides them with the appropriate building blocks to advance in a career as a

successful programmer, brush up on programming languages that might have been lost, or to

help provide a deeper understanding for professionals.


2

Table of Contents

Introduction/Discussion​ 3

Project name and description 3

Problem and/or issue in technology 3

Solution to the problem and/or issue in technology 4

Goals and Objectives 4

Community and Stakeholders 5

Evidence that the proposed project is needed 5

Feasibility Discussion 6

References 9
3

Introduction/Discussion​

Project name and description

The Recursion Escape is an interactive, first-person, puzzle game where users can

choose, from a list of various programming languages, a language to be challenged throughout

the game. The Recursion Escape is based around the concept of an escape room where the user

will have to solve various puzzles to gain access to the next room. Though the questions at the

beginning of the game may seem to be easy, as the user completes tasks the questions become

progressively harder. This feature allows both experienced and inexperienced users to be

challenged. The game is completely web-based and has a website that serves the loading point

for the game.

Problem and/or issue in technology

Learning a programming language can be quite challenging as you are confronted with

many unfamiliarities that even though it is easy to get started, it is just as easy to give up. With

the new advancements in computing and technology, new languages are permeating the market

and this is causing some of the older languages to be left behind. Being that the new languages

are becoming increasingly popular, the older programming languages still require understanding

as most of the computing jobs pertain to the older languages. The major problem is that people

are learning new languages and not working towards understanding the older ones, and this issue

is causing a gap in the industry.


4

Solution to the problem and/or issue in technology

The Recursion Escape acts as a fun and engaging way to bridge that gap. This game

would allow new programming users to get a basic understanding of various ways of

programming, while also learning older and new languages. Currently, learning how to program

online involves a series of exercises that a user has to work their way through; these tasks can

become dull at times. An interactive puzzle game is a much more engaging method for users to

experience programming. The option of being able to select the programming language that the

user will be tested on allows for a more interactive learning experience. Even for users who need

to refresh themselves on a particular programming language, the game provides a fresh method

of bringing themselves up to speed by teaching the new languages all while still supporting the

older ones.

Goals and Objectives

The objective of this project was to create a fully functional game that acts as a base

model that can be developed further in the future. The project provides a user experience that can

measure the success of the game and a possible viable option to move forward with further

development.

Upon completion of this project:

● The game provides a good level of replayability.

● The coding level of the user can be measured by the game.

● Gameplay history of the user is retained and recorded.


5

● The framework for the expansion of the game will be in place, allowing the developers to

expand on the length of the game as well as the number of languages that can be offered

in the game.

Community and Stakeholders

The major stakeholder for this project was the programming team that developed the

initial version of the game that was sent out for testing and viability. It is too early to tell now,

but if the game turns out to be a success with the initial installment, the programming team will

provide maintenance and upgrades as needed to reach a larger audience. If the project becomes a

success that shows to fill a specific need in the marketplace, the programming team will create

an LLC and charge a nominal fee to the public for maintenance.

The primary end-user of this game was anyone interested in learning a new programming

language or anyone who wanted to refresh their memory on languages they already knew and

understood. This meant any students enrolled in programming classes could utilize the software

to increase their chances of success in the course they were taking. Teachers also could use this

software to see if it would become something viable that students in the course might feel

comfortable using as a learning tool. The last major area that could be interested in using this

type of software were companies that could use it as a screening process to see if a candidate

would be a good fit for an open position.

Evidence that the proposed project is needed

Learning a new programming language can be quite the task, this also means that there

are going to be times where a user can become discouraged, angry, and even bored. There are
6

various programs on the market today that are aimed at teaching programming to people. Though

these programs do help a user understand the material, there isn’t too much to interact with while

using those programs. At a younger age, games are focused on logical thinking by using block

programming to move an object around a given space; when the user gets older some programs

immerse them into strict line coding. This can be overwhelming and discouraging for new

learners. There has not been an option to bridge this gap in the user’s curriculum or provide an

immersive, thrilling experience to engage new and older programmers.

Feasibility Discussion

The concept of an escape room game is not something new but might be one of the few

instances where a game was developed to be played on a computer before it was ever played in

the physical world. One of the earliest escape room games was developed back in 1988 by John

Wilson (real-life escape rooms weren't truly developed until 2007 in Japan) (Breakout, 2019)

(Projects, 2020). His game, Behind Closed Doors, was a text-based game where users had to

enter text commands to answer questions correctly to proceed from room to room. Since then

escape room games have evolved over time into Flash-based (soon to be replaced by WebGL)

web games and then mobile apps. Some of the best online escape room games found on the

Internet are The Mystery of Time and Space, The Crimson Room, The Submachine Series, and

Neutral Escape Games, just to name a few. All of these escape room games have held to the

same concept of puzzle-solving to proceed through the game. However, none of them involved

(nor could any be located during research) that included coding as a challenge/puzzle for the

escape room.
7

Much like escape room games, programming games have been around since the

mid-’80s, based largely on a computer in the game being hacked (Software Spotlight, 1984).

Over time programming games have developed into puzzle games and competitive games.

Today even popular games such as Minecraft have had players develop mods for the game that

help teach kids to program new mods for the game (Finley, 2017).

Online there is quite a selection of different sites offering coding games to learn or build

upon coding skills. Depending on the game the focus can be from elementary school children on

up to adults. Many of the basic sites work on the idea of issuing program commands to move and

object, usually an icon or figure of the player. Other sites, such as Robocode, have you compete

against other players. There the users develop a robot battle tank using Java or .NET to battle

against other users’ robot battle tanks (Robocode Home, n.d.).

In addition to these types of sites, there are educational sites such as Codecademy and

Code.org that offer more of a straightforward coding environment. These sites offer the ability to

learn coding in many different languages, however, their approach is through completing

different exercises and not focused on gameplay. As stated earlier this can lead to learners

becoming overwhelmed, angry, and bored.

The first aspect of the Recursion Escape is the 3D functionality of the game. Being that

the user can see various items on the screen, already the user is immersed in the material they are

learning. The web-based game loads a user in a room and they are faced with the task of figuring

out how to get out. A majority of people are interested in puzzles and this is a solid way to hook

them with the game.


8

Another aspect to consider is the option of being able to select from a list of various

programming languages. This leads to more people being able to utilize the product because it is

not focused on just one language. Older programmers would be able to go through and brush up

on an older language, or even work at learning and understanding a newer language. New

programmers would be able to work at learning a new language while also having the option to

learn older languages that are still used in the industry today.

The Recursion Escape website is where users can access and play the game. This website

features information about the game while also giving the users the option of creating an account

which will help them track their progress through the game. The website also has an “About”

section which allows people to track the future progress and development of the game.

An immersive, interactive puzzle game can help keep the attention of the people that

want to learn a programming language. The Recursion Escape accomplishes this task by getting

the user's attention and holding their attention. Everything from learning a new language to

learning an older language; this project achieves that goal.


9

References

Breakout. (2019, March 25). Escape Room History: Escape Game Origin: Breakout Games.

Retrieved from https://breakoutgames.com/escape-rooms/history

Finley, K. (2017, June 3). New Minecraft Mod Teaches You Code as You Play. Retrieved from

https://www.wired.com/2014/08/learntomod/

Projects, C. to W. (2020, March 28). Real Life Escape Game. Retrieved from

https://www.wikizeroo.org/index.php?q=aHR0cHM6Ly9lbi53aWtpcGVkaWEub

3JnL3dpa2kvRXNjYXBlX3Jvb20

Robocode Home. (n.d.). Retrieved from https://robocode.sourceforge.io/

Software Spotlight. (1984, November). Retrieved from

https://archive.org/stream/02-your-commodore-magazine/Your_Commodore_Issue_

02_1984_Nov#page/n35/mode/2up

You might also like