| Home Page | Recent Changes | Preferences

# DeathMatchPlus

UT :: Actor (UT) >> Info (UT) >> GameInfo (UT) >> TournamentGameInfo >> DeathMatchPlus (Package: BotPack)

This is the Tournament DeathMatch gametype and at the same time the superclass of all other "playable" UT game types.

## Properties

### Globalconfig Properties

These settings are shared among all UT game types.

globalconfig int MinPlayers
  Bots fill the server to gurantee this minimum number of players.
globalconfig float AirControl
  The default air control.
globalconfig bool bChangeLevels
globalconfig bool bHardcoreMode
  If this is True players receive 50% more damage and jump 10% higher. Game time goes by 10% faster.
globalconfig bool bMegaspeed
  Players move 40% faster and jump 20% higher than without bMegaSpeed and bHardcoreMode.
globalconfig bool bAltScoring
  If a player is killed by another player his score is reduced by 1 point.
globalconfig bool bTournament
  True if tournament mode is enbabled. Tournament mode prevents the game from starting until every player has indicated that they are ready (even if the "non ready" players have nipped down the chippy for some food).
globalconfig int NetWait
  Time to wait for players in netgames w/ bNetReady (typically team games)
globalconfig int RestartWait
globalconfig int InitialBots

### Config Properties

Per-gametype settings.

config int FragLimit
  Pretty obvious.
config int TimeLimit
  Time limit in minutes.
config bool bMultiWeaponStay
  Weapons stay when they are picked up. (No respawn time)
config bool bForceRespawn
  Players respawn instantly. (Configured in the Settings tab of the Start Game window.)
config int MaxCommanders
config bool bUseTranslocator
  Whether players should get a Translocator?.

### Localized Properties

string StartUpMessage
string TourneyMessage
string WaitingMessage1
string WaitingMessage2
string ReadyMessage
string NotReadyMessage
string CountDownMessage
string StartMessage
string GameEndedMessage
string SingleWaitingMessage
string gamegoal
string NoNameChange
string OvertimeMessage

### Other Properties

bool bChallengeMode
  Game time goes by even faster. (25%)
bool bAlwaysForceRespawn
  Overrides bForceRespawn to be always True. This is a gametype specific setting and can not be configured.
bool DontRestart
  ???
bool bAlreadyChanged
  ???
bool bFirstBlood
  This indicated whether First Blood was already drawn.
bool bRequireReady
bool bNoviceMode
  This will be set when Difficulty is below 4.
bool bNetReady
bool bJumpMatch
  All Players can jump as high as if they had the jump boots.
bool bThreePlus
  This will be set when Difficulty is not >= 4, but > 3. (this doesn't seem to be possible though, since Difficulty is a byte variable)
bool bFulfilledSpecial
  ???
bool bRatedTranslocator
  Use the Translocator in in this rated game, i.e. ladder game.
bool bStartMatch
  True during match startup.
int RemainingTime, ElapsedTime
int CountDown, StartCount
float LastTauntTime
NavigationPoint LastStartSpot
int NumCommanders
  Number of Commanders in the game. (Commanders are not implemented in UT)
bool bTutorialGame
  This game is a tutorial game.
int NumBots
  Number of bots in the game.
int RemainingBots
int LastTaunt[4]
ChallengeBotInfo? BotConfig
class<ChallengeBotInfo?> BotConfigType
float PlayerRating
float AvgOpponentRating
int NumOpp
int WinCount
int LoseCount
PlayerPawn RatedPlayer
int IDnum
RatedMatchInfo? RatedMatchConfig
float EndTime
int LadderTypeIndex
LadderInventory RatedGameLadderObj

## Methods

PreCacheReferences ( )
  This function is never called. It exists purely to force the pre-caching of the standard weapon and player meshes.
CheckReady ( )
  This function sets the `TimeLimit` to 20, and the `RemainingTime` to 1200. The function is only called when tournament mode is turned on.
SetGameSpeed (float T)
  This function sets the gamespeed. It completely replaces the superclass implementation. The function also calls `SaveConfig()` once the final game speed has been calculated.
PlayTeleportEffect (Actor (UT) Incoming, bool bOut, bool bSound)
  Originally declared in GameInfo (UT). This function simply adds a check for tournament mode behaviour. Apart from that the code is identical to the TournamentGameInfo version of this function. Note to newbie coders: This is an example of poor practice. After the initial tournament check the developer should simply have called `Super.PlayTeleportEffect()` - it would have saved the code duplication.
InitRatedGame (LadderInventory LadderObj, PlayerPawn LadderPlayer)
  Set game settings based on ladder information. Called when RatedPlayer logs in.
AcceptInventory (Pawn (UT) PlayerPawn)
  Originally declared in GameInfo (UT). This function allows the player to keep all instances of type LadderInventory, and destroys all other inventory objects. The player's weapon and selected item are set to `None` and the function `AddDefaultInventory()` is called.
bool SetEndCams (string Reason)
  Plays the winning message and focuses the view on the winning player.
PlayWinMessage (PlayerPawn Player, bool bWinner)
  Plays the winning message if the object passed is of type TournamentPlayer?.
NotifySpree (Pawn (UT) Other, int num)
  Notifies the local player if they are on a killing spree - and selects an appropriate message. num is the number of kills the player has got without dying.
EndSpree (Pawn (UT) Killer, Pawn (UT) Other)
  Unfortunately your killing spree has come to an end - lets tell both you and the person who killed you about it.
Killed (Pawn (UT) killer, Pawn (UT) Other, name damageType)
  Declared in GameInfo (UT). This function checks for any end of game conditions as well as for "first blood" and other special events. This function is also responsible for sending auto taunts.
StartMatch ( )
  This is called to start the game. If there is a timelimit on the start of the game then this function sets that. There are also traps in here to end the game from spawn-telefrags (if there are not enough start points then it's possible to win a game just from telefragging).
Timer ( )
  Checks for tournament mode, whether the game has ended because of it's time limit and other stuff.
bool TooManyBots ( )
  This function returns `true` if the number of bots plus the number of players is greater than the minimum number of players.
bool RestartPlayer (Pawn (UT) aPlayer)
  Called to re-start a player on the map. Will also remove bot players from the game if there are too many of them.
SendStartMessage( PlayerPawn P )
  Shows the start message to the player.
Bot (UT) SpawnBot (out NavigationPoint StartSpot)
  Spawns a bot. Finish me
Bot (UT) SpawnRatedBot (out NavigationPoint StartSpot)
  Finish me
bool ForceAddBot ( )
  Finish me
bool AddBot ( )
  Finish me
PlayStartUpMessage (PlayerPawn NewPlayer)
  Finish me
GiveWeapon (Pawn (UT) PlayerPawn, string aClassName)
  Gives a weapon to a player and makes it the player's current weapon.
RateVs (Pawn (UT) Other, Pawn (UT) Killer)
  Finish me
bool SuccessfulGame ( )
  Finish me
Skip ( )
SkipAll ( )
  Debug commands (?)
bool NeedPlayers ( )
  Finish me
bool OneOnOne ( )
  Returns whether there are only two players (human players or bots
float SpawnWait (Bot (UT) B)
  Finish me
bool NeverStakeOut (Bot (UT) Other)
  Finish me

## AI and Navigation Functions

bool CheckThisTranslocator (Bot (UT) aBot, TranslocatorTarget? T)
  This function returns false.
PickAmbushSpotFor (Bot (UT) aBot)
  This function searches through all NavigationPoint objects on the map looking for navigation points of type AmbushPoint. If the AmbushPoint is not taken (NavigationPoint.taken is false) and the Bot (UT) is not already at an ambush point then the ambush point found will be assigned to the Bot (UT).AmbushSpot. If the bot is already at an ambush point and a new ambush point has been found then the bot's AmbushSpot will be set to the new AmbushPoint.
byte AssessBotAttitude (Bot (UT) aBot, Pawn (UT) Other)
  This function determines the attitude of aBot towards Other. The value returned by this function is used in Bot (UT).AttitudeTo() function to map to the enumeration eAttitude. The function returns either a 1 (hate) or a 0 (fear) depending on the result of it's calculations. The calculations involve the bot's skill and level of agressiveness as defined by the value of aBot.Aggressiveness.
float GameThreatAdd (Bot (UT) aBot, Pawn (UT) Other)
  This function returns '0.
bool AllowTranslocation (Pawn (UT) Other, vector Dest)
  This function returns true.
bool CanTranslocate (Bot (UT) aBot)
  This function returns true if the bot is able to perform a translocation. In order for the bot to be able to use the translocator it must first have one, and it's Translocator? must have a target. Translocation must also be allowed by the game.
ModifyBehaviour (Bot (UT) NewBot)
  Only declaration here.

## Comments

From what I can tell there is an awful lot of handling around the "Tournament Mode" feature.

## Known Subclasses

- ChallengeDMP (used for the "Challenge" group of ladder game?)
- ChallengeIntro (used for CityIntro map)
- LastManStanding
- TDarkMatch (Tournament DarkMatch, not used)
- TeamGamePlus
- TrainingDM

## Related Topics

- Mapping for DM

Category Class (UT)

The Unreal Engine Documentation Site

Wiki Community

Topic Categories

Image Uploads

Random Page

Recent Changes

Offline Wiki

Unreal Engine

Console Commands

Terminology

Mapping Topics

Mapping Lessons

UnrealEd Interface

Questions&Answers

Scripting Topics

Scripting Lessons

Making Mods

Class Tree

Questions&Answers

Modeling Topics

Questions&Answers

Log In