I love the smell of UnrealEd crashing in the morning. – tarquin

Legacy:DMMutator

From Unreal Wiki, The Unreal Engine Documentation Site
Revision as of 04:41, 1 April 2004 by Wormbo (Talk | contribs)

Jump to: navigation, search
UT :: Actor (UT) >> Info (UT) >> Mutator (UT) >> DMMutator (Package: Botpack)

and

UT2003 :: Actor >> Info >> Mutator >> DMMutator (Package: UnrealGame)

This is used as the BaseMutator in most game types.

Properties in UT

DeathMatchPlus MyGame 
A link to the GameInfo (UT) (Level.Game). This variable is set in PostBeginPlay and is used in CheckReplacement.

Properties in UT2003

float AirControl (globalconfig) 
bool bBrightSkins (globalconfig) 
(not in earlier patches)
bool bMegaSpeed (globalconfig) 

Functionality in UT

DMMutator replaces Unreal items, weapons and ammo with UT versions. The bAutoActivate property of all Inventory (UT) items is set to True.

The mutator also prevents other mutators from changing StationaryPawns (through AlwaysKeep), sets the NetUpdateFrequency of TorchFlames to 0.5 and raises the speed of players by 40% in Turbo game mode.

Functionality in UT2003

DMMutator handles the air control setting and Epic's bright skins as well as a turbo mode like in UT. This mega speed mode can't be activated through the in-game GUI, though.

Known Subclasses (UT)

Known Subclasses (UT2003)

Known Subclasses (UT2004)

Discussion

Ben2500: Is this how you make a mutator into a gametype?

Wormbo: Basically the GameInfo.Mutator setting tells the gametype, which BaseMutator it should use. There's always a BaseMutator in a game and it has slightly more functionality than regular mutators. The BaseMutator should be subclasses from DMMutator and takes care of all the tasks a GameInfo subclass can't handle. Sometimes you will also want to make a base GameRules class, but keep in mind that only actors with bGameRelevant=True can be spawned before the BaseMutator is successfully registered. Also it's a good idea to declare the base mutator class with the keywords CacheExempt and HideDropDown in UT2004 because they should never show up in the mutator list and should never be added manuall by a user.