In 2015 we have been very productive, we have established new relationships with with new partners and clients. We are working on Greed PS4 and XBOXONE as a development partner with Headup Games and the next installment of Tiny Troopers for Wired Productions on XBOXONE and PS4. We have also been working on changes to Majestic Nights but also several projects for other people. As some of these projects were for the ABC, we have placed them on this site to play. This was a set of children’s games, we still have versions up on our servers for you to check out and play.
It’s been a while since I created a post about what Epiphany has been doing. The roller-coaster ride of game releases consolidating our efforts on development after the chaos of shipping a big game.
Now that it’s all said and done, Epiphany Studios ended up making some really useful stuff. And that stuff, we will share with other game developers, first in Sydney then in other places. The core what we have been working on was to address the need for a Steam like service for games (mostly the things that developers want to use in their games) that includes Friends, Achievements, Authentication, Messages, Internet Play Lobbies and other stuff.
So with this requirement Epiphany took Morgans side project right into the mainstreaming use a project called Birdcage on its game Frozen Hearth. This gave Epiphany the following without needing an other third party; DRM (We use Game Shield, but we hook it up differently), Registration of Accounts and that was it initially we needed it to do internet play, we wanted all the players together. So Epiphany released its game having DRM but a minimal integration and included registration in place for out internet play service. What was also interesting was the REST framework we were creating and what it could be. Then along came a really great game which Epiphany became a part of. This game was different from our usual hardcore games but we wanted to add the Epiphany spice to it, improved the Game Play interface and generally put the steroids into it.
What had we made a REST based persistence service with a Unity integration, this gave us community tools like Leagues, High scores and more importantly game data being saved to the cloud and a game turn execution server. So we now have community management, DRM, multi player, storage of generic game play objects and global game wide game turn execution (with an interface for custom rules that are linked in a database).
These systems we collectively call the Revnet service but it’s more than that. What it leads to is our next step in the development of persistent mass player data effectively large numbers of players in the one game. Future partnerships with other developers and publishers. Epiphany has always had a strong technical base, and chances are the products we produce will be designed to work with with our plethora of games. Last year we shipped a total of 9 games, this year we are shipping more. Some are big some are small but all will benefit from our new service.
Our next set of games will utilise all these tools to enhance their game play and I’m already planning the next big game. Frozen Hearth will benefit in the following ways, internet multi player, persistent user information and better control of patching.
The current project we are working, benefits by having a massively multi player service. Its game play is separated from user authentication but uses a token to perform actions for the player. Each of the objects can be separated and paired out into their own services via a message bus later for scaling (something like Mule ESB product; which we will leverage in the future).
The entire system is written in Python using a framework; however we made even more crazy stuff.
Message generation for API’s in integration is a tedious task to say the least. Our developers ended up creating a message generation program that makes the C# for Unity, C++ for Gamebryo and probably will make Unreal Script for UDK that wrapped up with our custom Json parser forms the engine side integration.
So how would it work in Unity, GameBryo and Unreal . Basically we supply a Plugin for Unity which deals with all the messy bits of HTTP, SSL, Json etc and returns Unity objects. In Gamebroy we do the same thing but its C++, in Unreal its probably going to be C++ with an U Script interface. And bam! You get game objects in the engine that can persist back to a server via HTTP. The other components are a Service C++ lobby that hooks into the rest of the framework to provide a battlenet like service, a Python Lobby server and a custom Python Gameplay service. These all however talk over the same interfaces but when it gets to network play we just facilitate the communication between a client and server or another client in the case of Frozen Hearth. The system is immediately scalable, durable, robust and flexible because of the way we did it. I think this will be very useful to anyone wanting to create games.
What’s next, well payment gateway support it took our friends at sit rep a while to do payment integration for in app purchasing we think it should take 10 seconds if it doesn’t well they don’t got time for that #$%^. Ill integrate the APP store, Google Play, Amazon, Pay Pal and Samsung.
If you want to know more about Revnet, contact Morgan Lean. It’s still in development but its growing all the time. We intend for it to be a low cost service and free to develop API. If you have a game which you think is amazing that needs some of the features, let us know we are here to help. This type of thing is too useful to not be shared.
Epiphany Games has created a game services department to better serve the needs of corporate Australia and our overseas partners. The Game Services department focuses primarily on creating fun and engaging mobile games and products for partner companies. Epiphany’s primary platforms are iOS and Android, however Epiphany has produced larger projects for the PC platform.
Recently Epiphany has delivered three mobile games in parallel for one customer, integrating into a large existing iOS and Android application framework. Previously this year Epiphany created one game and one physics-based Android screen-saver for a large US-based Entertainment Company.
Epiphany hopes that this new department of the company can help facilitate the transition from traditional marketing and brand-support forms to fully designed and well crafted game-based experiences.
As Epiphany Games wants to give players an experience in a variety of platforms; one world but many ways of interacting with it, I thought I would take the time to make some points about tools that can assist our vision and bring that experience to multiple platforms. I’ll also talk about how those tools help our projects which are not in the same setting; some of which are revenue sources for our company.
Our goal of cross-platform games requires us to have a higher level of understanding and deeper level of integration than many other companies. We have pushed out many games this year and last year on iPhone and Android; before that we were developing engine technology to enhance our ability to make the games we wanted to make. Early on, we found that to enable a certain level of cross platform development C++ was the language that gave us the most bang for our buck. We have a strong team, well versed in C++ from Frozen Hearth and GameBryo development. Frozen Hearth uses a combination of C++, C#, and LUA script. Our mobile title ‘Runic Rumble’ uses C# almost exclusively because of the engine choice; I would have liked to have the development in C++, but the project was too far along and we decided to stick with C# on Unity.
At Epiphany we also develop many mobile games for companies in Australia and Japan, and on these projects we tend to use C++ to get the project done in a tight deadline. This month we developed three games in two weeks to an Alpha stage using a very small mobile team. These games functioned on both iPhones and Android phones and were skinned with different themes for different levels. Using an objective-C wrapper or a Java Wrapper on the different platforms allowed us to release the games at the same time on the different platforms. When we partnered with Flat Earth Games, and we are using the same cross platform techniques in this development and I think it will help us a great deal. The project is really cool and we are making some great progress, and I think our approach is going to help Flat Earth Games and ourselves get the game out to a variety of platforms and market places. The next step for us is to take some of our free games and our paid Android games to the various market places; we use is a company called Codengo to deal with the plethora of mobile stores. For the App Store we must still submit ourselves.
One of the hardest and most time consuming components of mobile development is submitting your game to a store for review and then tracking the results across stores and sectors, there are many stores that game developers never even think of like the Samsung store. Codengo is a new distribution service that puts the mobile submission and tracking of games in the hands of the developer, for a small fee and no percentage of the games revenue Codengo will submit your game to over ten stores, Google Play, Samsung and others. The service can track the results consolidate the marketing material and within a few clicks your game is submitted across the world to a variety of market places. Codengo isn’t free; however the benefits of a one-service submission will be attractive to cross platform developers who distribute in multiple markets.
By using this cross-platform approach we hope to service our customers on both platforms, in a variety of market places, and enable them to experience our games in a variety of ways. I really think this cross-platform approach services our customers better because we can give them a variety of experiences on multiple platforms. It’s imperative that all Australian Game developers look at how they are dealing with multiple platforms because the need is never going to disappear.
So I’m very excited about Runic Rumble, I decided to write a blog post. Epiphany Games has done a bunch of mobile work for clients in Australia and Abroad but this is the first time we are creating a mobile game specifically for our own players. What’s more Runic Rumble players will receive some nice benefits and treats in Frozen Hearth, I won’t go into specifics but we have to create some serious technology to support our players of all platforms. This got me to thinking – what are the Golden Rules of Mobile Game Development:
Keep the Gameplay simple as possible, have one good game play idea and focus on that.
Do what you can with the platform to make it easy for the player, people don’t want to have complicated sign-in processes – single click sign-in is preferable for multi user games.
Make your narrative simple, yet engaging, draw the players in on one sentence.
Test often on many devices. Even iPhone has several devices and many versions of the OS.
Keep it small, the smaller the download quicker the player is playing your game.
So, onto the new technology. At Epiphany we have created some great pieces of tech used in over 100 games. This ranges from iOS to PC and Console. Today we have started an exciting project that many game developers will want, as what it does is allow developers to unite their players across games and platforms and share their achievements online. More importantly it utilises the services we like to use already: Steam, Apple Game Centre etc. It’s not a replacement – it’s an enhancement, one that will be in the hands of the Studios who make these games. Secondly it has some nice features out of the box to get started, like high score tables, league tables and achievements you can use these and give your players a login quickly and efficiently using a JSON or XML API. Looking forward to sharing future updates about this new tool kit.