The three virtues of a programmer: Laziness, Impatience, and Hubris. – Larry Wall
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 UT200x
- float AirControl (globalconfig)
- Air control. Obsolete in UT2004.
- bool bBrightSkins (globalconfig)
- Use Epic bright skins for UT2003 models. Not available in earlier patches of UT2003, enabled by default in UT2004 and doesn't affect the newer models.
- bool bMegaSpeed (globalconfig)
- Higher game speed. Obsolete in UT2004.
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 UT200x
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)
- JBMutator (Jailbreak)
- RABaseMutator (Rocket Arena)
- ScramBaseMutator (Slave Master)
Known Subclasses (UT2003)
Known Subclasses (UT2004)
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.