HeroDex is a forthcoming Trading Card MMO from Zero Separation Ltd, an independent Games Developer based near London, England. HeroDex is currently undergoing Alpha testing and Beta testing is expected to start soon. The game is always played online and allows solo play versus computer opponents along with both competitive and co-operative play against or alongside other players. This brand new Trading Card Game offers quick-paced matches, a unique feats-based advancement system and flexible deck building.
Matches have been described as a cross between Poker and Rock-Paper-Scissors with bluffing and anticipating your opponent’s next move forming a large part of the strategy. All moves are made at the same time with each turning finishing once everyone has decided their move or the time limit is reached – so even matches with a large number of players proceed quickly.
Players start with a free “Fighter” hero and starting deck. Further cards can be acquired in game or purchased from the store, as can a range of different Heroes each with their own starting deck. A tutorial introduces new players to the game and even allows the first new cards to be added to your deck as you progress.
The path to Three Dimensions
HeroDex was originally conceived as a two-dimensional game with a very static user interface however at the start of 2012 we decided on a change of direction. We decided that it was worth extending the development time-scales in order to allow a three-dimensional client to be created. The server, game design and website was complete but the client could be significantly improved by moving to a more advanced engine.
The three-dimensional environment would open up a lot of possibilities for displaying cards better and would allow a much more slick user interface and flexible display of information. The result would be a much more slick and immersive experience for the people playing the game.
Zero Separation has always embraced open source software, everything from the development environment (Netbeans), Server (Project Darkstar/RedDwarf), Database (MySql) and even the office software (Open Office) was open source. Because of this our first stop was open source graphics engines. We also knew we wanted to stay with Java for a number of reasons. Java is where our development expertise is, offers excellent portability, and is the language our existing code was written in. This immediately narrowed down the field to the various open source Java three-dimensional game engines; which was a manageable list to evaluate.
The deciding factor was the size of the JME3 community and the high activity levels. Having experienced trouble with Sun dropping Project Darkstar we wanted to be sure that any engine we chose was going to be around for the long haul. The integrated SDK, multi-platform deployment, and comprehensive tutorials really sealed the deal, especially when following the first few tutorials had a test application up and running and deployed to five different platforms (including an applet and a mobile phone!) within a few hours.
The main point against was the Beta tag – however tests showed that the engine already had all of the features we needed and was stable and efficient so the Beta tag was not enough to counteract the positives.
Strengths and Weaknesses of JME3
We have now been working with JME3 for over six months, and have been very pleased with our choice. There have been a few bumps along the way but overall (especially considering the Beta tag) it has gone even better than we had hoped. The SDK works well and integrated tools such as the Blender importer have proved very useful. When Blender changed their file format and then a problem with the normals on imported models was found the problems were identified and fixed remarkably quickly.
The documentation for the most part lived up to it’s initial promise and really did introduce everything we needed. Adding shadows throughout the game with only a few hours work (most of which was spent deciding what should cast shadows and what should receive and adding the appropriate configuration) was an excellent example of this. The ability to customize the rendering by writing our own Shaders for specific materials while still using the provided Shaders elsewhere has really helped us make our own stamp on things, as has the flexible nature of the Nifty GUI which really allowed us to establish a strong and unified look and feel for our game.
There have only been two real problems, and ways around both were found quickly so development was not held up by them.
The first was some communications issues with regards to some changes we need doing in the core that caused some duplicated effort and minor delays.
The second was that some issues were found in the Nifty library (which is integrated into JME3 and used for creating and rendering the GUI). Some fixes and patches we supplied were applied to Nifty very quickly but the JAR file distributed with JME3 was not updated and we were unable to find any information on when it would be. Fortunately one of the strengths of open source came to the rescue as we simply fetched the JME3 source and started building it ourselves against the version of Nifty we needed, gaining full control over the build process as a result.
We strongly feel that we made the right choice both when we originally chose to switch to three dimensions and when we chose JME3 as the engine to use. The power and flexibility provided has allowed excellent progress to be made, and the resulting game a much more smooth and dynamic playing experience.
The latest update to RC2 of the SDK has brought the IDE a big step forwards, and we are looking forward to the first non-beta release of the engine and have no doubt that it is ready for it.
Look out for the first HeroDex trailer which will be coming soon. In the meantime please follow us on Twitter (https://twitter.com/ZeroSeparation) or on Facebook (https://www.facebook.com/ZeroSeparation) to keep up to date on news and events as they occur.
HeroDex – The Trading Card Game for Heroes.
Coming Soon from Zero Separation Ltd.