Sponsored By
Zac Zidik, Blogger

July 25, 2014

10 Min Read

Here are some reasons I created an HTML5 game engine called FLAG . I have given several presentations about it lately. Many in the audience seem disappointed that it there is no button to push that spits out a completed game. Sorry to disappoint but, even with a game engine, programming and a great deal of effort is still required to make games!

FLAG was originally developed with two main goals in mind. The first goal was to create a system that contain reusable objects, process and code for creating educational games. Prior to FLAG’s conception, each game that ETS (Education Technology Services) and the EGC (Educational Gaming Commons) was producing was essentially a one off. When a new game project came along, we always had to start from scratch. FLAG established a formal structure and process that provides a big head start on any new project, which ultimately shortens development time.

The second goal was to create an HTML5 game engine. The most common development environment for web based games, at the time of FLAG’s conception, was Flash. However, Flash had several inherit problems that prevented it from being an ideal option going forward. The first problem was that it required a plug-in that was not being supported by emerging mobile devices. The second problem was that Flash did not meet our accessibility requirements. It was these problems that encouraged us to be early adopters and to experiment with some of the new features of HTML5. Judging by the amount of HTML5 game engines that have emerged over the past few years, of which there are many, and the fact that large well establish game engine companies like Unreal and Unity are now promising native HTML5 support in future releases of their engines, we definitely made the right decision in our choice of technology.

FLAG was designed to be software that ETS and the EGC could use to give structure and process to the games being produced here. FLAG was never meant to be a commercial product instead, it was always intended to be open source, which it continues to be. However, open source can mean a lot of things as far as support goes. All of the code for the FLAG Game Engine is available on github, a popular code-sharing repository. Documentation for the code along with some tutorials and working examples can be found on the FLAG website.

A foundation of basic programming, experience with JavaScript, HTML and CSS are prerequisites for being able to use FLAG. Additional skills, such as game design, UI and UX design, graphic design, animation and sound editing may be required depending on the desired outcome.

Educational gaming continues to gain traction everyday. Technology to produce games continues to become more available and more affordable. With the advent of mobile devices, people carry around, what is essentially a gaming console, in their pockets everyday. Universities like MIT, NYU, CMU, USC and the University of Wisconsin all have well know experts and programs that work in the educational gaming space. Educational games are being produced not only by ETS and the EGC but also by many other individual colleges here at Penn State. Due to our small staff, we are unable to accommodate every request to produce full-fledged games but we do always make time to consult with any faculty or students that might be interested in the topic.

Game design and development, when done well, is an extremely intensive process. In addition to containing many forms of media including programming, graphics, UI and UX design, animation, video and sound, educational games must also contain instructional content. In commercial game production studios, you would have teams of people dedicated to each one of these facets. In ETS and the ECG, we of course, do not have nearly that volume of resources. That is what makes having an established process and system, like FLAG, so helpful.

A typical game project, for us, begins with consultations that would include an instructor and or an instructional designer, the EGC’s project manager and the developer. The goal of the initial meetings is to determine what the learning objectives are for the project. Once that is determined, we begin to discuss possible metrics we can use to assess the players. The metrics must be tangible and quantifiable numbers that relate back to the learning objective. With out them, it would be hard to justify the viability of the game project going forward.

Games come in a variety of size and complexity so there is no hard-set timeline for producing one. A typical design, development and deployment cycle lasts somewhere between 3 months to a year.

The most important collaboration between instructor and developer happens in the initial meetings. Clearly defined learning objectives with metrics and methods of measuring players’ progress are the most important elements in an educational game. This is what the game designer and developer need before coming up with a presentation method.

Once game development begins, student play testing ideally drives iteration. We prefer to get our design in front of the target audience early and often to insure we are on the right track. We take that feedback back to the instructor and refine the design until we all feel it is providing the desired outcomes.

Both instructors and instructional designers who have been involved with FLAG based game projects have been pleased with the results. Proof of their satisfaction can be found in presentations they have given at conferences and in the fact they the games continue to be used in several concurrent semesters. In addition, we continue to meet with stakeholders to discuss the updating and enhancing of their games.

Students also seem pleased with the games. The first game built with the FLAG, Econ U, has been used for 5 semesters. During that time, 3,700 unique students have participated in the game. The most striking statistic is that 3,700 students played the game over 10,000 times! This means that students are not just playing once but multiple times.

In addition to replays, there is also evidence of student satisfaction in survey and social media forms. Several social media discussions have emerged during game play sessions. These discussions included everything from methods of strategy to boasts of achievement.

To date, FLAG has been used to develop two games. The first game is called Econ U, which is a city builder style game where players must use foundational economic concepts to build and grow a university. You can find more information on Econ U here:
play.gaming.psu.edu/econu.shtml

The second game developed with FLAG is called Time and Patients and is a management game where players must turn a struggling health clinic into a profitable business. You can find more information on Time and Patients here:play.gaming.psu.edu/time_and_patients.shtml

Currently, there is no way of tracking usage of FLAG. Again, it was never intended to be a commercial product. The code is open source and there is no requirement to report usage. I have been and I am happy to continue to respond to any technical support questions that I receive via email or through other forms of social media that have been set up for FLAG including a Twitter, Facebook and Game Sprout.

I have been a multimedia developer for 15 years. My skill set includes programming, graphic design, UI and UX design, 3D modeling, animation, video and audio production. I have also been a gamer my whole life. Games are perfect culmination of the primary hobby of my youth and the skill set of current profession.

I was never a very good student in school however I am a very good self-learner. I like designing games for people like me in mind. Educational games can provide things that book learning or classroom instruction can’t including an environment for experimentation, the opportunity to use and formulate abstract thought and the insurance that it is ok to fail and try again.

I was most excited about creating my own game engine because I wanted to know everything that was going on under the hood. Having used many different types of software during my career, including several different game development platforms, I know that with those platforms comes both a learning curve and baggage. By developing my own platform I was able to remove the prescribed methods and baggage that may not have fit my needs, or the needs of ETS and the EGC, in our quest to develop quality educational games.

More information on FLAG can be found at:
www.flagamengine.com

Read more about:

Featured Blogs

About the Author(s)

Daily news, dev blogs, and stories from Game Developer straight to your inbox

You May Also Like