Home
News
Gameplay
Images
Downloads
Maps
Mapping

Forums
Contact
IRC
 
Mapping Guide

Here's where you can learn how to make maps for CarBall. Before you can create your own maps for CarBall you will need to add the following line to your UT2004.ini file in the [Editor.EditorEngine] section..

EditPackages=CBall

Note: Don't forget to set the maps GameType to CBall.CB_Game in the map's Level Proprerties.

Note: Make sure you don't have holes in your map where the ball can fall out of the Map! As of Version 1.5 if a Ball falls out of the field of play and remains still for roughly 15 seconds it will be reset.

Here's the information on what special actors you can use in a CarBall map, and what their settings do.

CB_BallSpawn: Required

The BallSpawn is used to indicate the location in the map where the Ball will be spawned, and what skin the ball should use. By default you don't need to set any parameters for this actor.

ClassTree Location: (NavigationPoint > JumpDest > JumpSpot > GameObjective)

Variables:
CB_BallSpawn > BallSkin: If you want to use a custom skin for the Ball, then set it here. Note: Place the desired texture into the MyLevel package.

CB_BallSpawn > SpawnHeight: This value specifies how far above the BallSpawn the Ball will spawn.

CB_BallSpawn > bBallGlows: This Boolean flag tells the game if it should make the Ball emit a glow, or not. Setting this flag to True will cause the Ball to glow, and setting it to False will cause the Ball to not glow.

CB_BallSpawn > BallGlowHue: This byte value is used to tell the Ball what color it should glow (assuming bBallGlows is set to true). It is a Hue value (eg.. 0 is red, 170 is blue, etc..).

CB_BallSpawn > BallGlowSaturation: Self explanatory.

CB_BallSpawn > BallGlowBrightness: Self explanatory.

New in version 1.9..

CB_BallSpawn > OvertimeEvent: If you would like to set off some special effects (fireworks, music change, etc) when a match goes into overtime, enter the Enter the tag of a ScriptedTrigger in this field. When overtime is reached, the event will be broadcast.

CB_GoalVolume: Required

GoalVolumes are used to mark the areas of the map where points can be scored. When the Ball enters a

CB_GoalVolume: Required

GoalVolumes are used to mark the areas of the map where points can be scored. When the Ball enters a GoalVolume, the appropriate pointscoring rules are applied.

CB_GoalVolume is listed in the editors Add Volume dropdown list.

Variables:
CB_GoalVolume > OwningTeam: This value tells the game which team this GoalVolume belongs to (0 = Red, 1 = Blue). If you set this value to 255 then the game treats this GoalVolume as a RandomGoalVolume.

CB_GoalVolume > PlayerScoreValue: This is how many points are added to the player who knocks the Ball into this GoalVolume.

CB_GoalVolume > TeamScoreValue: This is how many points are added to the Team of the player who knocks the Ball into this GoalVolume.

CB_GoalVolume > RedEvent : This event will be broadcast when the Red team scores a goal (In the event of an owngoal the BlueEvent will be broadcast). It is a per CB_GoalVolume function so you will need to set events for each and every CB_GoalVolume. This leads to some duplication of actors but allows the ability to have different events for each CB_GoalVolume. If you don't put anything here, no event will be broadcast.

CB_GoalVolume > BlueEvent : This event will be broadcast when the Blue team scores a goal (In the event of an owngoal the RedEvent will be broadcast). It is a per CB_GoalVolume function so you will need to set events for each and every CB_GoalVolume. This leads to some duplication of actors but allows the ability to have different events for each CB_GoalVolume. If you don't put anything here, no event will be broadcast.

New in version 1.9..

CB_GoalVolume > bOutOfBounds: This flag specifies wether or not the GoalVolume will be regarded as an OutOfBounds area. If set to true, the Ball will be reset when it touches this GoalVolume. If set to false (default) the Ball will be able to score goals when touching this GoalVolume.

ACTION_ToggleGoalVolume Optional

Added in version 1.9..

This ScriptedSequence can be called from within the AIScipt of a ScriptedTrigger actor. It's purpose is to toggle the bOutOfBounds flag of any CB_GoalVolume who's Event > Tag field matches the one contained within the the ScriptedSequence.

CB-Potholes uses this to change the OutOfBounds potholes (the green ones) into RandomGoalAreas when overtime begins. Just open up CB-PotHoles in UEd to see how it was done (if you have trouble).

CB_RepulseBallVolume: Optional

When the Ball enters a CB_RepulseVolume, the Ball will be repulsed in the desired direction.

CB_OutOfBoundsVolume is listed in the editors Add Volume dropdown list.

Variables
LadderVolume > WallDir: Here is where you specify which direction to repulse the Ball.

CB_RepulseBallVolume > RepulseForce: This variable specifies how much forse to apply to the Ball when it is inside a CB_RepulseBallVolume.

CB_RepulseBallVolume > ZRepulsor: This bool flag is used for the case where you want to repulse the Ball only on the Z-Axis. Setting it to true will cause the repulseforce to be applied only to the Ball's Z-Axis.

CB_RedGoalFlag: Required

The RedGoalFlag let's bots know where the red teams Goal Area is. This is required as CB_GoalVolume is not really a GameObjective, but just a Volume.

Place a CB_RedGoalFlag in the red teams CB_GoalVolume.

ClassTree Location: (NavigationPoint > JumpDest > JumpSpot > GameObjective)

CB_BlueGoalFlag: Required

The BlueGoalFlag let's bots know where the blue teams Goal Area is. This is required as CB_GoalVolume is not really a GameObjective, but just a Volume.

Place a CB_BlueGoalFlag in the blue teams CB_GoalVolume.

ClassTree Location: (NavigationPoint > JumpDest > JumpSpot > GameObjective)

CB_PickupBase: Optional

PickupBases should be pretty much self explanatory.

ClassTree Location: (xPickUpBase)

Variables:
PickupBase > PowerUp: There are currently 6types of pickups in CarBall. Do NOT set the PowerUp to anything other than a CarBall pickup. Valid CarBall pickups are.. CB_NitroPickup, CB_GooPickup, CB_RocketPickup, CB_InvisPickup, CB_FlipMine, and CB_HealthPack.