Primarily being Engineering majors, we are not often exposed to a plethora of code programs. C is the only language we have taken any courses in. With our experience (or lack thereof) in coding software, we decided to relieve the stress of new coders by developing an interactive arcade game to improve their coding skills.
What it does
This interactive game is titled “Code Busters”, featuring Cody the Ghost as the main protagonist. Tasked with debugging a virtual haunted castle, Cody is faced with multiple obstacles that require the player to answer a coding question when hit. The game allows for the player to control Cody’s movement, mobile obstacles to avoid, a health bar, and a scorekeeping system.
How we built it
Using a program titled Game Maker our group was able to develop the code for this game from scratch. The program Game Maker was essential in developing this game from scratch. By relying upon our group’s basic knowledge in C and by conducting occasional research on the syntax of Game Maker, we were able to establish a solid base program. As we became more confident with the language, we expanded our game over the 24 hour period.
Challenges we ran into
Finding the distinction between Game Maker's code and C was the biggest difficulty since all members of our group only have intermediate knowledge of C code. The biggest challenge was in learning the Game Maker language. It is similar to C in some respects, but very different in other areas, such as loop syntax. The IDE was also unlike anything we had worked with before as it relied upon the simultaneous use of “Create”, “Setup”, and “Draw” events, often removing the option of straight-line coding. Due to these circumstances, some of the most difficult aspects of our game to code were collision conditions, manipulating text, and causing specific non-collision events to damage Cody.
Accomplishments that we're proud of
We were able to successfully create an arcade game from scratch, which none of us had never done before. We designed sprites capable of interacting with the environment, and successfully adapted our limited coding experience to serve us in a new language.
What we learned
Primarily, we learned the Game Maker language. However, in general, we learned invaluable lessons about debugging and layering code due to the nature of the IDE.
What's next for Code Busters
This introductory level design is only the beginning. With more time and experience we could potentially turn this into a 2D platformer with far more moving parts, possibly including weapons, character enemies, more coding questions, and time-based challenges.