September 2015 blog archive

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

28/09 - Events browser

Last week's update added an event browser to HD3. Events are provided by a server, but these aren't sent to the game automatically - the client (i.e. the HD3 game of a player) needs to ask the server for a list of active events. This happens via the events browser, which then displays this list and allows players to choose an event and start playing it.

Currently, only one type of event is being created by the server, which itself comes in two variations. This event type is called 'ambush' and it gives the AI opponent a number of ships that start in play. There is the default ambush duel and the mercenary variation, where the AI starts with mercenary ships instead of regular ones.
Creation of these events is completely automatic, i've set the server up in such a way that it creates 3 ambush events every day : two regular ones and one mercenary variant. Each of these last 24 hours and comes with a guaranteed card reward (a mercenary in case of mercenary ambush).

When players want to play an ambush game, they simply select one of the available entries in the browser list, and click play, which brings them to the battle setup screen. Yet, if the battle setup screen is opened from the main menu, it's not possible to select the ambush game mode. The reason for this is that ambush doesn't add that much on top of a regular single duel. The two other game modes, unpredictable and mercenaries, drastically alter the way the game is played. Ambush isn't special enough for it to be a permanent, seperate game mode, especially when keeping in mind that more 'proper' game modes are planned (drafting) and more event-only game modes are also planned. For the time being this does mean that ambush is only available through the events screen, which in turn means it's only available to players with an internet connection. However, once the 'explore' entry on the menu is activated, smaller game modes, such as ambush will show up there.

When it comes to ambush, here are some of the other ideas i have in mind for this game mode :

  • Full ambush also gives the AI some structures to start with.
  • Custom ambush turns the starting cards into custom ones.
  • Randomstrike ambush would give all the starting ships the 'randomstrike 2' passive ability.

20/09 - Events

With accounts added to HD3 in the most recent update, i started work on the -for now- only other online element : events. An event is a general term for any kind of gameplay that will be offered via a server, instead of being present in the game. Events will have variable durations, and the plan is that these will vary greatly in what they offer.

Short-term (during alpha and beta), i'll focus on smaller events, which will be similar in setup to the 'daily challenges' system in HDx. Every 12 hours, the server will offer a new event that lasts 24 hours. These will generally be single duels against an AI, where a player's first victory will grant a guaranteed reward (such as a card). This system makes it so that either the entire event, or a part of it, will be the same for all players (including the guaranteed reward). Some portions will be left to the in-game generators, such as the deck of the AI, which results in a part of the event being different every time it's played. The defining gameplay elements of the gamemode that the event offers however, will be the same for all players.

Long-term, i'd like to create bigger events, similar to the 'wars' setup in HDx. Whereas smaller events offer a single duel vs an AI, the general idea of larger events is that players will have to win multiple battles before being granted the guaranteed reward. Such events will last longer compared to the smaller ones, and might evolve over time. Unlike the wars system, i'm currently not planning on letting player progress influence the way an event changes over time, though i'm not completely ruling out this idea. These events will rely on the exploration system of HD3, which is currently not in yet, so more detailed versions of these event ideas will have to wait.

Another big event would be an arena. The setup of this is a fair bit more complex, since this idea relies on decks that are submitted by players. An arena would start off with a registration period, during which players can submit their pvp decks. After a certain amount of time, or once a minimum number of such decks have been submitted, the arena opens and players can start fighting the decks others have submitted. These pvp decks will be controlled by the AI, which means that your opponent doesn't have to be online. Unlike other events, this setup will require players to have an account, and be logged in.

13/09 - Menu changes

Most of the features related to accounts have been completed at this point. A few things still need to be finalized and tested, but the next HD3 update should be out early next week. All basic account functionality (logging in, registering, recovery, changing passwords) will be present, as well as a basic test setup for savegame uploading/downloading.

Savegame storage on a remote server is a relatively straightforward setup. If a player choses to upload their progress, the current state of their local savegame file simply gets transfered to the server. If that same player then switches to another device, they can download this data again, and all that happens is that the data on the server simply gets saved into the local savegame file on that device. So all this is, is a backup system. This setup is not capable of detecting whether or not the data stored on the server or the savegame is newer or older than what's about to be overwritten. Keeping track of this will be up to the player. The game does show when the most recent upload happened, in case a player forgets when they last made a backup of their progress.

The upcoming update also brings with it some menu changes. The 'allies' entry has been removed, and replaced by an 'account' entry, which is where all account related stuff can be accessed. The reason 'allies' has to go is because short-term, i'm not planning on adding any gameplay content that requires players to have an account and be logged in. On top of that, i haven't decided yet whether to have a friendlist setup (i.e. you have a list of allies) or a clan/guild setup. A friendlist setup is simpler, but also gives a player more freedom. Clans or guilds technically allow for more gameplay options (raids, wars), but unless a player is a leader of the guild, they don't really get to choose who ends up in the guild, unlike a friendlist setup, where they'll have full control.
Several icons have also been removed from the menu : slots, inbox, log in, backup. Slots requires players to be logged in, and as i said above, i don't want such content just yet. The solution in HDX isn't going to work in HD3 (behind the scenes, HDX still had a quiet log in system, just for the slots). The inbox was going to be tied to multiplayer events, and would be the system that was going to allow the server to send rewards from such events to the player. The final setup for events isn't ready yet, but since there won't be any true multiplayer events anytime soon, there's no need for an inbox. Log in and backup are features of the account screen, so there's no real need to have seperate icons for these things on the main menu.

06/09 - Account features

I'm currently working on setting up the basics of an account system within HD3. Once complete, players will be able to create an account from within the game, which will eventually allow them to store their progress on a remote server, from which it can for instance be downloaded again on another device.

Before i started work on this, i had to shut down some of the HDX serverside stuff. No gameplay elements were affected, so the wars and dailies system will remain working as they've always done. HDX did collect data from duels that were played, which resulted in the game sending info regarding the outcome of a duel, the races used in both decks, any active deckmods and environments, etc, to the server. The server placed all this stuff in a database, and every so often it would pull a number of entries from this database and process them. This processing involved breaking down deckstrings into individual cards and updating the total card usage counters in another part of the database. Similar, the number of times various combinations of 2 races within decks won or lost verus other combinations, or the number of times various environments and deckmods were used, were stored as well.
This entire data gathering and processing setup has been shut down now, after it having collected and processed more than 2.3 million duels. With HD3 potentially requiring a fair bit of server-side processing for accounts and savegame storage, i figured it best to stop the HDX data related scripts, of which some were quite complex. Not only did the received data need to be processed and then stored in various database tables, every so often, yet another script would run that took all this information from the various tables and turn it into wiki pages. Finally, one more script would then copy these wiki pages from server to another (since the wiki is not on the save server). These pages still exist on the wiki ( ), but no new data will be added to them anymore.

Setting up the account related mechanics (loggin in, registering, password retrieval, etc) takes a bit of work, so there's a good chance that a seperate HD3 update will be released with just these functions, so that they can be tested. I can't say yet when this will be available for testing.