Packet Protector
Build a fictional virtual network and defend it against simulated attacks.
Unity3D, C#
Released: 2016
Created for the second iteration of the Air Force Association’s (AFA) CyberPatriot Elementary School Cyber Education Initiative (ESCEI), the goal of this project was to teach basic concepts and terminology related to computer hardware, networking, and cybersecurity by challenging the player to protect a simulated cryptocurrency mining network from hackers and malware.
At the beginning of each day, the player has the option to purchase hardware and software to improve their network’s ability to mine cryptocurrency or resist incoming attacks. After finalizing their purchasing decisions, they can simulate the day’s activities and watch as packets of network traffic travel from the Internet to their local network.
Various icons are used to represent different kinds of network traffic, simplified into a single packet to represent the entire transaction. For example, an icon of a trojan horse would represent the delivery of malware to one of their machines, while a gold coin would represent the successful mining of some cryptocurrency. If the target machine had an anti-malware program installed on it, the trojan horse would explode. A text alert would also appear, informing the player of the success or failure in their defense.
At the end of the day, they are presented with a summary of the packets that they received and how their budget was impacted. This cycle continues for ten days, as the game is meant to be played from start to finish in a brief period of time, allowing for repeated play and trying out different purchasing strategies.
Challenges
The greatest challenge was developing two different games at the same time for the same client with the same deadline. Since I was the only person involved with this project, and one of two on the other project, it was difficult at times to halt development and switch to the other project while being satisfied with the quality of both projects.
Keeping feature creep in check was also a challenge at times, as there is a lot of content that could be taught in this field, and plenty of game mechanics that could be both fun and allow for new ways to feature a concept.
The translation of the text from English to Spanish was also a challenge, especially because the content was a bit more technical in nature. However, some research yielded a highly communicative and competent translation company that provided a translator familiar with this business sector, producing good results with a quick turnaround.
What Went Wrong
Attempting to simulate low-level networking details, like virtual network interface cards (NICs), assigning fake IP addresses, and writing code to simulate the address resolution protocol (ARP) was far beyond the scope of the project. Several weeks of research and prototyping resulted in a passable concept in the simulation, but the subject matter was ultimately outside the scope of the objectives for this game and beyond what was expected from the typical player in the target audience.
What Went Right
The game shipped in 2016 and since then only one bug report has been filed, related to the game’s display resolution.
Lessons Learned
The phrase “you ain’t gonna need it”, or YAGNI, definitely applies to the implementation of low-level network traffic routing. Creating well-defined objectives and making sure to regularly check if the work being done aligns to those objectives can save a lot of time and effort.
Additional Media
The game is still available on the AFA CyberPatriot ESCEI 2.0 website.
A reskinned Windows version of the game, named "CyBear's Network Defense", can be downloaded through the CIAS Launcher.