Adobe finally made the speculation of Flash’s impending death a reality this summer by announcing its end-of-life will be official in 2020.
Adobe, alongside tech giants Apple, Facebook, Google, Microsoft and Mozilla, will support the technology for only the next three years.
Many of us in the industry have been anticipating this, but now that the countdown until Flash’s demise has officially begun, many developers must start asking: where do we go from here?
It’s well known that Flash has been one of the core platforms for bringing casual games to market since the early 1990s, for both PC and mobile experiences.
In fact, more than 20,000 apps in the mobile market are built using Flash technology. This includes the $3.3 billion social casino industry, of which 85% of the market is formed by mobile games, according to SuperData.
With the end of Flash now inevitable, PC and mobile game developers are left with the important decision of what to do with their games. Fortunately, the industry has some viable options for moving away from Flash.
Some may opt to abandon current platforms and start from scratch, rebuilding a new game from the ground up. This is the approach Disney took earlier this year with its popular virtual world for kids, Club Penguin, when it shut down the desktop experience and rebuilt it exclusively for mobile.
Another option is to transition the entire gaming suite to a new codebase and platform, while avoiding game play disruption or upset among the games’ communities. While this option might require a lengthy timeline, it will ensure the user experience is unchanged and players remain dedicated to a developer’s games.
Otherwise, developers can simply do nothing and let Flash games phase out when the platform is no longer supported in 2020.
While this is the most unattractive option in most cases, many indie developers may not have the resources to take a different route. The funds and manpower needed to support a full transition from Flash to a new codebase can be a barrier to switching platforms.
After weighing each option, and determining what resources are available, many developers are choosing to transition to a new platform to keep their games alive. This was the option our team at FlowPlay decided on, kicking off our initiative about a year ago, and the effort has felt like rebuilding an entire car while it speeds down the freeway.
Critical aspects that make the game run must be replaced, without interrupting any elements that may become detrimental to forward momentum.
Currently, our team has nearly completed the transition, and along the way, several valuable lessons have emerged. From these, we’ve identified a few best practices that PC and mobile developers can implement to enable a smooth switch from Flash to a new platform:
Determining the best route
There are several options and platforms available to revamp a game, from HTML5, to Xamirin, Unity and Haxe
When evaluating which alternative is the right fit for a game, it’s important to weigh the pros and cons of each, taking a look at the biggest obstacles that might emerge during a transition, and what the desired outcome looks like.
For example, Xamirin might be a natural fit for a mobile-only game, whereas Unity is a popular choice for developers looking to bring games cross-platform on both mobile and Steam.
Fine tune your pit crew
Transitioning your codebase is no easy feat. It requires assembling a team of engineers who are solely devoted to converting each line of code, ensuring the transition is accurate and thorough.
In FlowPlay’s case, we had nearly one million lines of code that needed to be translated into the new language. Even with a dedicated team leading the charge, it took approximately 18 months to complete.
Time for a new paint job
User experience is one of the most important factors when it comes to overhauling a game. Players are accustomed to seeing their favorite characters, game layout, and charms, and will react quickly if they notice any changes or interruptions.
There are countless examples of this happening, such as when Facebook makes changes to its UI and experiences a period of upset and negative feedback from users as they learn how to navigate the new design.
This is why, especially for games, keeping the user interface similar on the new platform is crucial. In order to avoid a community uprising, make only the slightest, necessary revisions to the UX. This will give the game a fresh, new look, versus completely changing the game’s unique attributes that keep players coming back.
Take It for a test drive
After rewriting the code, it’s vital to confirm if the transition was successful, and identify any bumps in the road that may need to be resolved before the porting process begins. We did this by developing a mobile game using the Haxe toolkit, and launching it on several platforms to test our skills on the new platform throughout the transition.
From there, we were able to make the necessary code adjustments before they caused problems among the player community.
Enjoy that new car smell
With the above steps and testing completed, developers can start porting from the old platform to the new.
With the code rewritten and tested before porting, the new platform should be implemented without any additional changes. This allows everyone to enjoy the shiny new version, and the overall player experience can remain top of mind while the transition is executed behind the scenes.
PC and mobile games alike will be impacted by the death of Flash. When deciding whether to transition platforms, developers should consider the unique needs of their games, and how those will fit with various coding languages.
In our transition, Haxe made the most sense given several benefits, including the ability to produce native mobile apps and cross compile to HMTL5 for the web using the same codebase, and access to OpenFL for porting Flash code.
Additionally, we were much more comfortable adopting an open source platform over a closed platform, like Unity, so if any critical issues came to light that needed to be resolved, we had the power to take control and evolve the platform to our benefit.
With an estimated 2.2 billion global gamers expected to generate $108.9 billion in game revenues in 2017 – projected by Newzoo – updating a game’s codebase and platform from Flash to become best-in-class is more important than ever.
And while there’s no ‘one-size-fits-all’ solution that meets every need of every developer, there are enough options to enable most PC and mobile game developers to leave Flash in the dust and kick into high gear before the 2020 deadline.