Find User here you can look for a user

Upcoming Changes to the Windows 10 (Store) Client

This post is about My Colony downloaded from the Windows Store. It does not impact the desktop Native Client downloaded from the Ape Market.

This spring when Microsoft releases the "Redstone 4" update to Windows 10, My Colony will switch from being a completely packaged 'Universal Windows' app to a 'Hosted Web App,' or Progressive Web App. Most end users should notice very little difference, other than the slide-out menu and popup dialogs looking a bit different than before.

This change reduces the Windows 10 app package from over 200mb to about 1.5mb. It also speeds up development time, as repackaging the app for Windows 10 will no longer have to be done for every release, and end users will receive the latest updates without even having to download an app update.

Most users of the Windows 10 app probably do not even realize that the app had been a Hosted Web App from its first release all the way up to v0.40.0 which was released just a few months ago (in August). For those who do not know, a Hosted Web App is essentially just a web browser window linked to the Web version of My Colony. What makes it different than just using the web browser is that Hosted Web Apps also have access to native Windows API's, such as the ability to save games to the local file-system, making them a bit more capable than just playing the game through a normal browser. The Hosted Web App container also theoretically has less overhead than a full web browser.

The reason I switched away from using the Hosted Web App model last fall was because I wanted the Windows client to be more stable than the Web client during updates. As many players on the Web know, things can get messed up during the few days that an update is taking place. In addition, the Hosted Web App would not always work properly when the user did not have a good internet connection.

So why switch back? The next major release of Windows (Redstone 4) brings support for Service Workers, one of the key components of Progressive Web Apps. Service Workers, among other things, allow a website to cache data in a way that makes them 100% usable whether there is an internet connection or not, just like an app downloaded from the store. Chrome already supports Service Workers which are active on the Web version of My Colony (which is why Web users need to do a 'Hard Reload' any time changes are made during development cycles). Also, I have recently made changes to Ape Web Apps which will allow me to keep the Hosted Windows version of the app back on the current stable version until the in-development update is ready for release.

Finally, a major factor in the decision comes down to the future of the "Universal Windows Platform" (UWP) itself. Truthfully, not too many people download My Colony from the Windows Store. Many organizations have been ditching their Windows Store apps recently, and it is easy to see why. Now that Microsoft has totally abandoned the Windows Phone, the UWP platform really doesn't make much sense any longer, particularly considering how gimped the UWP API is compared to traditional Windows Desktop applications. The difference in capabilities between a UWP app and a Web App are minor, and a game like My Colony really does not benefit much from being packaged as a full UWP app anyway. Given this and just the time and effort it takes to package, compile, and submit a new UWP release of My Colony every week, it just makes more sense to convert this game back to a Hosted Web App like it was before.

I actually think that Progressive Web Apps are going to be the future for a lot of things anyway. I am also looking into turning the iPhone version of My Colony into a Hosted Web App at some point, as the game's usage on iPhone is also fairly low. Android will probably not be switched over though, since it accounts for about 90% of My Colony players and I don't want to nuke the server. The Native Client desktop versions will also not be converted at any time. I feel like those are the versions that will still be around in 20 years when all of the app stores and mobile platforms are history.

Now maybe someday when My Colony is a mature game and I am not making such frequent updates, I will convert it back to a full packaged UWP app. But right now when I am updating the game every week, it just takes a lot of time to be constantly updating the game on every platform.
Owner of Ape Apps, LLC

Linkback References

My Colony

Ape Apps, LLC is an independent software development company founded in 2010 by Brandon Stecklein. Over the years, Ape Apps has published over 400 apps and games across various platforms. You can get in touch with Brandon on Twitter or by leaving a post on his wall @bastecklein
App of the Day