Happy Holidays! It has been an exciting year for Conquest!. It started out in March with an email suggesting taking Conquest! mobile and is now a working Unity client ~75% complete. To think that this time last year a graphical client client didn't exist at all and the server hadn't been worked on since 2005 is amazing. I anticipate launching 1.0 of the client in the spring of 2016. Huzzah!
Since my last post Krees and I have hit several major milestones. Chief among them, completing combat. All of the other work to this point is to prepare a player to attack others. During combat, each player may have up to 4 armies participating as well as ships. This brought challenges in how to effectively display the information while keeping it legible. We divided the results into three tabs: Spoils, Enemy Troops, Casualties:
All of the information is displayed and allows a player to quickly ascertain the losses and gains and jump to other parts of the game. Troops can be selected to view more information, such as combat attributes. I decided not to clutter the screen with the enemy's formation; this can be viewed under subterfuge. Eventually battles may be animated this will suffice for a 1.0 version.
Chat was another major accomplishment. Conquest! began on IRC and chat was an integral part of the game. When Conquest! moved away from the IRC platform this functionality had to be replicated and so the server now supports a rudimentary chat client with global and alliance channels. While not as rich as some chat clients it allows players to quickly communicate with one another.
During the course of play, Conquest! will make announcements to the world, such as battles, promotions and demotions, and Housekeeping. These messages are available under the chat window as well; the messages below correspond to the screens above:
There were several additional enhancements made to the client. In the lower left of the screen is a portrait of your advisor. This used to bring up a small window to view announcements from commands. On the suggestion of a tester this was made into a full-size pop-up. Additionally, I moved messages from being displayed in the advisor window to the active window. I also tightened up the way the client moves between scenes as events occur to save user clicks. Finally, I went through the earlier screens made in Unity and matched the design of the later screens to ensure continuity.
We also made good progress on Questing. In Conquest! there are seven quests players may undertake, from fighting highway robbers (the in-game tutorial), searching for loot, or fighting a barbarian horde. The design calls for a map with several locations: your current city, dungeons, wildlands, etc. with each representing a quest a player may undertake. All of the client code is complete but the graphics are still in progress. We should have this done for the next post.
The server saw many enhancements as well, including shortening some of the tutorial messages, the removal of two commands ("search" and "password"), and collapsing several messages into one.
I look forward to 2016 and the 1.0 launch of Conquest! mobile for Android and iOS platforms. Follow the journey on Facebook or Twitter. Until next time, I hope to see you in the game.
Over the last couple of weeks, Krees and I completed Subterfuge. This is one of the most important areas in Conquest!, as it allows players to view the information regarding others. It was challenging from a design perspective because it combines information from several screens into one. Lets dive into the details.
The first screen is the landing page, which sets the mood and allows players to Spy, Hire a Spy, or Perform Espionage.
Players can only have one spy at a time and are can only be hired in cities which have a spy market. In addition to using spies, magical items and certain classes have similar capabilities. All of these options are handled in this one area. Eventually I could see using different graphics to represent class abilities but these will suffice for now.
These screens use the same scroll motif used extensively in the client, so there were no challenges implementing the overall design. Displaying the results, however, is where we had to get creative to display all the information while making it usable. Here is the Overview tab, which combines information from the HUD, Royal Vault, and some miscellaneous information (Liege, Alliance, Spy, Fleet).
The row of "shield" icons are the player's badges and will be replaced with distinct icons (on the roadmap once we finish other sections of the client). This is new functionality, as badges did not even exist when we still used text based clients.
Here is the Army tab, which combines Combat Stats, Settings, and a page similar to Move Units:
I was able to re-use the method for generating a formation based on the string returned from the server, which aided in the development of this page. Clicking on a troop icon brings up a new page which shows the individual details.
In Conquest!, there are six different abilities troops may have, in addition to attack/defend statistics: Ambush, Multiple Attacks, Range, Regenerate, Shield, Swarm. Some troops have these abilities innate, while magical items or artifacts can grant them. Additionally, these statistics and abilities can differ between a player's defense and campaign army. All of these details are captured on this page. This is the same screen used to display a player's own troops (under Move Units).
Espionage allows you to perform a wide variety of missions against another player, ranging from burning crops to stealing magical items. These missions do count against a player's attack total but allow you to gain assets without combat. I'm especially excited about the two missions added this year: Forgery, which allows land to be taken, and Raid, which allows you to steal magical items from a player's vault.
As the design of subterfuge completed, the population screen was refreshed to use the same graphics:
This screen shows 10 random players on the same continent as your player and is the primary way other targets are found. A pop-up menu here allows you to jump to the combat or subterfuge screens or use a magical item on the other player.
Server side changes from the past couple of weeks including breaking out troop abilities into individual parameters. Before, the server would send one comma delimited string representing the abilities. This was fine for text based clients, who would just pass that string along to the user, but puts undue burden on a GUI client trying to figure out which icons to display. Incidentally, I have not retro-fit the reference Windows Forms client I made earlier this year so it is now acting a bit squirrely.
Up next, we are going to work on the Class and Hero icons. These will not add new functionality but continue to enhance the overall experience. Once those are done we move to the cornerstone screen, Combat.
Follow the journey on Facebook or Twitter. Until next time, I hope to see you in the game.
James has been working on Conquest! since 1993.