• Please make sure you are familiar with the forum rules. You can find them here: https://forums.tripwireinteractive.com/index.php?threads/forum-rules.2334636/

Manual Reloading Mutator!!!

Code:
class ReloadMut extends Mutator;
function bool CheckReplacement(Actor Other, out byte bSuperRelevant)
{
 Super.CheckReplacement(Other, bSuperRelevant);
 if (Other.IsA('KFWeapon'))
 {
  KFWeapon(Other).bModeZeroCanDryFire = False;
 }
 return true;
}
simulated event Tick(float deltatime) // Clientside
{
 local KFWeapon KF;
 Super.Tick(deltatime);
 if (Level.NetMode == NM_Client)
 {
  foreach DynamicActors(class'KFWeapon', KF)
  {
   KF.default.bModeZeroCanDryFire = False;
   KF.bModeZeroCanDryFire = False;
  }
 }
}
defaultproperties
{
     GroupName="KF-ReloadMut"
     FriendlyName="Manual Reloading Mutator"
     Description="Disables auto reloading."
     bAlwaysRelevant=True
     RemoteRole=ROLE_SimulatedProxy
}

There ya go :)
 
Upvote 0
hmm -.- at long last, my request is granted, thank you -.-

ps. works as it says but i wonder if it can give the dry fire sound similar to the mags run out. now it just stop firing ...

the dry fire sound SHOULD NOT happen on certain guns.

the only ones that would make a SINGLE dry fire sound should be:
shotgun
hunting shotgun
ak-47
lever action (after reload animation with no bullets in cylinder)
m79 (if closed without inserting new rnd)
m32

the rest of the guns would not make a dry fire sound because either the slide will be open or the bolt will be held back on empty mag. i guess you could make an animation of them trying to pull the trigger without anything happening.
 
  • Like
Reactions: Benjamin
Upvote 0
Here ya go

I have ommited the pipe bombs from the list

Code:
class Reloadmut extends mutator;
 

simulated function PostBeginPlay()
{

       if (Level.NetMode != NM_DedicatedServer)
           class'KFMod.single'.default.bModeZeroCanDryFire = False;
           class'KFMod.winchester'.default.bModeZeroCanDryFire = False;
           class'KFMod.shotgun'.default.bModeZeroCanDryFire = False;
           class'KFMod.mac10mp'.default.bModeZeroCanDryFire = False;
           class'KFMod.AA12AutoShotgun'.default.bModeZeroCanDryFire = False;
           class'KFMod.Dualies'.default.bModeZeroCanDryFire = False;
           class'KFMod.Deagle'.default.bModeZeroCanDryFire = False;
           class'KFMod.FlameThrower'.default.bModeZeroCanDryFire = False;
           class'KFMod.AK47AssaultRifle'.default.bModeZeroCanDryFire = False;
           class'KFMod.DualDeagle'.default.bModeZeroCanDryFire = False;
           class'KFMod.MP7MMedicGun'.default.bModeZeroCanDryFire = False;
           class'KFMod.SCARMK17AssaultRifle'.default.bModeZeroCanDryFire = False;
           class'KFMod.M32GrenadeLauncher'.default.bModeZeroCanDryFire = False;
           class'KFMod.BullPup'.default.bModeZeroCanDryFire = False;
           class'KFMod.M14EBRBattleRifle'.default.bModeZeroCanDryFire = False;
}


function bool CheckReplacement( Actor Other, out byte bSuperRelevant )

{
 Super.CheckReplacement(Other, bSuperRelevant);
 if (Other.IsA('KFWeapon'))
 {
  KFWeapon(Other).bModeZeroCanDryFire = False;
 }
 return true;
}


defaultproperties
{


     GroupName="KF-ReloadMut"
     FriendlyName="Manual Reloading Mutator"
     Description="Disables auto reloading."
    RemoteRole=ROLE_SimulatedProxy
    bAlwaysRelevant=true
    bAddToServerPackages=true
    bNetNotify=true

}
 
  • Like
Reactions: Phada and Demon_333
Upvote 0
Here ya go

I have ommited the pipe bombs from the list

Code:
class Reloadmut extends mutator;
 

simulated function PostBeginPlay()
{

       if (Level.NetMode != NM_DedicatedServer)
           class'KFMod.single'.default.bModeZeroCanDryFire = False;
           class'KFMod.winchester'.default.bModeZeroCanDryFire = False;
           class'KFMod.shotgun'.default.bModeZeroCanDryFire = False;
           class'KFMod.mac10mp'.default.bModeZeroCanDryFire = False;
           class'KFMod.AA12AutoShotgun'.default.bModeZeroCanDryFire = False;
           class'KFMod.Dualies'.default.bModeZeroCanDryFire = False;
           class'KFMod.Deagle'.default.bModeZeroCanDryFire = False;
           class'KFMod.FlameThrower'.default.bModeZeroCanDryFire = False;
           class'KFMod.AK47AssaultRifle'.default.bModeZeroCanDryFire = False;
           class'KFMod.DualDeagle'.default.bModeZeroCanDryFire = False;
           class'KFMod.MP7MMedicGun'.default.bModeZeroCanDryFire = False;
           class'KFMod.SCARMK17AssaultRifle'.default.bModeZeroCanDryFire = False;
           class'KFMod.M32GrenadeLauncher'.default.bModeZeroCanDryFire = False;
           class'KFMod.BullPup'.default.bModeZeroCanDryFire = False;
           class'KFMod.M14EBRBattleRifle'.default.bModeZeroCanDryFire = False;
}


function bool CheckReplacement( Actor Other, out byte bSuperRelevant )

{
 Super.CheckReplacement(Other, bSuperRelevant);
 if (Other.IsA('KFWeapon'))
 {
  KFWeapon(Other).bModeZeroCanDryFire = False;
 }
 return true;
}


defaultproperties
{


     GroupName="KF-ReloadMut"
     FriendlyName="Manual Reloading Mutator"
     Description="Disables auto reloading."
    RemoteRole=ROLE_SimulatedProxy
    bAlwaysRelevant=true
    bAddToServerPackages=true
    bNetNotify=true

}

I said in my previcious post that this script didn't seem to work, however, I made a mistake in compiling it, my bad. It actually works just as it should! Though it isn't whitelisted, unfortunately.
 
Last edited:
Upvote 0
Well try it with the checkreplacement, as this code worked fine and I can't remember why I kept it in there but I am sure it is needed.

hope that helps?

Unlike the whitelisted version, your version works with a dedicated server. The original only works properly on a listen server, not dedicated, at all.

Unfortunately, your version ain't whitelited yet.

Please try to get it whitelisted. :)
 
Upvote 0
Here ya go

I have ommited the pipe bombs from the list

Code:
class Reloadmut extends mutator;
 

simulated function PostBeginPlay()
{

       if (Level.NetMode != NM_DedicatedServer)
           class'KFMod.single'.default.bModeZeroCanDryFire = False;
           class'KFMod.winchester'.default.bModeZeroCanDryFire = False;
           class'KFMod.shotgun'.default.bModeZeroCanDryFire = False;
           class'KFMod.mac10mp'.default.bModeZeroCanDryFire = False;
           class'KFMod.AA12AutoShotgun'.default.bModeZeroCanDryFire = False;
           class'KFMod.Dualies'.default.bModeZeroCanDryFire = False;
           class'KFMod.Deagle'.default.bModeZeroCanDryFire = False;
           class'KFMod.FlameThrower'.default.bModeZeroCanDryFire = False;
           class'KFMod.AK47AssaultRifle'.default.bModeZeroCanDryFire = False;
           class'KFMod.DualDeagle'.default.bModeZeroCanDryFire = False;
           class'KFMod.MP7MMedicGun'.default.bModeZeroCanDryFire = False;
           class'KFMod.SCARMK17AssaultRifle'.default.bModeZeroCanDryFire = False;
           class'KFMod.M32GrenadeLauncher'.default.bModeZeroCanDryFire = False;
           class'KFMod.BullPup'.default.bModeZeroCanDryFire = False;
           class'KFMod.M14EBRBattleRifle'.default.bModeZeroCanDryFire = False;
}


function bool CheckReplacement( Actor Other, out byte bSuperRelevant )

{
 Super.CheckReplacement(Other, bSuperRelevant);
 if (Other.IsA('KFWeapon'))
 {
  KFWeapon(Other).bModeZeroCanDryFire = False;
 }
 return true;
}


defaultproperties
{


     GroupName="KF-ReloadMut"
     FriendlyName="Manual Reloading Mutator"
     Description="Disables auto reloading."
    RemoteRole=ROLE_SimulatedProxy
    bAlwaysRelevant=true
    bAddToServerPackages=true
    bNetNotify=true

}

I've tried adding:

''class'KFMod.BoomStick'.default.bModeZeroCanDryFire = False;''

to the list.

But it doesn't seem to work with the hunting shotgun. Maybe that's why you left it out in the first place?
 
Upvote 0