1 Introduction

Statistics show that Computer Science is a field that is highly in demand not only with regards to industry but also when considering Academia [1]. Even with the heightened demand, the amount of people that graduate from CS majors is significantly lower than the number of students that initially enrolled. Also, computer science has traditionally been less diverse than other fields. Minorities comprise less than one-fourth of all students that enroll in a bachelor of Computer Science [2].

Current institutional practices still offer standard methodologies when attracting and educating CS students. Students present a diverse population, and some may require extended time and other educational aids to learn a new subject as they may experience difficulties when using traditional techniques. Most science related classes require substantial problem-solving skills and math backgrounds. Even though these skills can be taught and learned, these requirements drive away students from pursuing any science, technology, engineering, or mathematics (STEM) majors [3].

Even though public education is free for most people, graduation rate from public education is quite low. When an individual finishes high-school most of them do not pursue higher education of any kind [4].

It is important to create ways in which students not only care about education but also promotes and encourages a desire to reach higher educational goals. Many of today’s graduates are passionate about their education, and this is a trend which we hope proceeds to grow.

As technology continues to progress, new types of learning can also be applied to motivate retention and inclusion. It is imperative to understand that many individuals have a better chance of being attracted to something by using visuals rather than narratives [5], everyone gets steered away by the common misconception of “difficult” classes such as calculus, physics, and programming. Most people have difficulty understanding CS because they view it as a singular, monolithic, and complex topic when in actually most CS concepts are simple when viewed individually. Computers are also comparable to the human mind. This idea is what we are trying to convey in the game. Allowing the user to see how their everyday actions are the same simple actions carried by a computer and hence the foundation of computer logic [6].

1.1 Contribution

Even though the game has been designed for high-school Juniors and/or Seniors, it can easily be played by K-12 children or older adults. Our contribution can be break into four ideas:

  1. 1.

    Help students better understand concepts of Computer Science.

  2. 2.

    Increase interest in Computer Science after anyone plays the game, especially teenagers and young adults.

  3. 3.

    Create an entertaining medium capable of reaching broad audiences while making the game entertaining.

  4. 4.

    Increase enrollment and graduation numbers of minorities.

1.2 Motivation and Challenges

The number of high-school graduates that pursue higher education is low. Compounding this issue, the amount of minorities that go to college or university is low as well. Once students start their college career, many of them will not go on to complete their degree according to recorded statistics. These numbers can be predicted based upon high-school graduation rates.

By generating early interest in Computer Science, we can help students identify and focus on the attributes required for a successful college career. When attempting to generate this interest, it is vital to recognize how influential video games can be when trying to reach an audience comprised of young adults [7].

2 Background

It is critical to understand that the concept of higher education is highly conflated with money and socioeconomic status. Many students desist going to college because they lack interest in higher learning and there is also a social stigma regarding how students pay for their education. Moreover, if the few students that decide to enroll, do not generate an interest in learning through their college career, the rate of graduation can be further reduced [6].

It is demonstrated that teenager and young adults can display great abilities when playing video games.

Young adults and teenagers have shown an aptitude for completing complex tasks when playing video games. This aptitude exists because as video games have become more popular, modern examples offer a small learning curve and many interactions share common standards across the industry. Even though different types of video games are developed constantly by various companies, any person eager to play a video game can pick up a controller or keyboard and start enjoying these adventures. Games not only entertain the player but also release dopamine which can also generate an addiction to the game itself [8]. If these attributes are taken into consideration when developing games, the retention, and attention that the player will allocate while playing can also generate great opportunities for learning.

Research has shown that there is a quantifiable benefit when humans play video games. For example, benefits include areas such as rehabilitation, motor skills, ability to react and there have even been benefits to counseling [9]. By including learning concepts in a video game, we can not only help individuals learn new concepts, but we can also change the negative outlook given to video games [10].

Current educational video games fail to generate interest whereas most of the industry is successful in this aspect. The games that are currently being used are either simulators or tutorials of how to learn something new. As good as the concepts seem, they create a sterile environment instead of a naturally interactive one which strips the game of its critical component, fun. Players want to discover, be challenged and obtain rewards for their work.

The average household owns a computer, smartphone, and a console gaming device. By creating software that does not require an extra purchase, it is easier to reach a broader population. By making video games that can teach or spark interest in computer science, we are bridging the gap between individuals and their fear of it. It is essential to include these concepts early in the developmental process preferably introducing the concepts to children but also to teenagers and older. This inclusion will assist in generating interest in STEM that can carry over to adulthood [11].

3 CScape 3D: Discover CS by Playing

3.1 Objective

We developed a video game that imitates the concept of an Escape Room. Regular games always provide a challenge and a reward system where the player strives to complete it. On CScape 3D the player needs to find the correct combination of objects to open the door and be able to escape the room. We also decided on using the concept of an Escape room to spike even more interest into picking up the game and playing it.

Fig. 1.
figure 1

Top Side view of environment on Unreal Engine

3.2 Concept

The Game was developed using Unreal Engine and Visual Basic Studio. It combined the use of Unreal’s Blueprint system, along with C++. The current room was a prototype to test the level of interest in the game. Many of the assets used were borrowed from the Unreal Library Starter content pack. The next step was to add functionality to the room. This functionality was achieved by creating three trigger volumes that would only interact with movable objects. Meaning that only some objects from the room can be used and that not all the objects can be moved. Each plate has special activation method. Thanks to the Unreal Engine, the game physics mimic real-world physics to a close level (see Fig. 1).

For the first room, all volumes share a common concept: IF STATEMENTS.

The way each plate was programmed was using the basic concept of decision making. The yellow plate will only be activated by adding objects that only add up to a total weight of forty five kilograms (see Fig. 2). The green plate will only be activated by only adding at least four objects (see Fig. 3). The white plate can only be activated by adding the object with the specific name (see Fig. 4).

Fig. 2.
figure 2

Yellow Puzzle (Color figure online)

Fig. 3.
figure 3

Green Puzzle (Color figure online)

Fig. 4.
figure 4

White Puzzle (Color figure online)

Fig. 5.
figure 5

Door States

Once the player activates the three switches (see Fig. 5), and the player leaves the room, they will be greeted with a notification congratulating the escape of the room, followed by an explanation of how he/she escaped. A small explanation about IF Statement and its use in Computer Science will follow the previous explanation.

By showing this information to the player, we are rewarding the player and also showing that subconsciously he or she already knows how to use concepts of Computer Science. It is known that learning by doing is an effective tool towards memory retention and learning. By utilizing this technique on a subconscious level with the game, we can stimulate and engage more interaction with the player.

3.3 Controls

The system uses a basic control scheme shared among many video games. Using the keyboard, the player can use the W Key and Up-arrow to move forward, S Key and Down-arrow key to move backward, A Key and the Left-Arrow key to move to the left and D Key and the Right-Arrow key to move to the left (see Fig. 6).

Fig. 6.
figure 6

Basic control system

To minimize the player’s learning curve, there is only one interaction with the environment. This interaction is the grab action, which allows the user to pick up and move an object from its current position to the new desired location. This action can be activated by using the mouse left click. The grab action utilizes the hold/release actions. These actions, require that the user hold down the left mouse button which is an interaction already known from their computer usage 7).

Fig. 7.
figure 7

Object being held by user using Grab command

It is important to understand that when users are presented with a complicated control scheme. Frustration can occur, but by providing a simpler control scheme, the experience of the game can be more fluid and enjoyable [12].

3.4 Camera View

The camera is set to a first-person perspective. This perspective helps the player to immerse themselves in the game. To move the camera, the user only needs to move the mouse around giving \(360^{\circ }\) of freedom. Also, this camera can be easily reused for Virtual Reality and Augmented Reality environments, giving the user a better sense of spatial location. Currently, the game is being deployed to the traditional desktop only. This deployment allows a reduction of motion sickness that the player may experience as he or she plays the game. The game can be ported into Virtual Reality to allow the increase of interest in players but at the same time reducing the number of possible players due to limited access to VR devices in the current market.

4 Future Work

In future work, we first want to test how receptive are individuals to the idea of playing a game to spark interest on Computer Science. Moreover, after surveying non-CS majors, we want to develop more rooms that cover other concepts of computer science such as FOR Loops, While Loops, Arrays, and Nodes.

After completing the rooms, we want to run some test on how much interest the game sparked for any non-CS gamer. By using the player’s feedback, we can reshape the game to enhance the amount of interest it can generate for subsequent players. One of the metrics that will be collected is the total time it took each player to complete the puzzle. Also, we will run a control group with CS students to compare the results against non-CS students.

Moreover, We would like to see the impact of the game on minorities. One important population that we want to target for future studies would be non-cs women. Not only because of the misconceptions and perception of women in the technology field [13] but also because women are typically less prone to play video games or even be considered as a target audience by the gaming industry [14].

5 Conclusion

We propose a video game that resembles an Escape room. The purpose of this game is to offer the same level of entertainment as any other game but at the same time generate interest in Computer Science. The player will be immersed in this game and progressively learn more and more about the basic concepts of Computer Science. The concepts are presented to the player as an achievement system to develop a feeling of accomplishment.

Future work will include the addition of more rooms and more complex puzzles. Furthermore, porting the game to mobile phones such as iPhone and Android. The last addition will be to port the game to Virtual Reality to attract even broader audiences. We want to put the game within reach of every demographic to see the impact of gaming when promoting higher education. Finally, our principal goal is to show that computer science is a field that can be learned from an early age and does not require high levels of education.