Author: Markus Pargmann
Created: 4 September 2009
Last update: 28 May 2010
Modpack version 0.5.2.1
This mod makes many different gametypes possible.
For a very realistic ball behaviour, you should set sv_vertex_radius to 31
Helpers
- Rajh - original idea and the first prototype implementation of the ball mod
- Landil - graphics in the entities.png and some maps
- Matthis - A new pass-system in 0.5.2.1
- Zocka and Arkunos - most of the new graphics in the entities.png and compiling the windows version
- Xrg - mathematics of the ball reflection
Download
To make new maps you need this new entities.png
Patch-file for teeworlds 0.5.2
You can use the binaries the same way you are using the teeworlds_srv file. Don't forget to put the binary into the teeworlds directory.
To apply the patch-file, first download the sources from
http://teeworlds.com, extract them and change to the extracted directory. Move the patch-file to this directory. Apply the patch on linux by typing "patch -p0 < modpack.patch". Then follow the help to compile the source on
http://teeworlds.com.
Possible gametypes
- ball: The grenade is a ball. Tha aim is to shoot the ball into one of two goals.
- ko: Every player on a server plays at least one time. It's structered like a 1on1 knockout tournament. At the end there is a winner displayed and everything starts again.
- dm-mod: This mod is like DM but you can change the gameplay options.
- tdm-mod: This mod is like TDM but you can change the gameplay options.
- ctf-mod: This mod is like CTF but you can change the gameplay options.
entities.png description
From left to right beginning at top of the entities.png
- no tile
- the normal death tile (nothing new in 0.5.0 it's a new feature of teeworlds)
- nohook tile (also from normal teeworlds)
- some lines reserved for other mods
- resetting of red players: kills the red tees on this tile. nothing happens for blue ones
- resetting of blue players... somehow clear^^
- red goal tile: the blues have to shoot the ball into this one to score
- blue goal tile
- resetting of the red goalkeeper: kills only the red goalkeeper
- resetting of the red goalkeeper
- extra spawn point for the red goalkeeper
- extra spawn point for the blue goalkeeper
New tiles
- bumper-accelerator - accelerates the ball on collision
- accelerator (Number 1)
- accelerator up
- accelerator right
- accelerator down
- accelerator left
- bumper-brake
- brake (Number 2)
- bumper-random - random direction after collision
- random
- player-collision - ball doesn't collide
- Ball reset (Number 3)
- Action 1 (Number 4)
- Action 2 (Number 5)
- Action 3 (Number 6)
- Action 4 (Number 7)
- Action 5 (Number 8)
- Action 6 (Number 9)
Configuration
Options are disabled if you set them to 0.
Gameplay options (only possible with one of the mod-gametypes or ball/ko)
Options for Ball gametype
| Option |
Value range |
Standard |
Description |
| sv_bounce_loss_x |
0-100000 |
50 |
The ball looses that much x-speed after a bounce |
| sv_bounce_loss_y |
0-100000 |
50 |
The ball looses that much y-speed after a bounce |
| sv_explosions |
0-1 |
0 |
Should the grenades explode |
| sv_goal_keeptime |
0-100000 |
5 |
The goalkeeper fires the ball automatically after this time (0 immediately) |
| sv_player_keeptime |
0-100000 |
3 |
The player fires the ball automatically after this time (0 immediately) |
| sv_real_foot |
0-1 |
0 |
Disables the hammer |
| sv_ball_respawn |
0-100000 |
6 |
Respawn time of the ball |
| sv_goalkeeper |
0-16 |
0 |
How many goalkeepers |
| sv_goalkeeper_jumping |
0-1 |
0 |
Endless jumping of the goalkeeper |
| sv_goaler_score |
0-1000 |
1 |
Score for the goaler |
| sv_passer_score |
0-1000 |
1 |
Score for the goaler |
| sv_team_score |
0-1000 |
1 |
Score for the goaler |
| sv_team_pass_score |
0-1000 |
1 |
Score for the team through a goal with pass |
| sv_own_goal |
0-1000 |
1 |
Negative score for a wrong goal |
| sv_second_weapon |
0-5 |
0 |
The second weapon in ball mod (sense full is only 0 and rifle perhaps 4) |
| sv_ball_reloader |
0-1000 |
10 |
how fast you can fire the ball again after you received it |
| sv_second_weapon |
0-5 |
0 |
The second weapon. You have this weapon if you don't have the grenade-launcher |
New options
| Option |
Value range |
Standard |
Description |
| sv_bumper_accelerate |
0-10000000 |
500 |
The acceleration getting from a bumper-tile divided by 1000 |
| sv_bumper_brake |
0-10000000 |
500 |
The braking getting from a bumper-tile divided by 1000 |
| sv__brake |
0-10000000 |
500 |
The braking divided by 100000 |
| sv_accelerate |
0-10000000 |
500 |
The acceleration getting from a tile divided by 100000 |
| sv_accelerate_up |
0-10000000 |
500 |
The acceleration getting from a tile in one direction divided by 100000 |
| sv_accelerate_right |
0-10000000 |
500 |
The acceleration getting from a tile in one direction divided by 100000 |
| sv_accelerate_down |
0-10000000 |
500 |
The acceleration getting from a tile in one direction divided by 100000 |
| sv_accelerate_left |
0-10000000 |
500 |
The acceleration getting from a tile in one direction divided by 100000 |
| sv_bumper_speedup |
0-1 |
1 |
is this tile activated at the beginning? |
| sv_speedup |
0-1 |
1 |
is this tile activated at the beginning? |
| sv_speedup_up |
0-1 |
1 |
is this tile activated at the beginning? |
| sv_speedup_right |
0-1 |
1 |
is this tile activated at the beginning? |
| sv_speedup_down |
0-1 |
1 |
is this tile activated at the beginning? |
| sv_speedup_left |
0-1 |
1 |
is this tile activated at the beginning? |
| sv_bumper_slowdown |
0-1 |
1 |
is this tile activated at the beginning? |
| sv_slowdown |
0-1 |
1 |
is this tile activated at the beginning? |
| sv_bumper_random |
0-1 |
1 |
is this tile activated at the beginning? |
| sv_random |
0-1 |
1 |
is this tile activated at the beginning? |
| sv_ball_reset |
0-1 |
1 |
is this tile activated at the beginning? |
| sv_goal_timer |
0-1 |
1 |
Activate a goal timer |
| sv_calc_steps |
0-10000000 |
100 |
Claculation steps per tick for the collision detection. If the ball is very fast you have to increase this value. |
| sv_action_X_cause |
0-3 |
0 |
X is between 1 and 6. What activates the action? 0 = ball, 1 = tee, 2 = red tee, 3 = blue tee |
| sv_action_X_tile |
0-10 |
0 |
X is between 1 and 6. Which tile is effected by this action? 0 = BUMPER_SPEEDUP, 1 = SPEEDUP, 2 = SPEEDUP_UP, 3 = SPEEDUP_RIGHT, 4 = SPEEDUP_DOWN, 5 = SPEEDUP_LEFT, 6 = BUMPER_SLOWDOWN, 7 = SLOWDOWN, 8 = BUMPER_RANDOM, 9 = RANDOM, 10 = BALL_RESET |
| sv_action_X_type |
-1-10000000 |
0 |
X is between 1 and 6. What action? -1 = activate, 0 = deactivate, Y>0 = activate for Y seconds |
| sv_action_X_cmd |
max. 512 characters |
|
X is between 1 and 6. What command should be executed. |
| sv_vertex_radius |
0-31 |
0 |
Set this for rounded vertex. 31 is maximum |
| sv_conservative_collision |
0-1 |
0 |
Set this to 1 to disable the correct collision at a vertex |
New from Matthis
| Option |
Value range |
Standard |
Description |
| sv_new_pass_system |
0-1 |
0 |
1 = Activate the new pass system, 0 = Deactivate it. |
| sv_pass_usability |
0-1000 |
4 |
In this time ( seconds ) you can exploit a pass. |
| sv_shot_usability |
0-1000 |
4 |
If the time between shoot and goal is bigger than it, there wont be a passpoint! |
| sv_passes_only |
0-1 |
0 |
1 = You Can only score with Pass Goals |
| sv_owngoal_respawn |
0-1 |
0 |
If sv_passes_only == 1 and someone does an own goal, then the players will respawn if sv_owngoal_respawn is 1, otherwise not. |
General options
| Option |
Value range |
Standard |
Description |
| sv_diff_score |
0-1000 |
0 |
Difference between the team-scores before a team can win |
| sv_suicide_score |
0-1 |
0 |
Count selfkills as negative score |
| sv_hammer_team_att_loss |
0-10 |
0 |
The attacker looses this health, if he attacks a teammate |
| sv_hammer_att_loss |
0-10 |
0 |
The attacker looses this health |
| sv_hammer_def_loss |
0-10 |
0 |
The victim player looses this armor |
| sv_big_hammer |
0-10 |
0 |
Enables a big hammer. This hammer has a higher range than the normal one and only decreases the armor of the victim |
| sv_big_hammer_team_att_loss |
0-10 |
0 |
The attacker looses this health, if he attacks a teammate |
| sv_big_hammer_att_loss |
0-10 |
0 |
The attacker looses this health |
| sv_big_hammer_def_loss |
0-10 |
0 |
The victim player looses this armor |
| sv_hook_team_att_decr |
0-1000 |
0 |
The hooker's health is decreased by this value in 10 seconds, when hooking a teammate |
| sv_hook_att_decr |
0-1000 |
0 |
The hooker's health is decreased by this value in 10 seconds |
| sv_hook_def_decr |
0-1000 |
0 |
The hooked player's armor is decreased by this value in 10 seconds |
| sv_hook_def_health_decr |
0-1000 |
0 |
The hooked player's health is decreased by this value in 10 seconds |
| sv_ball_att_decr |
0-1000 |
0 |
The ball owner's health is decreased by this in 10 seconds |
| sv_ball_def_decr |
0-1000 |
0 |
The ball owner's armor is decreased by this in 10 seconds |
| sv_health_regen |
0-1000 |
0 |
Health regeneration (this value is the added health in 10 seconds) |
| sv_armor_regen |
0-1000 |
0 |
Armor regeneration (this value is the added armor in 10 seconds) |
| sv_partly_dead |
0-10000 |
0 |
If the player only has 1hp, the player is partly dead for this value seconds. In this time there is no health/armor regeneration and the player can't hook other players or take the ball. If this option is 0, players are killed when they reach 0HP |
| sv_hook_teammates |
0-1 |
1 |
Enable the ability to hook teammates |
| sv_hook_goalkeeper |
0-1 |
1 |
Enable the ability to hook goalkeeper |
| sv_grenade_startspeed |
0-1000000 |
0 |
startspeed of the grenade (the sum of player-speed and normal grenade-speed) |
| sv_spawn_delay |
0-10000 |
3 |
Spawn delay for players |
| sv_start_health |
0-10 |
10 |
The player has this health after respawn. |
| sv_start_armor |
0-10 |
0 |
The player has this armor after respawn. |
| sv_start_hammer |
0-1 |
1 |
The player has a hammer after respawn. |
| sv_start_pistol |
0-10 |
10 |
The player has a pistol after respawn with this ammo. |
| sv_start_shotgun |
0-10 |
0 |
The player has a shotgun after respawn with this ammo. |
| sv_start_grenade |
0-10 |
0 |
The player has a grenadelauncher after respawn with this ammo. |
| sv_start_ninja |
0-1 |
0 |
The player has a ninja after respawn. |
| sv_start_rifle |
0-10 |
0 |
The player has a rifle after respawn with this ammo. |
| sv_pistol_regen |
0-100000 |
500 |
Ammo regeneration |
| sv_shotgun_regen |
0-100000 |
0 |
Ammo regeneration |
| sv_grenade_regen |
0-100000 |
0 |
Ammo regeneration |
| sv_rifle_regen |
0-100000 |
0 |
Ammo regeneration |
| sv_ninja_mod |
0-1 |
0 |
If you have the ninja, you can use it forever |
| sv_immediate_ammo_regen |
0-1 |
0 |
Not waiting the reload time before regenerating the ammo. |
| sv_version_string |
max. 32 chars |
|
Version string (don't specify this if you don't know what it is) |
| sv_respawn_powerups |
0-1 |
1 |
Spawn the items on the map (weapons, health and shield) |
Administration options
| Option |
Value range |
Standard |
Description |
| sv_msg_intervall |
0-10000 |
4 |
After what time the message sv_min_msg is displayed (minutes). |
| sv_min_msg |
max. 512 chars |
|
A message displayed every sv_msg_intervall minutes in the chat. |
| sv_msg_frame_time |
0-10000 |
4 |
After this time the server decreases the number of messages a player sent by one. (So it's kind of messages per minute here) |
| sv_max_msgs |
0-10000 |
5 |
Maximal messages before muting the player. (So that's something like toleranz to the sv_msg_frame_time value) |
| sv_msg_mute_time |
0-10000 |
90 |
How long are people muted |
| sv_max_idle |
0-10000 |
60 |
After this time afk-players join the spectators |
| sv_kick_idle |
0-1 |
1 |
Kick afk-player if the server is full |
| sv_pre_password_msg |
max. 512 chars |
Here is your password for the professional server. It's the correct one for this day and your nick, noone else. |
Message the server gives the player who receives a password for pro-server |
| sv_generate_pro_pw |
0-1 |
0 |
Gives good players a password at the end of a round. |
| sv_use_pro_pw |
0-1 |
0 |
The player has to type in the custom password for his name or the general password. |
| sv_pro_password |
max. 32 chars |
|
The general password for the professional server (is needed to generate and check passwords) |
| sv_reserved_slots |
0-1000 |
0 |
Number of reserved slots |
| sv_reserved_slot_pass |
max. 32 chars |
|
Password for a reserved slot |
| sv_handle_mapvotes |
0-1 |
1 |
Generates a special debug message and gives the player the feeling of voting for the map |
| sv_silent_mode |
0-1 |
0 |
No servermessages in the chat |
| sv_total_silence |
0-1 |
0 |
Disables the chat |
| sv_spec_silence |
0-1 |
0 |
The spectators can't speak global only under the spectators |
| sv_cwscore |
0-1 |
0 |
Should cw_score be displayed at the end of a round (cw_score is the sum of won rounds by a team) |
Commands
Admin (F2-console)
- reset (Resets the game, but not the scores, especially for ball gametype if the ball is gone)
- mute <Player-id> <time> (Mutes the player for the given time)
- unmute <Player-id> (Unmutes the given player)
- set_teamscore <Team-id> <score> (Sets the teamscore to the given value (red team is team-id 0, blue 1))
- set_cwscore <Team-id> <score> (Sets the clanwar-score to the given value (red team is team-id 0, blue 1))
- set_playerscore <Player-id> <score> (Sets the player-score to the given value (red team is team-id 0, blue 1))
- kill <Player-id> <seconds> (Kills the player for the given time)
- all_spec (Every player becomes spectator, perhaps sometimes useful for clanwars)
- all_kick (Kicks everyone from the server(the admin can't be kicked))
- reset_cwscore (Resets the clanwar-score)
- gen_pro_pw <Player-id> (Generates a password for the player)
User (Chat)
- .info (Gives you all other commands available on that specific server)
- .modinfo (Gives you information about the MOD)