I don't need to test my programs. I have an error-correcting modem.

Legacy:Arena

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
UT :: Actor (UT) >> Info (UT) >> Mutator (UT) >> Arena (Package: Botpack)

The base class of all arena mutators like Rocket Launcher Arena or InstaGib DM. Only one Arena mutator is allowed at the same time. If you use two Arena mutators at the same time (e.g. Shock Arena and InstaGib DM), you'll end up with NO weapons at all, not even pickups!

Properties[edit]

name WeaponName 
The name of the arena Weapon (UT)'s class.
string WeaponString 
The actor to replace weapons on the map with. (usually the arena weapon)
name AmmoName 
The name of the arena weapon's Ammo (UT) class. Use 'NullAmmo' (or any other non-existant class name) if the weapon doesn't have ammo.
string AmmoString 
The actor to replace ammo pickups on the map with. (usually the arena weapon's ammo class)

The arena weapon's class is also specified in the DefaultWeapon value.

When you create Arena Mutators, you might want to note that DeathmatchPlus and TournamentPlayer both have this same function that forces the pre-caching of weapon meshes that your mutator will never use because you only allow one weapon (usually). It's easy to fix this in any new arena mutators you create.

Just override both of those functions anywhere in your code like this:

(This would have been the way to do it in InstagibDM, but you want to remove the right weapon meshes for your mutator.)

/*
function PreCacheReferences()
{
	//never called - here to force precaching of meshes
	spawn(class'TMale1');
	spawn(class'TMale2');
	spawn(class'TFemale1');
	spawn(class'TFemale2');
	spawn(class'ImpactHammer');
	spawn(class'Translocator');
	spawn(class'Enforcer');
	spawn(class'UT_Biorifle');
	spawn(class'ShockRifle');
	spawn(class'PulseGun');
	spawn(class'Ripper');
	spawn(class'Minigun2');
	spawn(class'UT_FlakCannon');
	spawn(class'UT_Eightball');
	spawn(class'SniperRifle');
}
*/
function class<TournamentPlayer>PreCacheReferences()
{
	//never called - here to force precaching of meshes
	//RegWeaps removed by CH3Z
	spawn(class'TMale1');
	spawn(class'TMale2');
	spawn(class'TFemale1');
	spawn(class'TFemale2');
	spawn(class'ShockRifle');
 
}
function class<DeathmatchPlus>PreCacheReferences()
{
	//never called - here to force precaching of meshes
	//RegWeaps removed by CH3Z
	spawn(class'TMale1');
	spawn(class'TMale2');
	spawn(class'TFemale1');
	spawn(class'TFemale2');
	spawn(class'ShockRifle');
 
}

(Force is hardly ever the wise choice. ;))

Known subclasses[edit]