Hehe, cool. Open your Unrealed and load your package. Right click on your weapon class and choose Default Properties. Look for the Enforcer field and change the hitdamage to 300 for happy go lucky instagib enforcers. Save your package and that should do it. There's alot of other stuff in the default props to play with too.
I'm not sure about accuracy but it may be in this Enforcer function:
function ProcessTraceHit(Actor Other, Vector HitLocation, Vector HitNormal, Vector X, Vector Y, Vector Z)
{
local UT_Shellcase s;
local vector realLoc;
realLoc = Owner.Location + CalcDrawOffset();
s = Spawn(class'UT_ShellCase',, '', realLoc + 20 * X + FireOffset.Y * Y + Z);
if ( s != None )
s.Eject(((FRand()*0.3+0.4)*X + (FRand()*0.2+0.2)*Y + (FRand()*0.3+1.0) * Z)*160);
if (Other == Level)
{
if ( bIsSlave || (SlaveEnforcer != None) )
Spawn(class'UT_LightWallHitEffect',,, HitLocation+HitNormal, Rotator(HitNormal));
else
Spawn(class'UT_WallHit',,, HitLocation+HitNormal, Rotator(HitNormal));
}
else if ((Other != self) && (Other != Owner) && (Other != None) )
{
if ( FRand() < 0.2 )
X *= 5;
Other.TakeDamage(HitDamage, Pawn(Owner), HitLocation, 3000.0*X, MyDamageType);
if ( !Other.bIsPawn && !Other.IsA('Carcass') )
spawn(class'UT_SpriteSmokePuff',,,HitLocation+HitNormal*9);
else
Other.PlaySound(Sound 'ChunkHit',, 4.0,,100);
}
}
Just copy that into your code and start messing around with the numbers, maybe starting near the "FRand" parts and take notes so you don't get lost.
As for your own doble enforcers, I think you'd have to subclass a DoubleEnforcer class, overriding any referances to the enforcer class with your own class name in any functions and default properties. I'm not really sure. I pretty much code by the seat of my pants.