July 2013 blog archive

This page contains all the blog posts from july 2013. To read the most recent blog posts, click here.

28/07 - Ultranought II Flash porting

As with Technospire 2 (TS2), i've made the Java version of the Ultranought follow-up first. It's faster to port a Java game to Flash than the other way round, thanks to a small tool i have that turns basic Java code into Flash code. It's also more interesting to start with the Java version because it's the larger of the two resolution-wise. That way i can design the game in the largest resolution and scale down both images and resolution dependant code, instead of having to design the game for a smaller screensize and having to scale things up.

Thanks to some changes i've made to both the way i structure Java and Flash games, porting is going faster compared to TS2. It's mostly render-related code that needs to be adjusted manually, not just because of the various dimensions of images and distances that need to be scaled down, but because there are different commands in Java and Flash to render stuff to the screen.
I can optimize this even further, but it could affect performance slightly. This isn't going to be a problem for turn-based games, like cardgames, but for Ultranought II, it might be a problem.

After TS2, Ultranought was the best choice to make in Java, because it's a realtime game and it would allow me to get a feel of the performance of Java versus Flash. The danger here is that while the game might run smooth in Java, it might not in Flash - this is still unknown at the moment.

The porting is going well thus far - I expect it to be completed within the week. Then i can start on preparing both versions of both games for release.

21/07 - Ultranought II nearing completion

Last week, the focus was on the remaining mechanics for everything related to combat. Each of the 8 races in the game offers a unique ability ranging from repairing the base, speeding up allied ships to disabling enemy ships near your own base or even keeping the opposing base from building ships for a while. These abilities have now been added, so technically, the game is complete.

Up next is balancing. The range of available difficulties is rather wide : the game starts off with 8 available areas, one for each race. Each of these starter areas are of the same difficulty. One could do all of these side-by-side to start unlocking technology of all races, or one could focus on a single race, gaining more experience to invest in that race its abilities, but also facing stronger opponents much sooner.
Everytime a battle is completed in an area, this area its difficulty level goes up. At certain levels, other areas unlock, which start at level zero, but which have other elements to make them more challenging.

With the various abilities for ships and activatable per race, as well as the various areas, there are more elements that all influence the perceived difficulty or challenge of a battle, so this makes balancing a bit more complex compared to the first Ultranought game.
Once the balancing is completed, i can start on porting the game to Flash. The Flash port of TechnoSpire II went rather well, but Ultranought II is an entirely different game, so it's hard to predict how long this porting process will take.

14/07 - Ultranought II progress

While i'm still doing some preparation work for HD 3 and HD SQ, the focus is of course on the Ultranought follow-up. Most of the combat related mechanics are in : ships can be launched and will fight each other or travel to the opposing base. The bases have turrets who will seek out targets as well to defend the base. The various abilities ships have, ranging from teleporting, to AOE damage are all working as well.

In my previous post on Ultranought II, i mentioned that the player can build ships for the 8 races. To be able to do so, players first have to fight a certain race to collect experience which can be invested in skills that unlock or improve the ships of this race. Next to ships, each race also has a unique passive and activated ability.

The passive ability gets stronger the more energy you have in stock for this particular race. However, the size of the energy stock is limited (but can be increased during combat), so players have to choose between continuously launching ships for this race and thus use up the energy they have stored or enjoy a strong passive ability bonus. All races do have a ship which generates its race's energy type while it's on the battlefield.
The activated ability provides an effect with a fixed strength throughout a single battle, but just as with ships, experience points for a single race can be invested to make this ability stronger and cheaper and to lower its cooldown.
There is a 3rd ability for each race, which works the same for all races : it takes about 80% of your current energy stock and uses it to increase the maximum energy you can store with about 20% (these values can be improved by investing experience points). So while this temporarily takes away a lot of energy which is boosting the racial passive ability, the potential maximum strength of that same ability is now higher.

Resource management is going to be a more important than in the original Ultranought, especially in the more difficult battles, where players will need the ships and abilities of all 8 races to survive. Players will have to look for a balance between energy generation (destroying enemy ships or having enough energy generating ships on the field), spending energy for both defensive and offensive purposes and making sure there's enough energy in stock for the passive ability bonus.

07/07 - HD3 Core Mechanics

Coming from HD1, over HDS, to HDX, the core gameplay of Hidden Dimensions hasn't changed. There have been plenty of underlying mechanic changes since HD1 to support new abilities, or to improve performance and fix bugs. HD3 will no doubt introduce its own set of changes to deal with the proposed ability system upgrade (see this blogpost).
For HD3, there are also a number of planned updates that do influence the actual gameplay. Note that these are still under consideration.

Decks always had a minimum of 30 and a maximum of 60 cards. For Pvp and content at the highest difficulty level, players will often choose a deck with as few cards as possible. After all, the odds of drawing a specific card are higher, if the deck is smaller. Card draw abilities also become more useful the smaller the deck is. The difference between a 30 and 60 card deck is too large, so i'm considering increasing the minimum to 40 cards.
This has some wanted balance changes, towards decks with carddraws and combo decks, but it also increases the randomness of a deck. Looking at the detailed gameplay stats that are being collected from HDX, (see here), the average decksize from over 1.2 million duels is 44 cards, so for the average player this won't change much. Even so, (and regardless of whether this change makes it into the game) there are some other changes planned (see below) that lower the randomness of HD duels.

Most players have no doubt experienced the following scenario : you start off with an opening hand that contains few structures, but still enough that you know you'll be able to get started, even though the first few turns will be slow. You could ask for a new opening hand, but a new hand would have about the same chance of being worse than it has of being better, so you start with what you have. On the AI's first turn, it plays 5 structures - your slow start has already lowered your chances of victory considerably and it's only the first turn.
The early game and the opening hand can have a huge impact on the chances of victory - a good start for one player can completely lock the other player out from even setting up a proper defence.
If the early game could be slowed down a bit, one has more chance to recover from a opening hand that's not stellar. One of the best ways of doing that is limiting the number of structures one can play per turn to one.
This has its consequences. A ship-based deck with only destroyer or larger sized ships is viable right now as it has a good chance of playing a destroyer by turn two. With this change, such a deck would be slowed down a fair bit and a balanced ship-based deck that brings some fighter and cruiser sized ships, next to heavier ships, actually stands a better chance at victory. This is a good thing as it promotes deck diversity. Resource management becomes more important, and could add a new tactical element to the game. Then there are possibilities to add actions or abilities that can influence the limit of the number of structures one can play.

Discard phase
If you are about to end your turn and you have 8 cards in hand, the game will force you to choose one of these to be discarded. There is no real reason why this has to happen - decking is no longer a loss condition and with the proposed change to playing structures, having a full hand might be more likely.
I want to give players a choice, instead. If the turn is about to end and you have 8 cards in hand, the game will ask you if you want to discard one. If you choose to keep all 8 cards and your opponent doesn't cause you to lose cards, you won't be able to draw a new card at the start of the next turn as 8 remains the maximum hand size.

Discuss these planned updates on the NULLL Forum.