Category: "R:WM Dev Blog"

UI/UX Artist: Targeting HUD Icons

UI/UX Artist: Targeting HUD Icons

Hello all. This is your UI/UX artist Paul here. The lastest update on my end are the new Targeting HUD icons! 

A lot of games have simplistic combat mechanics. You damage a ship until it runs out of "health" and then it explodes. We want more finesse than that. In Rank: Warmaster, ships have damageable weapons, engines, cockpits, and dynamic hulls with a per-polygon armor system. This allows players to decide what exactly they're after and tailor their in-combat strategy accordingly. Taking out an enemy's weapons and allowing them to escape may clue players in as to what direction an enemy faction's base or capital ship lies. Taking out the engine but leaving the reactor intact would be quite lucrative if it's a better power source than players currently possess. Taking out the reactor so that the weapons cannot fire but remain in pristine condition for retrieval? You can see where this becomes advantageous. Of course, as players will find out, all of these statuses and tactics apply equally to themselves...

Full story »

Crazy Synth Solos!

Ever since I played my bother's keytar, I've always wanted to write an awesome synth solo. I am very happy that I got the chance to write one for the Rank: Warmaster Soundtrack. The only problem was I'm not very good at soloing in C# Phrygian, so I transposed my keyboard so that I could play in E Phrygian instead (a much easier scale to play for a non-primary pianist like me). Here is a small preview!

Full story »

Big Updates! Small Updates!

Big Updates!  Small Updates!
Big Updates!  Small Updates!

The Load/Save code is confirmed working, even with the cities and AI.  So now the game state can have progress!  Also, we have our first two multiplayer tests.  The first was local and because of a bug, could only do three people.  The second lasted for 3 hours and had 6 people (thank you testers!), and was done over the internet (which was actually a first!).  There were no complaints about performance or lag, so I think the networking code is working well.  There are two known bugs that need to be tracked down, but such is development.  They weren't critical enough to stop a lot of melee battles in space!  Both pulse based and beam based ships were tried out.  A lot of good feedback was had, and everyone enjoyed themselves.  Currently, it was simply dog-fighting in space.  However, the biggest comment was how one got destroyed.  Meaning, depending on what got hit, a person might lose a weapon (or all of them!) and limp along.  They would experience the controls freezing when their engines exploded but didn't kill their ship, etc.  So it felt more like dying by pieces rather than all at once, so it was a fresh experience.

Some of the feedback was taken to heart, so some of that is the screenshots enclosed.  One was a sense of movement.  So that got implemented by green “grid lines” as shown.  Also, whatever is targeted now has a listing of who owns that object (building or ship).  So it makes it easier to know which if your friends you are blowing up!

Other code additions have been getting the camera working again so that some of the “out of body” screenshots are now possible again.  More to the point, the collisions with the ground with ships and weapons now works correctly finally.  As shown in the screenshots, the ship one is flying is smaller than one thinks.   The lighter blue triangles are showing the progression of the beam across the surface of the planet if it was perfectly smooth.  The darker blue triangles are the same triangles as the lighter blue, but follow the terrain.   In the end, you can see where the impact is on the ground.  These beams are from an older design that had a longer than usual range. 

I look forward to more multiplayer testing and scenarios as time moves forward.  Hopefully there will be some videos of that at some point. 

Full story »

Refinery model

Refinery model

Another building to share, the refinery!  This time I had an idea what shape I wanted (#1) but created additional drawings because you always want to be open to other idess before a final decision.  No matter the shape, pipes and tanks had to be in the design.  In the end the shape I wanted was picked but we went for pipes that were more fitting for war (#6).

Same 3d process. The low poly model is created in blender and texture's added in 3dcoat. I enjoyed adding the bolt and stain details on the pipes. 

Full story »

All Your Base: Building An Empire

Hello there, it's Adam again with another post about Rank:Warmaster's game systems! This time I'll be talking about bases, buildings and bots.

Base construction and management is a cornerstone of gameplay. You'll research technologies, extract and refine resources which become the ships and buildings that allow you to explore the solar system, control territory and conquer your rival corporations. But it all starts with the humble construction bot.

The game's tutorial will start you off with a single construction bot and walk you through the steps needed to build a fully functional base. The construction bot functions as an general-purpose worker; it mines ore and then processes the ore into refined materials, which are then used to construct buildings. Additional construction bots can be made to speed up construction or to expand your reach by starting a new base at another site.

Your industrial capacity is determined by three buildings. A Mine will extract ore from the ground. The ore is then send to a Refinery to be processed into refined materials. These materials can then either be used by construction bots to create additional buildings, or sent to a Factory to fabricate ships and construction bots. A construction bot will work far more efficiently when supplied with refined materials that it doesn't have to spend the time extracting and refining itself. Excess ore and refined materials can be stored in a Warehouse for future use.

All of these buildings require power, which is provided by a Generator. The larger the base and the more advanced the buildings, the larger the power requirements and thus more or more advanced Generators are needed. Turret platforms can be constructed and installed with any weapon you can produce and will fire on enemies within range, protecting your base from hostiles. Ships constructed in your factory can be assigned guard duty and will patrol around your base and intercept enemies.

Last but not least, Research Labs will produce new technologies, ship components and building designs. Each lab can research a separate project, or multiple labs can collaborate on a single project with diminishing returns to speed up the process.

A large portion of the strategy in base management will come from assessing your current situation and deciding where to spend your time and resources. If you aren't threatened by hostile neighbors, putting more into research and development will give you an advantage over your rivals in the future. If you're anticipating an attack, increasing your industrial output to boost fleet production or building additional defense turrets may take priority.  Building additional remote bases can extend your reach and provide early warning of incoming attacks, but will be a resource drain at first until they become self-sufficient.

If managing any of these systems is undesirable, there's an AI Manager that can be assigned to assume control. Base construction and research can both be automated to allow the player to focus on the aspects of the game they enjoy.  This can be advantageous as your empire grows, letting the AI manage your remote bases lets you focus on grand strategy instead of minutiae.

Rank: Warmaster will continue to increase in scope, adding new building types such as sensor towers and dome shield projectors that expand your capabilities and provide new ways to play. Signing off!

Battle music

Continuing on with the recurring horn melody from my first post, here is a battle track that uses the same horn theme. Instead of sounding peaceful and calm, I wanted something that sounded really aggressive and energetic. I changed the key, put a chromatic bass line underneath it, and made the horns sound brassy. Here are two clips to compare. 

Full story »

Missile models

Missile models
Missile models
Missile models
Missile models

Shared in this post will be the heavy missile and agile missile. Although you may not see these for long on the screen, it's just as important to give them their own shape and style. Below is the concept art and final models.

The heavy missile is slow and heavily armored but deals a lot of damage once it hits it's target.  A solid shape is needed along with metal textures to indicate the protection it has. A hazard stripe was added to further indicate the impact is going to be bad for your opponent. 

 Unlike the heave missile, the agile missile is fast. A sleek design with sharp angles was focused on. 

The mysteries of networking code

I am almost done the load/save code.  This will be a HUGE milestone, because not only does it provide the foundation for the full multiplayer code, but it allows long term play of Rank: Warmaster.  This is crucial since any testing so far was always a brand new game because it had to be.  I am leveraging the networking code as the load/save code.  Because there are almost 60 structures types that need to be sent, this is rather complicated, needless to say.  Until earlier this month, the basics were being sent by hand.  No longer.  I am rather proud of a “byte code” concept that I came up with to move structures simply.  By defining an entire structure, not only can it be broken down generically and sent, but it can be reassembled the same way on the other side with minimal data transferred.   Another advantage is that it reweaves itself back into the client system as if it was natively created there.  This allows me to send entire waves of information and it finds the right spot to go to on the other side.  Without this new means of data transfer, I would still be doing things by hand and I would be months away from finishing this piece of the game.

 

This has already been tested in deep space, and that worked perfectly.  While I had reported earlier about getting the multiplayer code running, which was true, this is now sending the entire game state, including the cities and buildings, damage, and other background information, which is far more complicated (including the individual tech trees).   I am greatly looking forward to seeing everything in action!

 

Raise Shields! Damage Report!

Hello again! Today I'd like to talk about Rank: Warmaster's defensive strategies and mechanics, as well as how the game models the damage you take from all those lovely weapons I discussed last time.

Before a ship take damage, there are a couple of tricks that can keep it out of harm's way. Ships can be fitted with two engine types, main thrusters and inertial thrusters. Main thrusters provide powerful forward thrust and enable a ship to afterburn for a massive boost of speed, consuming large quantities of power in the process.  With good reactions, a player with strong main thrusters can turn and afterburn to outrun a missile barrage until the ordnance runs out of fuel. Inertial thrusters allow a ship to move in any direction, but are more expensive and don't allow a ship to afterburn.  A large bank of inertial thrusters can allow a ship to effectively bob and weave to dodge incoming projectiles while still returning fire, making this a powerful strategy for dogfighting. Ships can, and typically are, equipped with both main and inertial thrusters and the player can decide on what balance between raw speed and maneuverability they desire.

No ace avoids taking damage forever, so next up is armor and shields. Shields are powerhungry and expensive, but have the advantage of slowly regenerating themselves over time. Armor is cheaper but doesn't repair itself in combat and is generally heavier, slowing a ship down unless compensated for by fitting larger thrusters. Both take damage on a per-polygon basis, so attackers can blow through shields or armor in specific locationd and then attempt to continue targeting those locations. To combat this the pilot has granular control of their shields and the ability to shift power between different sides of the ship, and even to reduce shield strength shipwide in exchange for boosting shield regeneration to shore up dangerous breaches in the shield array.

Once a ship's defenses have been fully breached, damage will begin to be applied to it's internal components. The player arranges their components on a grid when designing a ship, so location matters! If a component takes enough damage to destroy it, it will explode and damage other nearby components, potentially causing a cascade of destruction. There are bulkheads meant to soak up punishment that can be placed on the ship design grid in order to shield fragile components, clever placement can help prevent catastrophic failure from a single unlucky hit, and the player can research modifications to existing components that both harden them against damage and reduce the blast when they are destroyed. Ships are more likely to become disabled during combat rather than outright explode, although taking out a ship's reactor core almost always results in one of the two.

Moving foward, we'll be looking into even more ways to help players defend their ships, such as point-defense guns that will shoot down incoming missiles and various styles of armor and shielding that function better again different damage types. Conversely, we'll also be working on features for more effectively dismantling opponents, such as advanced targetting that allows a pilot to know where to shoot to hit specific components for maximum effect. Until next time!

Asset Screen #2: Humble Beginnings

Asset Screen #2: Humble Beginnings

This is the beginning of the new asset screen. It doesn't look like much yet, but quite a lot of work has gone into it already behind the scenes.

In order to see just the data in this screen shot, an entire workflow had to be developed to allow the computer to create each record, automatically detect each piece of data on any given record, determine whether it should be displayed, format it, place it in the correct spot, and mark it as either visible or invisible (which means that there are actually a number of records that exist but that you can't yet see because no one has clicked to open them).

It's a humble beginning, but now that we have this much working, adding new elements won't be nearly as difficult as adding these first few was, and further progress should be much more rapid. In the coming weeks, I'll be focusing on making this more visually appealing, on adding more elements, and on adding a lot of behaviors (e.g. many of these elements will be clickable).