Changes included:
Warhead code split out of weapon code and refactored.
Warhead functionality now split into several classes, each handling one effect/impact.
Additional custom warheads can now be defined and called via yaml.
Custom warheads inherit the abstract class Warhead,
which provides target check functions.
Custom warheads have to define their own impact functions,
and can also define their own replacement for check
functions.
- adds visible projectiles to tanks, gun turret and siege tank weapons.
- fixed devastator bullet.
- quad now uses RPG projectile.
- reduced the overuse of large artillery explosions.
- removed some useless WaterExplosions.
- gave deviator missile its own explosion animation.
- tank cannons now cause the same explosion as in d2k.
For practical reasons, the siege tanks need a more powerful gun.
Currently, unit behavior is to not stay outside of turret range, but rather to walk into it before shooting. I don't think siege tank range should be increased any further, but this is a problem.
Siege tanks should be good at defeating large clusters of enemy turrets, which are powerful and hard to break.
tanks are a bit under-powered vs. quads at the moment. Quads are fast anti-vehicle/armor support units. They are supposed to keep their range to win, not go toe-to-toe.
Rocket tank is a bit too good vs. armor and infantry.
It should be a generalist but its strength should lie in attacking buildings and light vehicles.
Speed increased a bit.
Damage vs. heavy reduced 80% -> 50%
Damage vs. buildings increased
Damage vs. infantry slightly reduced
This will make it slightly more relevant on the battlefield. It shouldn't be excellent at fighting armor, since armor is what should kill it, but it shouldn't be totally helpless either.
damage vs. heavy increased 25% -> 50%
damage vs. wood increased 60% -> 80%
inaccuracy reduced 45 -> 40
speed increased ever so slightly.
Towers are too good right now and lead to stalemates. This will let them be outranged by 1 by siege tanks.
Added minimum range so that it can't hit the square next to it.