Student Success: Ryan Mininger, from Flash to published Phaser games

As future archaeologists will quickly realize, financial decisions are among the most influential parts of our lives. However, large numbers of people are not familiar with the most basic concepts of economics and finance.

To tackle this problem by leveraging the power of video games, Ryan Mininger developed Finances 101 using Phaser. Finances 101 is a cross-platform educational game created to teach the basics of finance and help people improve their lives by making smarter financial decisions.

Ryan has a mixed background of animation, video production, web design and 3D modeling. With a strong visual focus, Ryan took on the Flash stack during the last decade.

With the arrival of the iPhone and the advent of the mobile-first world, transitioning into HTML5 and cross-platform development became a must. Ryan was able to successfully complete this transition after enrolling in Zenva’s The Complete Mobile Game Development Course – Platinum Edition (15 games), which provided him with the foundations to take on a real project such as Finances 101.

Ryan’s story is an example to follow. In an ever-changing technology landscape, constant learning, adaptation, and developing multiple complementary skills is the only path to success!

Can you tell us about your programming and game development journey?

I was fortunate to have had the opportunity to begin taking computer lessons before school in 5th grade on old Commodore PET computers with cassette tape drives for backup. I was learning rudimentary BASIC programming, but only got so far. A few years later, my school was using Apple ][e computers and had a raffle for an Apple ][c and my sister’s ticket was the winner!

While I only programmed in Apple’s BASIC language for very basic games. At the time, I was having more fun playing computer games than trying to make them. Fast forward a few years when I was in college and had access to the Internet via an older Macintosh, I was exposed to the WWW and newer computer games and eventually took classes to learn HTML and began creating web pages.

I continued to make websites using code snippets here and there wherever I could find and began learning some basic MySQL and PHP and also tried to work through the C for Dummies books, but never got very far. I even had a few game programming books, but the complexity of the code just flew over my head.

I was fortunate to work for a company that emphasized continuing education and I took a week-long course to learn Flash. That got me started doing more interactive CD-ROMs and websites using basic Actionscript. As a 3D animator and video editor, I also did quite a bit of graphics work and I was able to use Flash’s interface and complex nested timelines for several large complex projects.

Then Apple introduced the iPhone and all of my Flash knowledge was useless for creating apps for iOS. At least as far as I knew at that time. I got away from programming and Flash for a few years while working more on 3D and animating complex machinery and while doing so, I had to use a graphical interface for tying objects together.

I started to see the power of code again, but was still a visual person and not a code-based programmer, so I never really thought I would get to the point of making a real game.

As a Flash developer, how did you successfully transition into Phaser development?

The wonderful world of Phaser was introduced to my by a friend who helped develop the database backend to the game. I had met with a client about an HTML5 game project and my friend and I had discussed making some games for some time, but were both busy with other work projects.

When this game opportunity came about, I asked him if he thought we could do it and if so, what was the best way to approach it. We discussed a few things and he sent me the link to the Phaser webpage and I started reading. I literally knew nothing about Phaser or how Javascript could be used to make games that could be cross-platform and also run on mobile devices. He said that from what he had read, Phaser was a solid framework, so I said sure, why not? We ended up getting the project and I was very excited. But then the reality set in that I didn’t have the slightest idea how to make a game using Javascript.

After a few weeks passed, I started to panic that we would not meet the project deadline, so I began searching for training material. The Phaser website is loaded with wonderful examples and documentation, but it is difficult to know what to look for, if you don’t know the basics. While searching for tutorials about Phaser, I came across the Zenva Academy Platinum Mobile Game Course for 15 games. I was able to view a sample of 3 tutorials and I immediately signed up and got to work learning Phaser!

What I discovered was that under the hood, Phaser and Javascript worked together very similarly to how Flash’s Actionscript worked with a visual interface. Once I was able to see how objects and methods were sorted, I was able to take advantage of my Flash knowledge and the game code started to fall into place.

Ryan Game Dev 2

What’s Finance 101 all about? who is this game for?

Finances 101 is a game intended for students grade school though high school (or anyone really) to help learn about money management and making sound financial decisions. There is a real life game played at the college level, as well. The online game had originally been developed by another group of programmers in Flash, but it was rather outdated and also did not run on mobile devices, so it was time for an overhaul.

What was the biggest challenge and how did you solve it?

The biggest challenge for me was learning how and when to implement proper coding practices such as when to use a FOR loop in place of simply copying and pasting code several times. I solved many problems by simply reviewing the course lessons and opening the example code.

Eventually, things start to make sense and the next thing you know, I’m using an array as a clever placeholder for data that I need elsewhere in the game! I never dreamed I would have wrapped my head around Phaser. The game has 13 levels, and each level I coded has vast improvement in code optimization from level to level as I learned more and more. I could probably find ways to improve the code at earlier levels, but for now it is working, so I’ll make those improvements on my newer game ideas I am working on.

Now that I think about it, I believe the biggest challenge was to wrap my head around Javascript closures. Which now make complete sense to me, but once I realized how to use them, I was able to make things happen that I never thought possible.


What advise would you give other Zenva students who haven’t built their first game yet?

My advice for Zenva students is to actually take the time and implement what you are learning in the course. I found that watching the videos was only part of the process. You must simply dive in and start to make changes to the existing code or try to make something from scratch and keep referencing the videos when you get stuck.

Once I actually started to type, a giant game programming world opened up before my eyes and it is absolutely amazing!

What’s next in store for Ryan?

The last several months of working on Finances 101 has allowed me to put together a large list of games that I want to make with Phaser. I have 3-4 in the works at various stages. One day, I would like to see one or more of my ideas get published in an app store and potentially have many people playing my games.

How can people reach you?

I can be reached via email at [email protected] and my work can be viewed in my portfolio in my company website.

Orange Peel Productions