Thunderbrd
C2C War Dog
At this time I'm still working on developing out the Naval review. I've identified a number of dll programming tasks to support that effort so that we can introduce these naval units with some new dynamics and features to support them.
Some long time ago, Hydro and I agreed we'd like to make healing a combat class specific ability. This would mean that, rather than having one overall generic type of healing that affects all unit types, we could have many differing KINDS of healers that heal differing types of units. Therefore we could have Veterinary Healers, Medics, Motor Mechanics, Siege Engineers, Naval Engineers, Aviation Mechanics etc...
Of course, adapting this dynamic to the whole of the mod is not an overnight task. So I wanted to make sure that it could be implemented in steps and stages. Therefore, as I was working on reviewing these naval units, I realized this would be a good time to introduce the tag and some preliminary usage of it. By having our healing ships denote that they only heal other naval units, we can introduce the dynamic in a first stage that can also stand as an example for how to insert the dynamic into other unit interactions later.
Therefore, as a part of the naval review effort I've now added the HealUnitCombatTypes (for Units), HealUnitCombatChangeTypes (for Promotions), and HealUnitCombatTypes (for Buildings) tags.
To work with these tags:
After some deep thought on the matter, this means I need a new combat class category for units that helps to shape the application of these tags. I'm thinking that the new combat classes that would determine the healing category for units will be designed to represent hybrid types as well.
So you'd have Healing classes like:
Heals as a Person (like an Axeman - the unit is entirely made up of people)
Heals as an Animal (like a Trained Dog or a Pigeon- the unit (or at least the fighting part of it) is entirely made up of animals.)
Heals as Person with Animal (like a Camel Rider - the unit is made up of roughly half animals and half people.)
So then the healing UNITS themselves would be like:
Healer - Heals +6% for Heals as a Person type units. Heals +5% for Heals as Person with Animal type units.
Vet - Heals +6% for Heals as an Animal Type units. Heals +5% for Heals as Person with Animal type units.
Keep in mind only the BEST healer is going to be selected which is why +5% is necessary rather than +3%... the two healer types can't work together sadly. But both can cover, to a little lesser ability, common grounds.
You'd also have:
Heals as a Siege Weapon (like an Unmanned Machine Gun)
Heals as a Mechanical Vehicle (such as a Walker Droid or something to that extent.)
Heals as a Person with Siege Weapon (A catapult, with crew)
Heals as a Person with Vehicle (A Motorcycle for example)
etc...
So I'll be going through the Combat Classes and determining what Healing CC categories to utilize here as my next step.
All apologies to those who feel there are many problems that still need to be addressed before we develop any new dynamics. I do plan to attack them all here very soon... I just want to at least complete the planning and preparing phase of this naval project before moving to debugging mode for wrapping up the release. This was one of the more miscellaneous (but very cool) projects on that list.
Also... I'm very open to any offers of assistance in evaluating and adapting our buildings and units to this system. Obviously, it's got to be well planned before being fully implemented as we have a number of new unit types that we'll need to flesh this out properly.
Most of those shouldn't be too challenging as we should just pretty much first re-design the healing capabilities of the core healing units we have now (which are primarily People healers) and then we generate parallel healing unit types for the other primary healing categories like mechanical, siege, animal etc... that have stats very similar to the core healing units but with the main difference that they heal different types. I'm sure art on such units can't be too difficult to find on the site here given there are so many types of unit arts that have been submitted on the forum over the years (just will take a lot of looking for them is the main thing so help there I'm sure is appreciated as well!)
I'll probably need new Healing combat classes and probably some new healing AI settings so that the AI realizes the need to cover all its bases - though Alberts or Koshling - if you have ideas as to how to best work this from the AI side I'm listening. I adapted the AI to currently see the use of this tag as similar or half as valuable to the normal healing tags so at the moment the AI won't see the full value of getting all the types represented in major stacks and such. Since we're only applying to the Navies at the moment, we've got some development time to consider how to work out a more advanced AI structure for this - I know... yet another AI consideration of so many to develop. Again, hoping to commit to primarily AI improvements next cycle.
Anyhow, anyone have any questions, comments, concerns, ideas etc?
EDIT: Oh, one more thought that has occurred to me during the design of this tag... perhaps we could have some units that won't heal at all unless they get some healing assistance. Or just some unitcombats that have some real negative healing factors, like Siege for example - would heal much slower as the crew itself is only so capable of repairing it and would take much longer to do so without the assistance of a master siege engineer. Some robots may not heal at all unless they have mechanics on hand... etc... This could be an interesting angle to consider as well. We already have the UnitCombat tags to work with for this too which is cool. And they could be applied directly to the Heal As UnitCombat categories so could be a very convenient way to implement them.
Some long time ago, Hydro and I agreed we'd like to make healing a combat class specific ability. This would mean that, rather than having one overall generic type of healing that affects all unit types, we could have many differing KINDS of healers that heal differing types of units. Therefore we could have Veterinary Healers, Medics, Motor Mechanics, Siege Engineers, Naval Engineers, Aviation Mechanics etc...
Of course, adapting this dynamic to the whole of the mod is not an overnight task. So I wanted to make sure that it could be implemented in steps and stages. Therefore, as I was working on reviewing these naval units, I realized this would be a good time to introduce the tag and some preliminary usage of it. By having our healing ships denote that they only heal other naval units, we can introduce the dynamic in a first stage that can also stand as an example for how to insert the dynamic into other unit interactions later.
Therefore, as a part of the naval review effort I've now added the HealUnitCombatTypes (for Units), HealUnitCombatChangeTypes (for Promotions), and HealUnitCombatTypes (for Buildings) tags.
To work with these tags:
- HealUnitCombatTypes (for Units):
Code:<HealUnitCombatTypes> <HealUnitCombatType> <UnitCombatType>UNITCOMBAT_COMBATANT</UnitCombatTypes> <iHeal>10</iHeal> <iAdjacentHeal>10</iAdjacentHeal> </HealUnitCombatTypes> </HealUnitCombatTypes>
On the Unit Tag we can establish either a same tile healing bonus (the numbers on that work the same as the original healing tag but only apply towards the Unitcombat specified), an adjacent tile healing bonus (again, the value works the same as the HealAdjacent tag we have but only applies towards the specified Unitcombat) or both, as is shown here. If you want to only include one or the other value, it's not necessary to declare both iHeal and iAdjacentHeal, only the unitcombat and the tag you want to manipulate.
As per normal, only the best healing unit will apply its healing to the tile.
But be careful because this tag, when applicable to the unit evaluating its ability to heal, will be cumulative with any use of the normal healing tags on the same healing unit. Therefore the unitcombat healing and the normal healing will add together to the final healing amount if the unit healing is of that qualifying unitcombat. This is how I've managed to make it so we can modify these tags in somewhat gradually. More on that later.
Of note, we never had a native healing ability tag for the base unit definition and have always had to previously use free promotions to rank them. This now allows for a LOT more granularity in our approach to improving healers so that should be very exciting. Therefore we can have the first healers perhaps adding +5% healing to the type of combat class they heal (for example: heals people, heals animals, heals mechanical...) And then the next level of healer can heal +7% instead. Still a step up, just more gradual rather than only having the stages of improvement we can offer from the normal healing promos we have now (very constricting when designing upgrade chains of healing units and very muting when it comes to enabling skill improvements through promotions thereafter!)
- HealUnitCombatChangeTypes (for Promotions):
Code:<HealUnitCombatChangeTypes> <HealUnitCombatChangeType> <UnitCombatType>UNITCOMBAT_COMBATANT</UnitCombatTypes> <iHeal>10</iHeal> <iAdjacentHeal>10</iAdjacentHeal> </HealUnitCombatChangeTypes> </HealUnitCombatChangeTypes>
- HealUnitCombatTypes (for Buildings):
Code:<HealUnitCombatTypes> <HealUnitCombatType> <UnitCombatType>UNITCOMBAT_COMBATANT</UnitCombatTypes> <iHeal>10</iHeal> </HealUnitCombatTypes> </HealUnitCombatTypes>
Buildings are no less specific though. Hospitals aren't a great place to repair your jeep, for example. So this tag was designed to work this system from the building side and it does not enable adjacent healing as you can get on units.
After some deep thought on the matter, this means I need a new combat class category for units that helps to shape the application of these tags. I'm thinking that the new combat classes that would determine the healing category for units will be designed to represent hybrid types as well.
So you'd have Healing classes like:
Heals as a Person (like an Axeman - the unit is entirely made up of people)
Heals as an Animal (like a Trained Dog or a Pigeon- the unit (or at least the fighting part of it) is entirely made up of animals.)
Heals as Person with Animal (like a Camel Rider - the unit is made up of roughly half animals and half people.)
So then the healing UNITS themselves would be like:
Healer - Heals +6% for Heals as a Person type units. Heals +5% for Heals as Person with Animal type units.
Vet - Heals +6% for Heals as an Animal Type units. Heals +5% for Heals as Person with Animal type units.
Keep in mind only the BEST healer is going to be selected which is why +5% is necessary rather than +3%... the two healer types can't work together sadly. But both can cover, to a little lesser ability, common grounds.
You'd also have:
Heals as a Siege Weapon (like an Unmanned Machine Gun)
Heals as a Mechanical Vehicle (such as a Walker Droid or something to that extent.)
Heals as a Person with Siege Weapon (A catapult, with crew)
Heals as a Person with Vehicle (A Motorcycle for example)
etc...
So I'll be going through the Combat Classes and determining what Healing CC categories to utilize here as my next step.
All apologies to those who feel there are many problems that still need to be addressed before we develop any new dynamics. I do plan to attack them all here very soon... I just want to at least complete the planning and preparing phase of this naval project before moving to debugging mode for wrapping up the release. This was one of the more miscellaneous (but very cool) projects on that list.
Also... I'm very open to any offers of assistance in evaluating and adapting our buildings and units to this system. Obviously, it's got to be well planned before being fully implemented as we have a number of new unit types that we'll need to flesh this out properly.
Most of those shouldn't be too challenging as we should just pretty much first re-design the healing capabilities of the core healing units we have now (which are primarily People healers) and then we generate parallel healing unit types for the other primary healing categories like mechanical, siege, animal etc... that have stats very similar to the core healing units but with the main difference that they heal different types. I'm sure art on such units can't be too difficult to find on the site here given there are so many types of unit arts that have been submitted on the forum over the years (just will take a lot of looking for them is the main thing so help there I'm sure is appreciated as well!)
I'll probably need new Healing combat classes and probably some new healing AI settings so that the AI realizes the need to cover all its bases - though Alberts or Koshling - if you have ideas as to how to best work this from the AI side I'm listening. I adapted the AI to currently see the use of this tag as similar or half as valuable to the normal healing tags so at the moment the AI won't see the full value of getting all the types represented in major stacks and such. Since we're only applying to the Navies at the moment, we've got some development time to consider how to work out a more advanced AI structure for this - I know... yet another AI consideration of so many to develop. Again, hoping to commit to primarily AI improvements next cycle.
Anyhow, anyone have any questions, comments, concerns, ideas etc?
EDIT: Oh, one more thought that has occurred to me during the design of this tag... perhaps we could have some units that won't heal at all unless they get some healing assistance. Or just some unitcombats that have some real negative healing factors, like Siege for example - would heal much slower as the crew itself is only so capable of repairing it and would take much longer to do so without the assistance of a master siege engineer. Some robots may not heal at all unless they have mechanics on hand... etc... This could be an interesting angle to consider as well. We already have the UnitCombat tags to work with for this too which is cool. And they could be applied directly to the Heal As UnitCombat categories so could be a very convenient way to implement them.