Terraniux wrote:Big file due the Chaos addon. I must find out which files, only to include.
Answer of my tool:
UnrealDeps.exe wrote:MonsterHunt.u
chaostrees.u
swJumpPad.u
BBoyShars.u
SM_Nature.u
ShadowManNature.utx
HeavenbyTerraniux.umx
MaximusbyTerrraniux.umx
SkeletalChars.u
Another tool told me the following:
Light61 is placed in the void
Light62 is placed in the void
Light66 is placed in the void
Light67 is placed in the void
Light68 is placed in the void
Spawnpoint19 is placed in the void
Teleporter2 is placed in the void
utflare1 is placed in the void
utflare7 is placed in the void
OjitroC wrote: 2 The killzone doesn't kill the slith or the skaarj warriors, though it does kill krall.
That made me curious and lead me from function VacuumZone.Tick() with
Code: Select all
if ( P.Fatness > 250 ) {
Level.Game.SpecialDamageString = DamageString;
P.TakeDamage(10000, P, P.Location, Vect(0,0,0), DamageType);
over to function Pawn.TakeDamage():
Code: Select all
function TakeDamage( int Damage, Pawn instigatedBy, Vector hitlocation, Vector momentum, name damageType)
...
if ( (InstigatedBy != None) && (InstigatedBy.IsA(Class.Name) || self.IsA(InstigatedBy.Class.Name)) )
ActualDamage = ActualDamage * FMin(1 - ReducedDamagePct, 0.35);
...
In words: if the attacker and the attacked are members of the same family or equal, the damage will be reduced by the value of (1 - ReducedDamagePct) regardless of the DamageType. I'd call that a bug.
Because in a VacuumZone attacker and attacked are the same and Slith and IceSkaarj have ReducedDamagePct=1, no damage will be left.
Possible solutions:
- use ScriptedPawns that don't have a ReducedDamagePct of 1 (either other than above or subclassed types of them)
- use a custom VacuumZone that does not pass the attacker ("instigatedBy") to the function TakeDamage():
Code: Select all
//=============================================================================
// VacuumZoneEx.
//=============================================================================
class VacuumZoneEx expands VacuumZone;
event ActorEntered( actor Other ) {
if (ScriptedPawn(Other) != None)
{
ScriptedPawn(Other).TakeDamage
(
10000,
None,
ScriptedPawn(Other).Location,
Vect(0,0,0),
DamageType
);
}
Super.ActorEntered(Other);
}
The difference is that ScriptedPawns are killed instantly without the effect of getting fat first.
PS: May I run this already on my server? I'd change the name to "MH-AWC-Mesospheric-181130" or something until you release a final version.