Welcome to the devblog of Guardians of the Realm, a Fantasy Advance Wars game in development for PC/Tablet/Console!
You are the Lord of the Kingdom which has lived in peace and prosperity for generations, but is now under attack by an unknown force from beyond your castle walls, and from within! Discover and defeat your foe by learning new knowledge, building your arsenal, and defending your lands by recruiting from among your loyal subjects and commanding them in strategic deployments and tactical turn based battles.
Core Design Pillars
Feeling of fear, tension, and desperation.
Deep but accessible combat.
Exploration and sense of constant discovery/reward.
Streamlined, intuitive visuals, controls, indicators, and interface.
Visually distinctive, production efficient art style set on traditional fantasy setting.
Very pleased to announce that basic combat is now working. Terrain modifiers are not calculated, and neither are multiple attacker bonuses, but flanking bonuses are applied. There’s still no hit FX functionality yet either, but that can come much later. Aside from the flanking and multiple attackers bonuses, the damage formula is very similar to Advance Wars, but with one distinction that a Unit’s defense isn’t altered by its Hitpoints. I felt that this would keep injured units from becoming completely tinfoil once they take a few hits, and because I want Units to last a little longer in general compared to Advance Wars, since you’ll probably have less of them.
The other big distinction is that there’s no randomness in the calculation. Why? I’m hoping that the straightforward and simple feedback makes the game more approachable, and that the removal of the uncertainty of killing a unit decreases the deliberation on whether or not to take the action, hopefully improving the overall flow.
I also made a bunch of other minor fixes and tweaks. One of them is that map rotation now rotates around the selector.
Gradient background added courtesy of a script off of the Unity wiki. Also added an undo button near the ‘Select Next Unit’ button.
It took quite a while to change the movement to be click-select, click move, but it needed to be done because of future touch controls. Also tile highlights now animate, and characters run to help show they are selected, along with sound support.
Minimum range implemented, along with 2nd click to show range for friendly units. 3rd click ends their action.
Tiles can now be selected, and update to the HUD. The tile information about movement and defense still needs to be implemented in the Tile class before that can also be displayed.
Its only been a few days since the last post, but there’s been a bunch of new features and stuff added that I wanted to do another post early.
Mountain terrain type has been added. I’m not totally satisfied with the model/texure, so these will probably get retouched at some point, but they are good enough for now.
The villages are now textured and animation, along with some simple fx. I’m guessing that for tablets, all this will have to be optimized away because currently they won’t batch when there are multiple villages on screen. Also, the building health overlay is in, so when buildings take damage from catapults and other magic attacks, and possibly from being able to attack them with regular troops, it will update make them easier to capture. You can almost think of a village as another unit that’s unable to move, with other units able to stand on top of it.
Unit hitpoint overlays are also now in. They are slightly offset to the right, and the buildings slightly offset to the left, so that when a Unit is on top of a building they won’t overlap. Zooming out makes them scale proportionally do the distance so that they are never too big or too small.
I have started roughing out the HUD elements, which will change color based on the current team that’s active so hot swap games are more clear. Also, you can see the new border edge along the side of the map.
Its now possible to click on Enemy Units to show their attack range, and also show exactly which friendly Units are in range.
Friendly units now also highlight Enemy Units in range. 3 small annoying problems that I fixed were that after you selected a unit, you couldn’t select another unit just by clicking on them, you also couldn’t undo a move after you’d gotten to the set rotation, and also the movement arrow always showed up under your unit, which makes no sense.
Here’s another overlay star effect that will be used for boosed units, or some other effect.
Although this was started as a learning/passion project for myself, I also want to be able to release it some day and hope to make a few bucks doing so to be able to keep continuing to make games in the future. So, after the incredibly long time that it took to do the animations, I decided that I’d like this game to ship sometime before 5-10 years, and since the former game design would probably take that long with a team of 20, it was time to cut the scope of the project. More than cutting the scope, it would need an entire pivot to ever see the light of day.
Here are some of the recent, and very recent tactics games that I’ve been playing which are worth mentioning.
A game that I was anxiously awaiting for nearly a year, with very high hopes. Happily, those high hopes were mostly met with the game’s release and subsequent patch updates that fixed some annoying issues.
I really enjoyed the background and progression between the 1st game, and the story was much better than I was expecting. The cutscene lipsync and acting was still pretty terrible overall though. The strategy layer redo from the previous satellite launch meta game was a huge improvement, which made you feel more in control of the missions that you take on, although the game still makes you pick from between a few simultaneous choices at times. The new concealment mechanic was a nice, light integration of stealth, which I very much enjoyed after Invisible Inc. The weapon upgrades were cool, and it was nice you can train units to be a specific class instead of hoping they’ll turn into one. Many missions force you to work against a clock, which breaks up the standard overwatch hopping that is otherwise the game’s most practical way to play.
A few things that I didn’t like were how game forces these timed missions despite no thematic or logical reasoning for it, which a mod fixes and makes it so the timer doesn’t start until you break concealment. Many other mods fix, improve, or add features or functions, and so supporting mods was a great decision by the dev team.
Warbits is a straight up Advance Wars re-skin for iOS, with the exception of 1 new unit, but its very well executed and polished, with great writing and art. At the time I grabbed it, less than a week after release, it already had 7k ratings on iTunes, with many reviews writing that they’d been waiting forever for a decent Advance Wars clone for iOS. I found a dev thread, and saw that it was created by just 2 guys who’d never made a game before over 4 years, working part time and with having kids in the middle of development.
I played this game on my Android, because this was originally a PC game I guess, that was then very poorly ported without any sound effects or animation and is no longer available on PC. The game is a fantasy version of Advance Wars, with some significant changes in capturing buildings. I was unsure if a melee as default, human based setting of fantasy would work for an AW game, but it works quite well. There doesn’t seem to be much rock/paper/scissors balance to the units like AW, but a few of them work off the terrain a bit, and requiring certain units to capture certain buildings does some to break up buying the more but better units.
I’m still playing through this game, and its absolutely fantastic, as can be expected of any Mika Mobile release. Even though the game is obviously based off AW, there’s a strong departure from many of the mechanics of the game. Buildings can’t be occupied by other units, and instead much be captured from the sides, and also dislodge their created units out of their sides, making it harder to block production of new enemy units. Since buildings can’t be occupied by other units, it takes doctors or chuck wagons to heal friendly forces, which makes for a lot less end game grinding of trying to get rid of stubborn production areas. Units are also much more fragile as compared to AW, with 2 hits by most enemies taking out most other enemies. The game has a Human/Mechanical/Evil composure, with different units of each countering against the opposing types. Terrain seems to play a bit less of a role in the game, with only a few different types that offset movement and defense. There’s an interesting day/night mechanic for a few of the evil units, and also a few of them have special properties that happen when it kills another unit.
First off, no this project is not dead. Far from it! The past 2 months have been filled with real life requirements, but there’s still been progress on the game.
While refining the details for implementing weapons and different weapon types, I realized that I would need many more animations than I’ve already got, and that many of the existing animations may not work as needed within the framework of the game. Not all the skeletons of the existing animations were the same proportions either, which I want to make sure they are so hands end up properly placed on weapons, and feet don’t shift around on the ground.
I’m going to limit holding a shield to 1 particular hand to reduce the number of animation variations required, but still allow multiple weapons to be dual wielded, so that each weapon needs animations from both hands. I would also like a few variations of attacks per weapon per hand, so the number of animations is adding up pretty quick.
Casting animations will be treated like a weapon type, with left, right, or both hand attacks, and the hand will need to be empty to cast from, or will need to be cast through a Scepter or Staff. Because of this, the Staff will change to a 1.5 handed Weapon, meaning that it will require 2 hands to Attack, Block, or Counter with, but only need 1 hand to Cast Spells with.
I’m still not sure what to do with Spellbooks and Items though. Adding animation variations for each hand for all the movements would get bloated very quickly, and also the code to manage all that would also need to be done. I may end up going with the approach that Xcom UE takes and just make Items usable from the Inventory without having to first Equip them, and make Spells cast-able from Spellbooks without having to hold the Spellbook in hand.
This latest update shows the Inventory and Items work that I’ve done this past few weeks in between some home renovations and moving preparations. I started with an existing inventory system off of the Unity AssetStore, Inventory Master. The asset has a bunch of extra features and editor designers that I removed, so I’m really left with the basic inventory, character screen, and drag/drop item functionality.
The Inventory and Items system will work more like the original Xcom UFO Defense with the freedom to carry whatever you want in the item slots, but with some of the simplification of Xcom EU like not having a limited number of slots, and and certain items having limited uses instead of having separate ammo items. You’ll also be able to pick items up off the ground like the original Xcom UFO Defense, or be able to carry multiple Weapons if you want. Unlike either system, you can also transfer Items to adjacent Units. (You could technically transfer items in Xcom UFO Defense by throwing Items at another Units feet and having them pick them up.)
I’m using ScriptableObjects for the Items themselves, as this will allow automatic Serialization by Unity for dealing with the data. In the future if there is demand for modding capabilities, I will switch over to some external file format and deal with manual Serialization. Each Item is its own ScriptableObject asset, and will be saved in a itemDatabase list.
Magic in GOTR is intended to be developed at about the same pace as Psionics in Xcom UFO Defense, but be a bit less powerful, with no ability to mind control Enemy Units in a chain across the board until you find one with a Blaster Launcher who suddenly goes suicidal. As much fun as the late game Xcom UFO Defense is, once you hit Psionics and have a few powerful enough Units, the challenge is gone and you have to play pretty poorly to end up losing a mission. I considered giving each of the elemental magics a Summon Golem spell as a 6th spell, with each type having a slightly different attributes, i.e. Air Golem is very fast, Fire Golem is very damaging, Earth Golem is very tough, etc. Perhaps those can be included in a future addition.
Having a magic spellbook grants abilities of learned spells within that discipline. Each Spell must be learned before it can be cast and has a MP cost. There are multiple levels of Spell books, and spells can also be upgraded multiple levels. MP are regenerated each turn. Some spells will have a delayed reaction and will cast X turns later. The attack areas will be marked on all difficulties except Hardcore. Each type of magic has 5 possible spells.
Dark (Enemy only)
Summon:Spawns an Enemy.
Possess:Take control of Enemy Unit.
Terror:Force Moral checks -2.
Blight:Poison + Weak AOE.
Cloak of Darkness:Causes negative lighting. (tech permitting)
Light (Heroes only)
Heal:Heal HP and Wounding on Unit.
Dispel Darkness:Cancel Dark Spells.
Purify: Burns an Enemy from the inside out.
Righteousness: Boost Bravery in large AOE around caster.
Divinity: Causes rays of light to cast onto Battlefield that do extreme damage to Enemies.
Wall of Flame:Creates a wall of flame that does damage.
Flare: Illuminates a huge section of the battlefield.
Fireball: Direct attack. Causes Burning.
Flamethrower: AOE attack in front of caster.
Cleansing Rain: Removes status effects.
Ice Shards: Direct attack.
Fog Cloud: Creates Fog of War in location.
Ice Encasement: Slow and Stuck enemy.
Geyser: Throws enemies into air randomly.
Pillars of Earth(3):Can be Attacked and destroyed.
Quake:Causes enemies to fall and lose actions.
Boulder: Does damage in a straight line.
Spikes: Direct damage.
Entangling Roots: Stuck, entangle.
Vortex:Sucks in Enemies.
Uplifting Currents:Allows a Unit to fly.
Air Armor:Blocks Ranged Attacks.
Weapons and Armor Enchantments are similar to the Relic system used in Massive Chalice, but with more player control. Since any Weapon can be used by any Unit, you have more freedom with Enchanted Weapons/Armor, and you can also choose how they are Enchanted. This list is still very WIP, and suggestions are welcome.
Weapons and Armor can have 1 Enchantment placed upon them. Enchantments can not be removed or transferred. Enchanted Items can be named. Many Enchantments cost an Item.
Absorb: Some of the Damage dealt is returned to the Unit.
Strike Back: When this Armor takes Damage in Melee, some of the Damage is reflected back at the Attacker.
Anti-Magic: Gives a bonus defense against Magic Attacks.
Living Weapon: Weapon deals more damage the more Enemies it kills.
Anti-Magic: Also deals MP damage.
Life Steal: Damage dealt is returned as HP to the Unit.
This week saw the implementation of the Possible Actions method, and the addition of a UnitAction class that contains Action functions and handles the EndAction. There’s now an Action class for each type of action, and all of those that are available to the Unit will get polled into a list and displayed by the UI as Action buttons. The former UnitController functions will get put into each of these classes, to make things more modular. Skill and Move special classes will derive to handle things like Leaping, or special Weapon Attacks.
Another UI update is the Unit health bars being replaced by HP Text instead. There’s a partially implemented visibility indication that will eventually show which enemies each Unit can see.
A few other additions were some ItemAction functions and Attack type functions, and now Ranged Attacks have a minimum distance to prevent using them in Melee essentially.