So it's been a couple of crazy months between selling my house and implementing elevation features and formation AI. This is going to be a pretty lengthy devblog, I'll be covering elevation, formations, the next demo build and talking about the direction I’ve decided to take armor progression in.
I do admit that implementing elevation took a lot longer than expected. Due to the turn based combat system, I am somewhat limited to flat surfaces, I simply do not have the time or money to do anything more sophisticated than that. I spent about a week prototyping combat on uneven ground but then challenges like getting the foot IK to work and still be performance friendly posed too many issues. Without the proper foot IK, feet would clip into the uneven terrain when stationary and any movement across uneven surfaces would result in the same thing. In short, it just looked stupid. The other thing was properly displaying grids on uneven terrain, if I wanted to do that, I'd have to use a much more sophisticated way of drawing grids.
When doing natural environments, environments just don't look that “natural” to me if everything is flat and if you are trying to do a forest, there needs to be subtle elevations and contours to make it look somewhat convincing. Creating a natural and open forest area on a relatively flat surface to cater to turn based combat was one of the problems I faced. I also had to balance my time between several aspects and not just level design.
What I ended up doing was creating the terrain separately with the Unity editor and creating a custom square terrain brush to create the "elevation tiles". I'm quite happy with the end result, the terrains are flat enough to cater to turn-based combat but at the same time, the angles are not completely rigid either so it does look to some degree "natural", without any hard angles. At this point in time, I am happy with how elevation is working from a technical perspective. The other thing I had to ensure was that the elevations were not too high either as that would displace the use of formations over elevated areas.
So how do elevations impact combat? Well in Dead Monarchy, you don't just simply attack the enemy. Attacks and abilities are divided into two hit zones, head and body. Some abilities have a head and body variant and other abilities only have a body variant. Attacking the head does bonus damage but costs stamina, body attacks don't cost stamina. Both hit zones are then protected by armor which comes from Helmets and Armors. In order to do damage, your total damage needs to exceed the armor value. Sometimes it won't and that is when you need to reduce it with a break ability. In essence it is quite similar to how combat works in Banner Saga, but you now have two hit zones to consider. Why did I chose to do something like this? Simply because I am a player that is always craving for more challenges.
So with that all out of the way, when you are fighting an enemy that is standing on higher elevation than you, all body attacks are disabled, meaning that you can only use head orientated attacks to damage the enemy, you also suffer a hit chance penalty since you are lower with less areas of the body to hit. The last thing is that your head attacks damage the body if you are on lower elevation, meaning you won't be able to decapitate enemies to potentially lower unit Morale/Resolve. If you are on higher elevation, the effects are reversed. You gain a bonus chance to hit and your body attacks now do bonus damage, the same amount of bonus damage that a head attack would do.
After spending a couple months on this, I am now quite happy with where they are. I planned to have combat with up to 24 characters on the screen and it quickly became apparent that I needed to implement formation AI to keep it from turning into a mosh pit. I wanted to go with a higher unit count as I was tired of playing games where you only controlled 4-6 combatants, it was always my dream to be able to control more than that. If I did go with a lower count, I wouldn't have to worry about this. It applies to the real world in some ways. If you had an encounter between 2 groups of 4, you wouldn't need that much organisation. However, a fight between 100 vs 100 would need some degree of organisation, or if anything there is enough manpower to make organisation a possibility and enough factors for chaos and confusion to ensue. I applied this to my own game. Having 12 characters charge at you in a haphazard line quickly became old, I felt there was room to expand on this.
As of now, the main reason you would want to fight in formation is to protect priority units from ranged units. That's right, I also found the time to implement ranged combat or at least the basics. The other incentive to forming into a formation is to reduce the chances of you being flanked. Being hit with a flanking back attack will bypass armor, so it is always nice to have someone watching your back. I have also implemented the framework for formation shapes to grant bonus status effects, however the UI work has not been done yet so I feel that I cannot properly support "formation abilities" as of now. I do feel that when I get around to properly supporting this, both the player and AI will have even more incentives to fighting in formation. I still feel there is enough reason to fight in formation though. If you are completely surrounded on all 4 sides, you have the potential of being hit from the back 4 times as the unit will rotate to the direction it was hit in after the hit registers.
Armor is a constant thing I continue to work on and rework. Not just the models themselves but the systems as well. I've decided on 10 tiers of armor, with an 11th tier being "legendary armor". Both legendary armor and 10th tier armor will share the same armor/helmet rating, however legendary armor will grant bonus abilities and effects. You are limited up to 10 skills/abilities per character so acquiring legendary equipment will essentially grant you a bonus skill. By the time you acquire legendary armor there will be a shift towards you building a character around a set of armor and the bonuses it provides as opposed to just acquiring armor purely for protection.
I do need to clarify though that 10 tiers of armor doesn't mean 10 armor models, each armor tier will have several models within each tier to allow you to create distinct looking characters that you can be attached to and then cry over when they die (the best part). Legendary armor will also have several different models and those models will also have different themes. IE legendary armor that has a Roman or Samurai theme. Initially I was hesitant on doing this, but with the top down camera angle, I quickly found it was really hard to distinguish characters if they were all just wearing chainmail armor with some slight differences. I needed more variety to distinguish each character especially around the head and torso areas. From a "story" perspective, it starts to make more sense as well but I'll elaborate that some other time.
In short, by the time you reach legendary armor you could potentially be fielding "Samurai, Spartans and Roman Legionaries", it sounds really bad on paper but it's one of those strange things that actually work when in game. Prior to that however, armor will be a bit more structured only being influenced by "Western" civilizations. I feel that this is a nice balance, by the time you reach end game, it's nice to have really distinct characters as opposed to just more chainmail clad warriors.
I suppose this is one of the drawbacks of drawing inspiration from history and keeping your armor sets “grounded in reality”. Since the majority of armor is all ergonomic with no distinct or wide angles, when you combine a higher camera viewpoint the subtle differences between each set start to phase out. Of course you can zoom in quite far, but from further away the only way I can solve this issue is to use more distinct looking sets or armor types as opposed to a chainmail with leather studs then a chainmail with a leather vest. In short, the differences need to be far more significant. On a side note, weapons will follow a similar structure as well, more on that later.
In the previous build, there was no stat growth, I've now implemented the framework for this. Essentially the average cap on all stats is 100, with the max cap for humans being 250. Different backgrounds will have soft caps on stats. You have starter backgrounds, IE a farmer who might have decent growth in Strength and Stamina (100) but poor Resolve, making him prone to breaking in combat. Eventually you'll gain access to advanced backgrounds say a sergeant who would have a higher cap on all stats. By end game, you'll probably come across the "heroic" backgrounds who can reach the max stat cap. I say soft cap as there is still some variance. A farmer with a soft cap of 25 resolve by max level, may still exceed that and get up to 50. There is no hard cap, so although the chances are extremely small, all classes can technically reach the max cap. All the better as you'd probably feel very attached to that farmer as you know the chances of getting a character with that growth is extremely rare. Since it is a farmer as well, the upkeep of that particular character would be far lower than a advanced profession with naturally higher stat caps.
I've also decided to make this growth automatic, so you don't have control over this. I actually feel this works with the design as opposed to working against it. To me, it makes the character growth more organic. The other thing is you are not managing one character but several characters and each character already has several skill trees derived from weapon types that you need to manage and decide. I don't want to bog the player down too much. I also feel a little loss of player agency is a good thing, too much control can be bad. I feel like I've struck a nice balance.
I've done the basic framework for character traits. Currently they only spawn with traits that increase or decrease base stats but further on, I am planning to have traits that impact on combat a bit more "directly". Nevertheless, characters will now spawn with 0-5 traits that will increase or decrease stats so there should be far greater stat variance. You might find some characters with great stats and others with poor stats. All professions are subject to this and the initial stat allocations doesn't play favorites. IE a hunter may have better starting stats than a farmer for melee combat, but over time that farmer would outgrow the hunter based on its profession.
I've done another pass at the combat interface. Removing some redundant features and merging some other features. In the first build, I was experimenting with a combat system that wasn't as straightforward as the "standard" turn-based combat system most tactical games are built on. As in, the actions were not directly executed after a command, rather all commands were executed at the end of the phase. Still experimenting with this but there are issues inherent with it. So the flow of combat is more direct now, with actions being executed right away. It has its own perks as interface feedback is a lot clearer as well as the ability to create abilities that can attack twice, etc. I've added in a camera that now follows and switches between units to make it clearer to the player what the AI is doing. I've removed the timer bar, although I quite liked that feature it will come back again when I get around to adding the "tourney mini-game". Aside from that, I merged a few things such as the buff/debuff bar. It looks a lot cleaner to me, but of course time will tell as I'm expecting to continue to iterate on this based on the feedback I get.
I have also started putting together the base buildings that you will be able to construct, which I'll be working on properly sometime after this month. I won't be discussing base management too much just yet, but safe to say you should be expect something along the lines of XCOM.
The demo is shaping up and I am planning to release the next version on the 22nd of June. From this point on, I will be working with two builds, the demo build and main build. It is quite challenging to design with a demo in mind, especially for 1 person, some smaller teams of even 3-5 often decide to not even do one. Bear in mind, that a lot isn't done yet, I feel a lot of the interface feedback isn't quite there yet.
I plan on 5 years of development time of which I have been working on "fulltime" for 1 year and 5 months. "Fulltime" being in between my actual job. After that, I'll allocate even more time for post release updates. I've decided to make my game known publicly sooner than later, as I feel I really need the feedback. It ultimately saves me time as I will know what to focus on sooner than later. Be as harsh as you need to be with your feedback, as long as it is constructive. Break it down and build it up.
- One tier of armor (padded), I've bloated the armor values though, in the full version they would all have the same armor value.
- 6 Melee weapons, 2 ranged weapons, each weapon type has some unique abilities.
- "Bandit" enemy type they will utilise basic formation AI, elevation and flanking behaviours.
- Combat now takes place in a much bigger and open environment with 2 levels of elevation. Max combat is 6vs6 in this demo.
- The demo is basically a persistent combat demo. Your goal other than giving me feedback would be to see how long you can survive. Your company needs gold and food, if those things are not met, company morale will reduce to 0 and eventually everyone will leave, when no one is left in your company it is game over. You need to complete missions to gain gold and food. Enemies will gradually get stronger as the days progress so you need to upgrade your gear to keep up. Spend gold at the blacksmith to upgrade your gear, spend skill points to gain access to new abilities (only a few in this demo). Coming back from a mission will advance the day by 1. Combatants will get tired from combant, Condition will reduce, resting in a tent restores some Condition but also advances the day by 1. When a combatant’s condition reaches 0, it cannot use abilities in combat, only basic attacks.
There are other changes in the demo as well, some will make it into the main build, others are experimental and some are purely for the demo. I personally feel like I need to invest a lot more time into interface feedback and making it more responsive. Now that I've branched into two separate builds, it'll be a lot easier for me moving forward. As always a disclaimer, a lot of this really is subject to change, I've decided to show it earlier to get more feedback. Your feedback will definitely shape the development of Dead Monarchy.
The next devblog won't be for a while, with the demo build now separate from the main build I will be spending the next couple months working on the interface, improving the interface feedback in combat and the general interfaces like the shop interface. Until next time!
Also, two new sets of armor have been done for the main build :)