Fire Vehicles...Fire Tank, Fire Manta, Fire Raptor

Discuss and provide feedback on Maps.
User avatar
pooty
Posts: 4351
Joined: Sat Apr 03, 2021 10:22 am
Location: Michigan
Server Sponsor: Yes
Server Admin: Yes

Re: Fire Vehicles...Fire Tank, Fire Manta, Fire Raptor

Post by pooty »

I should add that using .name property is a better solution, as you suggested, because it doesn't require the DamageType classes to be defined in the package..it just references the DamageType class (engine defined, always exists) property.

Code: Select all

   if (DamageType.name == 'FireKill')
User avatar
captainsnarf
Posts: 2631
Joined: Tue Jul 06, 2021 1:51 pm
Location: Washington
Server Sponsor: Yes
Server Admin: Yes
Contact:

Re: Fire Vehicles...Fire Tank, Fire Manta, Fire Raptor

Post by captainsnarf »

I'm pretty sure Short Circuit is based on Plasma tank or vice versa (primary fire is similar). It's probably why they conflict.

I'll keep putting my 'CS' namespace in front of all my class names going forward. I haven't been consistent though. CSVehiclePack vehicles are repackaged without the CS name on all classes, only a few. The class in CSMinotaur package is simply 'Minotaur', 'MinotaurTurret', etc. This will need fixed. You might be driving around in Classic Minotaur with CSMinotaur(Omnitaur) projectile and not even know it. :o

I'll make new versions of BadgerFix and VehiclePack with 'CS' classes in them. I'm going to skip remaking the CSapveriv package however since the 'CS' versions are the only ones in use that I'm aware (the originals are broken online). I'm pretty sure the rest of my mods are safe with 'CS' names for anything I copied.
User avatar
pooty
Posts: 4351
Joined: Sat Apr 03, 2021 10:22 am
Location: Michigan
Server Sponsor: Yes
Server Admin: Yes

Re: Fire Vehicles...Fire Tank, Fire Manta, Fire Raptor

Post by pooty »

Sounds good.

And I think that if you do Class'PackageName.ClassName' in the code the compiler will look specifically for that package, not just the class:

Code: Select all

ClassProperty UnrealGame.VehicleDamageType.VehicleClass: unresolved reference to 'Class'MinotaurClassic.Minotaur''
Even though there's a Minotaur class defined elsewhere....which makes sense, at compile time there's no "engine", so no ClassTree so it either looks in the current package (this), or without a Package, looks in the UT system dir, but with a specific package looks for that specific package name to load it.
User avatar
pooty
Posts: 4351
Joined: Sat Apr 03, 2021 10:22 am
Location: Michigan
Server Sponsor: Yes
Server Admin: Yes

Re: Fire Vehicles...Fire Tank, Fire Manta, Fire Raptor

Post by pooty »

Inital Version on the server on New Loadout map. Right now (10/3) that's the only maps they are on, but I'll get around to updating other maps in time.

All the four vehicles here: FireTank, FlameTank, Ifirit, Cherufe, have varying Damage Reduction on Fire/Flame related damage. Its not perfect, but FireTank vs. FireTank will take a while--not completely immune like the bio, but greatly reduced. Tanks have more resistance than Ifrit or Cherufe.
FireTank 2.0 - Basically the "Good Fire Tank"
Flame Tank 2.0 - Updated Skins so it doesn't conflict with the FireTank. Primary fire is close range Napalm...sets things on fire.
Both have 2 turrets, turret 1 is close in flamethrower and Turrent 2 is Heat Ray Lasers (anti-air); now you may ask why not reverse them.. The mino's lasers are in the #3 position so this is consistent with that.
Ifrit 2.0 - Updated Ifirit. Primary fire a bit faster and more damage (so its useful especially against multiple infantry), Alt-fire is the Fire Tank Alt-fire, Status bar to show charging
Cherufe 2.0 - Increase primary fire damage, alt is just manta smash (the flames are harmless). I thought about updating it, but its a bit of work for very little pay off. Updated Skins. Blue Cheurfe is BLUE, Red Cheurufe is RED) like FireTank, so easy to tell them apart.
User avatar
captainsnarf
Posts: 2631
Joined: Tue Jul 06, 2021 1:51 pm
Location: Washington
Server Sponsor: Yes
Server Admin: Yes
Contact:

Re: Fire Vehicles...Fire Tank, Fire Manta, Fire Raptor

Post by captainsnarf »

pooty wrote: Sun Oct 03, 2021 10:24 am Sounds good.

And I think that if you do Class'PackageName.ClassName' in the code the compiler will look specifically for that package, not just the class:

Code: Select all

ClassProperty UnrealGame.VehicleDamageType.VehicleClass: unresolved reference to 'Class'MinotaurClassic.Minotaur''
Even though there's a Minotaur class defined elsewhere....which makes sense, at compile time there's no "engine", so no ClassTree so it either looks in the current package (this), or without a Package, looks in the UT system dir, but with a specific package looks for that specific package name to load it.
That works in some places. I think the best example is all of the emitters that are setup as inline object blocks in default properties.

Code: Select all

defaultproperties
{
Begin Object Class=SpriteEmitter Name=SpriteEmitter6
...
Emitters(0)=SpriteEmitter'CSBadgerFix.ONSBadgerFireEffect.SpriteEmitter6'
}
Where this doesn't work and where I think we need unique class names is in the actual class definitions.

Code: Select all

class MyBadger extends Badger;
Which badger is that? It's going to end up being whichever 'Badger' class got loaded last.

We cannot do this in code unfortunately

Code: Select all

class MyBadger extends CSBadgerFix.Badger;
So using package.class for names works but not for everything.

I started converting the classes in CSBadgerFix package to all have 'CS' in the name, but omg it's a pain lol. I would be at it all weekend. I'm going to leave the packages unless it's really an issue, but I'll keep the unique classname thing in mind going forward when making mods.
User avatar
pooty
Posts: 4351
Joined: Sat Apr 03, 2021 10:22 am
Location: Michigan
Server Sponsor: Yes
Server Admin: Yes

Re: Fire Vehicles...Fire Tank, Fire Manta, Fire Raptor

Post by pooty »

I would be at it all weekend. I'm going to leave the packages unless it's really an issue, but I'll keep the unique classname thing in mind going forward when making mods.
Yep. If it ain't broke don't fix it.
I think the biggest offender I've seen is the Castiel (Sorry Castiel) vehicle pack that had things like 'Turret" and other fairly generic class names.
User avatar
pooty
Posts: 4351
Joined: Sat Apr 03, 2021 10:22 am
Location: Michigan
Server Sponsor: Yes
Server Admin: Yes

Re: Fire Vehicles...Fire Tank, Fire Manta, Fire Raptor

Post by pooty »

So I don't forget, I don't think the charge bar on the Flame Tank works quite right..but its a low priority thing. That vehicle BTW is as powerful as a Bio Tank close up....not very good from a distance, but close up it can take a node down quickly or set vehicles on fire doing lots of damage.
User avatar
pooty
Posts: 4351
Joined: Sat Apr 03, 2021 10:22 am
Location: Michigan
Server Sponsor: Yes
Server Admin: Yes

Re: Fire Vehicles...Fire Tank, Fire Manta, Fire Raptor

Post by pooty »

Good update today
Added
Draco 2.0 - Mostly same as usual WVDraco, but added Resistance to most fire attacks from Fire tank, Flame Tank, Firebug, fire raptor, fire manta)
Firebug 2.0 - Fire Resistance, increased the speed (its pretty fast) since it only has a short range weapon. It has the best fire resistance to fire/flame attacks. Its a tough little tank. It already had some resistance to other attacks especially air attacks.
So the whole pack has
Fire Tank - Alt fire = explosion
Flame Tank - Primary fire flaming napalm
Fire Raptor - Ifrit
Fire Manta - Cherufe

All these vehicles have varying degrees of resistance to Fire type attacks from each other.
The firebug is the most resistant, followed by the two tanks. (Fire vs. Fire takes a bit). They aren't immune like the bio vs. bio, but takes anywhere from 10-30% Damage. The tanks do a have a vulnerabilty to Flak and especially Bio Goo. So gooing a flame/fire tank is your best bet. Get close but don't get burned.
Ifirit/Cherufe as also fire resistant but not as much.. they do however take MORE damage from flame (firebug, flame tank, flame badger) basically close in flames -- they cook off. They are nearly immune to the fire/flame tank heat ray though.

So this means that most of the fire vehicles can set themselves and things on fire and not take tons of damage from their own fires.

Snarf, if you want to add something similar to the fire/flame badgers here's the Damage code from the FireTank. I didn't add the badgers because they are in CSBadgerFix. The list includes all the fire type damage from them though.

Code: Select all

function TakeDamage(int Damage, Pawn instigatedBy, Vector Hitlocation, Vector Momentum, class<DamageType> DamageType)
{

  if (DamageType == class'DamTypeBioGlob')
            Damage *= 3.0;

	if (DamageType == class'DamTypeHoverBikePlasma')
		Damage *= 0.70;

	if (DamageType == class'DamTypeONSCicadaRocket')
		Damage *= 0.70;

	if (DamageType.name == 'AuroraLaser' || DamageType.name == 'WaspFlak')
		Damage *= 0.70;


	if (DamageType == class'DamTypeShockBeam')
		Damage *= 0.75;

	if (DamageType.name == 'DamTypeMinotaurClassicTurret')
		Damage *= 0.50;

	if (DamageType.name == 'DamTypeMinotaurClassicSecondaryTurret')
		Damage *= 0.50;

if (DamageType.name == 'OmnitaurTurretkill')
		Damage *= 0.50;

	if (DamageType.name == 'OmnitaurSecondaryTurretKill')
		Damage *= 0.50;

if (DamageType.name == 'MinotaurTurretkill')
		Damage *= 0.50;

	if (DamageType.name == 'MinotaurSecondaryTurretKill')
		Damage *= 0.50;

if (DamageType.name == 'FireKill')
		Damage *= 0.10;

if (DamageType.name == 'FlameKill')
		Damage *= 0.25;
				
if (DamageType.name == 'Burned')
		Damage *= 0.15;
		
if (DamageType.name == 'DamTypeFirebugFlame')
		Damage *= 0.50;

if (DamageType.name == 'FireBall')
		Damage *= 0.15;

if (DamageType.name == 'FlameKillRaptor')
		Damage *= 0.10;

if (DamageType.name == 'HeatRay')
		Damage *= 0.10;

if (DamageType.name == 'DamTypeDracoFlamethrower')
		Damage *= 0.30;

if (DamageType.name == 'DamTypeDracoNapalmRocket')
		Damage *= 0.20;

if (DamageType.name == 'DamTypeDracoNapalmGlob')
		Damage *= 0.20;



	//Momentum *= 0.00;

    Super.TakeDamage(Damage, instigatedBy, Hitlocation, Momentum, damageType);
	ReduceShake();
}
I also added updated names via subclassing/aliasing for all of them. For some reason the fire / flame tanks had a hard time between packages (most other vehicles seemed to be ok)

Code: Select all

/* This is a alias for the FireTank since myLevel.FireTank and FireVehiclesV2Omni.FireTank conflict in the editor so this is exactly the same vehicle just
a different class name, but saves me from having re-edit existing maps */
class FireTankV2Omni extends FireTank
	placeable;
User avatar
pooty
Posts: 4351
Joined: Sat Apr 03, 2021 10:22 am
Location: Michigan
Server Sponsor: Yes
Server Admin: Yes

Re: Fire Vehicles...Fire Tank, Fire Manta, Fire Raptor

Post by pooty »

So a couple of helpful hints for forum members:

Flame Tank, primary napalm fire does a ton of damage up close..you can pretty much spam the napalm
Flame/fire Tank 2nd seat flame thrower - lots of damage, takes a node down in just a few seconds.

Firebug can jump about twice the height of manta...
User avatar
pooty
Posts: 4351
Joined: Sat Apr 03, 2021 10:22 am
Location: Michigan
Server Sponsor: Yes
Server Admin: Yes

Re: Fire Vehicles...Fire Tank, Fire Manta, Fire Raptor

Post by pooty »

So still tweaking these:
A couple of items:
On FireTank, Flame Tank the 3rd seat laser turret does increased damage (similar to the Mino) was much weaker before.
I've increased the range/damage on the Napalm on the Flame Tank, might add to it a bit more, as the Flame Tank is pretty weak far away. Think of it like a Bio Tank that sets things on fire.
Firebug (hover tank) if you haven't used it, is very fast, and has a high, fast "jump" similar to a Manta, it can usually get over obstacles and almost "fly". No ranged weapons but good close up. Might increase the damage slightly, as its only a close range weapon.

I think the other ones are good.
Post Reply