X-Git-Url: http://git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=gamemodes-server.cfg;h=6d8ee6f07364532ee1ecb47cc6e051b8a4181823;hp=bdac1a2343a0c8f26e2c6f4dd104da313401ad30;hb=HEAD;hpb=dcb5f52900b1e60cf93bed0cf9643f3a07b36f09 diff --git a/gamemodes-server.cfg b/gamemodes-server.cfg index bdac1a234..a859acbde 100644 --- a/gamemodes-server.cfg +++ b/gamemodes-server.cfg @@ -29,6 +29,10 @@ alias sv_hook_gamestart_ka alias sv_hook_gamestart_ft alias sv_hook_gamestart_inv alias sv_hook_gamestart_duel +alias sv_hook_gamestart_mayhem +alias sv_hook_gamestart_tmayhem +alias sv_hook_gamestart_tka +alias sv_hook_gamestart_surv // there is currently no hook for when the match is restarted // see sv_hook_readyrestart for previous uses of this hook //alias sv_hook_gamerestart @@ -58,6 +62,10 @@ alias sv_vote_gametype_hook_ons alias sv_vote_gametype_hook_rc alias sv_vote_gametype_hook_tdm alias sv_vote_gametype_hook_duel +alias sv_vote_gametype_hook_mayhem +alias sv_vote_gametype_hook_tmayhem +alias sv_vote_gametype_hook_tka +alias sv_vote_gametype_hook_surv // Example preset to allow 1v1ctf to be used for the gametype voting screen. // Aliases can have max 31 chars so the gametype can have max 9 chars. @@ -208,6 +216,34 @@ set g_duel_respawn_delay_large_count 0 set g_duel_respawn_delay_max 0 set g_duel_respawn_waves 0 set g_duel_weapon_stay 0 +set g_mayhem_respawn_delay_small 0 +set g_mayhem_respawn_delay_small_count 0 +set g_mayhem_respawn_delay_large 0 +set g_mayhem_respawn_delay_large_count 0 +set g_mayhem_respawn_delay_max 0 +set g_mayhem_respawn_waves 0 +set g_mayhem_weapon_stay 0 +set g_tmayhem_respawn_delay_small 0 +set g_tmayhem_respawn_delay_small_count 0 +set g_tmayhem_respawn_delay_large 0 +set g_tmayhem_respawn_delay_large_count 0 +set g_tmayhem_respawn_delay_max 0 +set g_tmayhem_respawn_waves 0 +set g_tmayhem_weapon_stay 0 +set g_tka_respawn_delay_small 0 +set g_tka_respawn_delay_small_count 0 +set g_tka_respawn_delay_large 0 +set g_tka_respawn_delay_large_count 0 +set g_tka_respawn_delay_max 0 +set g_tka_respawn_waves 0 +set g_tka_weapon_stay 0 +set g_surv_respawn_delay_small 0 +set g_surv_respawn_delay_small_count 0 +set g_surv_respawn_delay_large 0 +set g_surv_respawn_delay_large_count 0 +set g_surv_respawn_delay_max 0 +set g_surv_respawn_waves 0 +set g_surv_weapon_stay 0 // ========= @@ -222,13 +258,14 @@ set g_assault 0 "Assault: attack the enemy base as fast as you can, then defend set g_ca 0 "Clan Arena: Played in rounds, once you're dead you're out! The team with survivors wins the round" set g_ca_point_limit -1 "Clan Arena point limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)" set g_ca_point_leadlimit -1 "Clan Arena point lead limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)" -set g_ca_spectate_enemies 0 "allow eliminated players to spectate enemy players during Clan Arena games" +set g_ca_spectate_enemies 0 "allow eliminated players to spectate enemy players during Clan Arena games. -1 blocks freeroam camera. Changes to this cvar take effect from the next round" set g_ca_warmup 10 "time players get to run around before the round starts" set g_ca_damage2score 100 "every this amount of damage done give players 1 point" set g_ca_round_timelimit 180 "round time limit in seconds" set g_ca_teams_override 0 set g_ca_team_spawns 0 "when 1, players spawn from the team spawnpoints of the map, if any" set g_ca_teams 0 +set g_ca_prevent_stalemate 0 "When round time ends instead of instant stalemate give round win to the team with 1: most survivors. 2: most total health. 3: most survivors or if equal then most total health" set g_ca_weaponarena "most" "starting weapons - takes the same options as g_weaponarena" @@ -259,7 +296,7 @@ set g_ctf_stalemate 1 "show the enemy flagcarrier location after both teams have set g_ctf_stalemate_endcondition 1 "condition for stalemate mode to be finished: 1 = If ONE flag is no longer stale, 2 = If BOTH flags are no longer stale" set g_ctf_stalemate_time 60 "time for each flag until stalemate mode is activated" set g_ctf_flagcarrier_waypointforenemy_spotting 1 "show the enemy flagcarrier location if a team mate presses +use to spot them" -set g_ctf_dropped_capture_delay 1.5 "autocapture delay when flag is thrown onto the base - counted from throw, not landing" +set g_ctf_dropped_capture_delay 1 "autocapture delay when flag is thrown onto the base - counted from when the flag lands on the ground" set g_ctf_dropped_capture_radius 100 "allow dropped flags to be automatically captured by base flags if the dropped flag is within this radius of it" set g_ctf_flag_damageforcescale 2 set g_ctf_portalteleport 0 "allow flag carriers to go through portals made in portal gun without dropping the flag" @@ -296,7 +333,7 @@ set g_ctf_allow_monster_touch 0 "allow flags to be returned by monsters" set g_ctf_score_ignore_fields 0 "force regular score settings to override per entity specified scores" set g_ctf_shield_max_ratio 0 "shield at most this percentage of a team from the enemy flag (try: 0.4 for 40%)" -set g_ctf_shield_min_negscore 20 "shield the player from the flag if he's got this negative amount of points or less" +set g_ctf_shield_min_negscore 20 "shield the player from the flag if they've got this negative amount of points or less" set g_ctf_shield_force 100 "push force of the shield" set g_ctf_flag_red_model "models/ctf/flags.md3" @@ -322,9 +359,10 @@ exec ctfscoring-samual.cfg // ==================== set g_cts 0 "CTS: complete the stage" set g_cts_selfdamage 1 "0 = disable all selfdamage and falldamage in cts" -set g_cts_finish_kill_delay 10 "prevent cheating by running back to the start line, and starting out with more speed than otherwise possible" +set g_cts_finish_kill_delay 2 "kill player this many seconds after stage completion to prevent cheating by starting out with more speed than otherwise possible; set it to 0 to not kill or to -1 to kill instantly" set g_cts_send_rankings_cnt 15 "send this number of map records to clients" set g_cts_removeprojectiles 0 "remove projectiles when the player dies, to prevent using weapons earlier in the stage than intended" +set g_cts_drop_monster_items 0 "allow killed monsters to drop their items" // ========================== @@ -406,9 +444,9 @@ set g_keepaway_noncarrier_damage 1 "damage done to other players if both you and set g_keepaway_noncarrier_force 1 "force done to other players if both you and they don't have the ball" set g_keepaway_noncarrier_selfdamage 1 "self damage if you don't have the ball" set g_keepaway_noncarrier_selfforce 1 "self force if you don't have the ball" -set g_keepawayball_effects 0 "Add together the numbers you want: EF_ADDITIVE (32) / EF_NODEPTHTEST (8192) / EF_DIMLIGHT (8)" +set g_keepawayball_effects 8 "Add together the numbers you want: EF_ADDITIVE (32) / EF_NODEPTHTEST (8192) / EF_DIMLIGHT (8)" set g_keepawayball_trail_color 254 "particle trail color from player/ball" -set g_keepawayball_damageforcescale 3 "Scale of force which is applied to the ball by weapons/explosions/etc" +set g_keepawayball_damageforcescale 2 "Scale of force which is applied to the ball by weapons/explosions/etc" set g_keepawayball_respawntime 10 "if no one picks up the ball, how long to wait until the ball respawns" @@ -451,6 +489,20 @@ set g_lms_last_join 3 "if g_lms_join_anytime is 0, new players can only join if set g_lms_join_anytime 1 "1: new players can join, but get same amount of lives as the worst player; 0: new players can only join if the worst active player has (fraglimit - g_lms_last_join) or more lives" set g_lms_items 0 "enables items to spawn, weaponarena still disables weapons and ammo (to force all items to spawn, use g_pickup_items 1 instead)" set g_lms_weaponarena "most_available" "starting weapons - takes the same options as g_weaponarena" +set g_lms_leader_lives_diff 2 "players leading by at least this number of lives are considered leaders and are more visible" +set g_lms_leader_minpercent 0.5 "leading players are not considered leaders only if they are more than this percentage of total players" +set g_lms_leader_wp_time 5 "show waypoints for leaders only for this amount of time" +set g_lms_leader_wp_interval 25 "periodically show again waypoints for leaders after this amount of time" +set g_lms_leader_wp_interval_jitter 10 "jitter waypoint interval by this amount of time" +set g_lms_dynamic_respawn_delay 1 "increase player respawn delay based on the number of lives less than the leader (NOTE: delay doesn't increase when only 2 players are left alive)" +set g_lms_dynamic_respawn_delay_base 2 "base player respawn delay" +set g_lms_dynamic_respawn_delay_increase 3 "increase base player respawn delay by this amount of time for each life less than the leader" +set g_lms_dynamic_respawn_delay_max 20 "max player respawn delay" +set g_lms_dynamic_vampire 1 "attackers receive a fraction of health removed from enemies based on the number of lives less than the enemy" +set g_lms_dynamic_vampire_factor_base 0.1 "base vampire factor" +set g_lms_dynamic_vampire_factor_increase 0.1 "increase vampire factor by this fraction for each life less than the enemy" +set g_lms_dynamic_vampire_factor_max 0.5 "max vampire factor" +set g_lms_dynamic_vampire_min_lives_diff 2 "number of lives the attacker must have less than the enemy to receive the base fraction of health" set g_lms_forfeit_min_match_time 30 "end the match early if at least this many seconds have elapsed and less than 2 players are playing due to forfeits" @@ -488,7 +540,7 @@ set g_nexball_basketball_meter_maxpower 1.2 "maximal multiplier to the laun set g_nexball_delay_goal 3 "delay between a goal and a ball reset" set g_nexball_delay_idle 10 "maximal idle time before a reset" set g_nexball_delay_start 3 "time the ball stands on its spawn before being released" -set g_nexball_delay_collect 0.5 "time before the same player can catch the ball he launched" +set g_nexball_delay_collect 0.5 "time before the same player can catch the ball they launched" set g_nexball_sound_bounce 1 "bouncing sound (0: off)" set g_nexball_basketball_trail 1 "1 to leave a trail" set g_nexball_football_trail 0 "1 to leave a trail" @@ -560,3 +612,88 @@ set g_duel 0 "Duel: frag the opponent more in a one versus one arena battle" //set g_duel_warmup 180 "Have a short warmup period before beginning the actual duel" set g_duel_with_powerups 0 "Enable powerups to spawn in the duel gamemode" set g_duel_not_dm_maps 0 "when this is set, DM maps will NOT be listed in duel" + +// ============================== +// free for all and team mayhem +// ============================== +set g_mayhem 0 "Mayhem: Compete for the most damage dealt and kills in this chaotic mayhem!" +set g_tmayhem 0 "Team Mayhem: Compete with your team for the most damage dealt and kills in this chaotic mayhem!" + +set g_mayhem_scoring_upscaler 20 "upscale one frag's worth to be this amount of in score" +set g_tmayhem_scoring_upscaler 20 "upscale one frag's worth to be this amount of in score" +set g_mayhem_scoring_kill_weight 0.25 "how much is a kill worth in frags" +set g_tmayhem_scoring_kill_weight 0.25 "how much is a kill worth in frags" +set g_mayhem_scoring_damage_weight 0.75 "how much is damage equal to player's spawning health+armor worth in frags" +set g_tmayhem_scoring_damage_weight 0.75 "how much is damage equal to player's spawning health+armor worth in frags" +set g_mayhem_scoring_disable_selfdamage2score 0 "disable reducing score with self damage at the cost of full penalty for suicides regardless of how much health was lost suiciding" +set g_tmayhem_scoring_disable_selfdamage2score 0 "disable reducing score with self damage at the cost of full penalty for suicides regardless of how much health was lost suiciding" + +set g_mayhem_point_limit -1 "Mayhem score limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)" +set g_mayhem_point_leadlimit -1 "Mayhem score lead limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)" +set g_tmayhem_point_limit -1 "Team Mayhem score limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)" +set g_tmayhem_point_leadlimit -1 "Team Mayhem score lead limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)" + +set g_mayhem_weaponarena "most_available" "starting weapons - takes the same options as g_weaponarena" +set g_tmayhem_weaponarena "most_available" "starting weapons - takes the same options as g_weaponarena" + +set g_mayhem_powerups 1 "Allow powerups in mayhem. Only checked if g_powerups is -1 therefore this will be overridden by g_powerups 1 or 0" +set g_tmayhem_powerups 1 "Allow powerups in team mayhem. Only checked if g_powerups is -1 therefore this will be overridden by g_powerups 1 or 0" +set g_mayhem_pickup_items 0 "spawn pickup items in mayhem" +set g_tmayhem_pickup_items 0 "spawn pickup items in team mayhem" +set g_mayhem_pickup_items_remove_weapons_and_ammo 1 "when pickup items are enabled in mayhem still remove weapons and ammo pickups" +set g_tmayhem_pickup_items_remove_weapons_and_ammo 1 "when pickup items are enabled in team mayhem still remove weapons and ammo pickups" + +set g_mayhem_selfdamage 0 "0 = disable selfdamage in mayhem, 1 = enable selfdamage in mayhem" +set g_tmayhem_selfdamage 0 "0 = disable selfdamage in tmayhem, 1 = enable selfdamage in tmayhem" + +set g_mayhem_regenerate 0 "health and/or armor regeneration, according to g_balance_health_regen and g_balance_armor_regen" +set g_tmayhem_regenerate 0 "health and/or armor regeneration, according to g_balance_health_regen and g_balance_armor_regen" +set g_mayhem_rot 0 "health and/or armor rotting, according to g_balance_health_rot and g_balance_armor_rot" +set g_tmayhem_rot 0 "health and/or armor rotting, according to g_balance_health_rot and g_balance_armor_rot" + +set g_tmayhem_teams 2 "how many teams are in team mayhem (set by mapinfo)" +set g_tmayhem_team_spawns 0 "when 1, players spawn from the team spawnpoints of the map, if any" +set g_tmayhem_teams_override 0 "how many teams are in team mayhem" + +// =============== +// team keepaway +// =============== +set g_tka 0 "another game mode which focuses around a ball" +set g_tka_on_ka_maps 1 "when this is set, all KA maps automatically support TKA" +set g_tka_on_tdm_maps 0 "when this is set, all TDM maps automatically support TKA" +set g_tka_teams 2 "how many teams are in team keepaway (set by mapinfo)" +set g_tka_team_spawns 0 "when 1, players spawn from the team spawnpoints of the map, if any" +set g_tka_teams_override 0 "how many teams are in team keepaway" +set g_tka_point_limit -1 "TKA point limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)" +set g_tka_point_leadlimit -1 "TKA point lead limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)" +set g_tka_score_team 1 "allow points to be awarded to teammates for any kill when the ball is in your team's possession" +set g_tka_score_bckill 1 "points for killing the ball barrier (Ball Carrier Kill)" +set g_tka_score_killac 1 "points for kills while holding the ball (Kill As Carrier)" +set g_tka_score_timeinterval 1 "amount of time it takes between intervals for timepoints to be added to the score" +set g_tka_score_timepoints 0 "points to add to score per timeinterval, 0 for no points" +set g_tka_ballcarrier_effects 8 "Add together the numbers you want: EF_ADDITIVE (32) / EF_NODEPTHTEST (8192) / EF_DIMLIGHT (8)" +set g_tka_ballcarrier_highspeed 1 "speed multiplier done to the person holding the ball (recommended when used with some mutators)" +set g_tka_ballcarrier_damage 1 "damage multiplier while holding the ball" +set g_tka_ballcarrier_force 1 "force multiplier while holding the ball" +set g_tka_ballcarrier_selfdamage 1 "self damage multiplier while holding the ball" +set g_tka_ballcarrier_selfforce 1 "self force multiplier while holding the ball" +set g_tka_noncarrier_warn 1 "warn players when they kill without holding the ball" +set g_tka_noncarrier_damage 1 "damage done to other players if both you and they don't have the ball" +set g_tka_noncarrier_force 1 "force done to other players if both you and they don't have the ball" +set g_tka_noncarrier_selfdamage 1 "self damage if you don't have the ball" +set g_tka_noncarrier_selfforce 1 "self force if you don't have the ball" +set g_tkaball_effects 8 "Add together the numbers you want: EF_ADDITIVE (32) / EF_NODEPTHTEST (8192) / EF_DIMLIGHT (8)" +set g_tkaball_trail_color 254 "particle trail color from player/ball" +set g_tkaball_damageforcescale 2 "Scale of force which is applied to the ball by weapons/explosions/etc" +set g_tkaball_respawntime 10 "if no one picks up the ball, how long to wait until the ball respawns" + +// ========== +// survival +// ========== +set g_survival 0 "Survival: identify and eliminate all the hunters before all your allies are gone" +set g_survival_not_lms_maps 0 "when this is set, LMS maps will NOT be listed in survival" +set g_survival_hunter_count 0.25 "number of players who will become hunters, set between 0 and 0.9 to use a multiplier of the current players, or 1 and above to specify an exact number of players" +set g_survival_punish_teamkill 1 "kill the player when they kill an ally" +set g_survival_reward_survival 1 "give a point to all surviving players if the round timelimit is reached, in addition to the points given for kills" +set g_survival_warmup 10 "how long the players will have time to run around the map before the round starts" +set g_survival_round_timelimit 120 "round time limit in seconds"