
College of Engineering Unit:
The multimedia software platform, Flash, originally created by FutureWave and later acquired by Macromedia and ultimately Adobe, ran for almost three decades as an integral suite for creative expressions, able to be displayed on anyone's web browser across the world. Over its lifespan, countless interactive websites, animations, and video games were created using the platform's plethora of easily-accessible development tools.
Adobe officially deprecated Flash in July 2017, and in January 2021 officially pulled the plug on the platform, preventing it from running under normal circumstances on consumer machines. As it became largely inaccessible to the general public, these creative endeavors also began to fade. Innumerable projects have been put at risk or outright lost to this change.
Jordan Magnuson, founder of Necessary Games, found himself in this same situation. Many of his games, some of which are in his Gametrekking Omnibus collection (https://www.necessarygames.com/my-games/gametrekking-omnibus), were made in Flash several years ago. These games were made to document his journey across East Asia, the people he met along the way, and the feelings and thoughts he came across in his travels. Designed to tell a story and give the player some of his feelings from when he was there, these are, in many ways, the epitome of artistic expression in video games. Since Flash has been gone, Jordan has been looking for a way to preserve his games for future players.
Ultimately, Jordan's search for a preservation method for his original Flash works has culminated in this project. Our goal, as a team, was to create ports of eight of his games, which would ultimately compile to HTML5. With the games being compiled to HTML5, the de facto web standard, we could effectively preserve these games for the foreseeable future. To accomplish this, we would just need to find a game development system capable of building given source code to HTML5. Thus, we settled on GameMaker.
GameMaker Studio 2 is a well-documented, widely-used game development system created by YoYo Games. In addition to its syntactic similarity to Flash's ActionScript 3 programming language, GameMaker allows us to build our projects to HTML5, Windows, macOS, and many other platforms. With all this in mind, we could get started on actively porting each game.
Initially, we would create our own individual Flash games to familiarize ourselves with the game development process in this system. Following this, we would pair up and be assigned games to port as small teams. Having four teams, we each ported one game ending with half of the target games successfully ported by the end of the term. Following this, we spent the Spring term in new pairs porting one additional game each, finishing off our goal with all eight games ported.
GitHub Repository Links:
Winter term:
Walk or Die - https://github.com/RavenLickey/Walk-or-Die
Status Quo - https://github.com/MatthewIsmay/StatusQuo
A Brief History of Cambodia - https://github.com/jnibali/Cambodia-port
The Heart Attack - https://github.com/HellaJeff/The_Heart_Attack_Port
Spring term:
The Killer - https://github.com/RavenLickey/The-Killer
Grandmother - https://github.com/HellaJeff/Grandmother_Port
Walking With Magnus - https://github.com/kwakd/walk-or-cry
The Kindness of Strangers:
Julius - https://github.com/Masterado/Kindness_of_Strangers_Port
Felix - https://github.com/emeraldbuttons/kindness_port