Sie sind nicht angemeldet.

tomdespeed

Schüler

  • »tomdespeed« ist der Autor dieses Themas

Beiträge: 56

Wohnort: Neustadt an der Weinstrasse

  • Nachricht senden

1

Freitag, 26. Dezember 2008, 18:01

Team Swapped deaktivieren

Hallo,

Wie kann das Automatische Team Swapped ausschalten.

Das nervige SWITCHEN (Swappen) nervt wenn man bei einem Team bleiben will.

Ich galube das hat was mit dem es Pluggin zu tuhen, aber ich find keine txt wo das geändert werden kann.
Rechtschreibfehler sind gewollt und tragen zur allgemeinen Belustigung bei!

2

Samstag, 27. Dezember 2008, 13:59

Re: Team Swapped deaktivieren

gib mal bitte eine genaue liste aller deiner plugins und scripts... ist sonst ziemlich schwer nachzuvollziehen was genau das problem verursacht...

tomdespeed

Schüler

  • »tomdespeed« ist der Autor dieses Themas

Beiträge: 56

Wohnort: Neustadt an der Weinstrasse

  • Nachricht senden

3

Samstag, 27. Dezember 2008, 14:13

Re: Team Swapped deaktivieren

Oje:

Also meine Plugins siehst du in meiner Signatur unten.

Die Scripts (alles cfg):

Server; mani_server; mani_quake_sounds; es_tools; detox; autoexec; zorrox_bots; zorrox_camera; zorrox_gameplay; zorrox_log; zorrox_netsettings; zorrox_rcon; zorrox_timing; funcommands; sm_warmode_off; sm_warmode_on; sourcemod;

Die Scripts (alles txt):

actionsoundlist; adverts; cexeclist_all; cexeclist_ct; cexeclist_player; cexeclist_spec; cexeclist_t; chattriggers; clients; commandlist; database; decallist; default_weapon_restrict; downloads; gametypes; mapadverts; pingimmunity; quakesoundlist; rconlist; reserveslots; soundlist; swawnpoints; texturelist; votemaplist; votequestionslist; voterconlist; webshortcutlist; wordfilter; es_diagnostig_db

So das wars glaub ich...

In der Console steht noch :


yTB : Swapped [DummerBot] Orin to Terrorists team.
yTB : Swapped [DummerBot] Jon to Counter-Terrorists team.
yTB: Teams are balanced
Rechtschreibfehler sind gewollt und tragen zur allgemeinen Belustigung bei!

4

Dienstag, 30. Dezember 2008, 16:17

Re: Team Swapped deaktivieren

du scheinst das eventscript yTB installiert zu haben, zeig mal die config bitte

tomdespeed

Schüler

  • »tomdespeed« ist der Autor dieses Themas

Beiträge: 56

Wohnort: Neustadt an der Weinstrasse

  • Nachricht senden

5

Mittwoch, 31. Dezember 2008, 15:25

Re: Team Swapped deaktivieren

Hier meine Config:

Habe schon mit dem Teambalancer rumgespielt aber ohne erfolg.

Spoiler Spoiler

// es_ytb.txt
// mrYoung Team Balancer (yTB) by mRyOuNg
/// Most ideas are from Eric Team Balancer (ETB)

// Installation instructions
// : Create a directory ytb in cstrike/addons/eventscripts
// : Put this script in this directory as es_ytb.txt
// : add - es_load corelib - in autoexec.cfg (if not already done)
// : add - es_load ytb - in autoexec.cfg
// : Go to "ytb_conf" block, and set your values

// : Requirements :
// : Mattie EventScripts including CoreLib
// : ES Tools

// --- Configuration
block ytb_conf
{
/// ytb_algorithm - Algorithm to use to compute difference
// 0 means minus computing (player score = kills - deaths) - original ETB algorithm
// 1 means k/d ratio computing (player score = kills / deaths)
es_xsetinfo ytb_algorithm 0

/// ytb_difference - Minimum advantage difference between rounds for a switch to occur. (depends on ytb_algorithm)
// 10 is a good value for minus computing (ytb_algorithm = 0) - original ETB default is 6
// 4 is a good value for k/d ratio computing (ytb_algorithm = 1)
es_xsetinfo ytb_difference 10

/// ytb_rounds - Minimum number of rounds between switchs
// default value: every 2 rounds, a switch can occurs (if required) - original ETB default is 2
es_xsetinfo ytb_rounds 2

/// ytb_lostrounds - Number of losts round in a row, to allow disadvantage of winning team
// A swap can't give advantage to the loosing team (by swapping a very good player - like a real pgm)
// until this number of rounds has been lost by the loosing team
// this feature doesn't exist in original ETB, to disable it, set it to server_var(mp_maxrounds)
es_xsetinfo ytb_lostrounds 3

/// ytb_onlyswapdead - Enable or Disable the "Only Swap Dead Player" feature
// If enabled (1), only swap dead players - original ETB can't swap alive player, so original ETB default is 1
// If disabled (0), swap dead and alive players
es_xsetinfo ytb_onlyswapdead 0

/// ytb_swapbots - enable or disable swapping of bot players
// If enabled (1), bots will be swapped like all other players
// if disabled (0), bots will never be swapped
es_xsetinfo ytb_swapbots 1

/// ytb_recently_swap_protection - Protect recently swapped players during the x next swap action taken
// 0 disable this feature
// x > 0, protect a player during the next x swap action taken
es_xsetinfo ytb_recently_swap_protection 3

/// ytb_nowarmupswap - disable swap during warmup
// 0 disable it
// > 0 enable it (should be equal to your mani_warmuptimer value)
es_xsetinfo ytb_nowarmupswap 90

/// ytb_godmode - enable god mode after swap
// to avoid people killing swapped player, all alive player will be set in god mode (unvulnerable)
// 0 disable, 1 enable (only useful if ytb_onlyswapdead is 0)
es_xsetinfo ytb_godmode 1

/// ytb_swappedreward - give a reward to swapped players
// specify the amount of money to give to swapped player (0 to disable it)
es_xsetinfo ytb_swappedreward 3000
}
// ---

block load
{ /// block load
// called at script loads

// versioning
es_xsetinfo ytb_ver 1.0r2
es_makepublic ytb_ver

// loading configuration
es_xdoblock ytb/ytb_conf

// creating players database
es_xsetinfo ytb_exists 0
es_xexists ytb_exists keygroup ytb_players
if (server_var(ytb_exists) equalto 1) then es_xkeygroupdelete ytb_players
es_xkeygroupcreate ytb_players

// creating players protection database
es_xsetinfo ytb_exists 0
es_xexists ytb_exists keygroup ytb_players_protection
if (server_var(ytb_exists) equalto 1) then es_xkeygroupdelete ytb_players_protection
es_xkeygroupcreate ytb_players_protection

// misc. var. init
es_xsetinfo ytb_current_roundcycle 0
es_xsetinfo ytb_ct_lost 0
es_xsetinfo ytb_t_lost 0
es_xsetinfo ytb_enable_status 1
es_xsetinfo ytb_godmode_enabled 1
}

block unload
{ /// block unload
// called at script unloads

// deleting players database
es_xsetinfo ytb_exists 0
es_xexists ytb_exists keygroup ytb_players
if (server_var(ytb_exists) equalto 1) then es_xkeygroupdelete ytb_players

// deleting players protection database
es_xsetinfo ytb_exists 0
es_xexists ytb_exists keygroup ytb_players_protection
if (server_var(ytb_exists) equalto 1) then es_xkeygroupdelete ytb_players_protection
}

event es_map_start
{ /// event es_map_start
// called when the map starts

// creating players database
es_xsetinfo ytb_exists 0
es_xexists ytb_exists keygroup ytb_players
if (server_var(ytb_exists) equalto 1) then es_xkeygroupdelete ytb_players
es_xkeygroupcreate ytb_players

// creating players protection database
es_xsetinfo ytb_exists 0
es_xexists ytb_exists keygroup ytb_players_protection
if (server_var(ytb_exists) equalto 1) then es_xkeygroupdelete ytb_players_protection
es_xkeygroupcreate ytb_players_protection

// misc. var. init
es_xsetinfo ytb_current_roundcycle 0
es_xsetinfo ytb_ct_lost 0
es_xsetinfo ytb_t_lost 0
es_xsetinfo ytb_enable_status 0
es_xsetinfo ytb_godmode_enabled 1

// nowarmuptimer
es_delayed server_var(ytb_nowarmupswap) es_xdoblock ytb/ytb_enable

}

event player_disconnect
{ /// event player_disconnect
// called when a player disconnects

// deleting user's database entry
es_xsetinfo ytb_exists 0
es_exists ytb_exists key ytb_players event_var(userid)
if (server_var(ytb_exists) equalto 1) then es_keydelete ytb_players event_var(userid)

// deleting user's protection database entry
es_xsetinfo ytb_exists 0
es_exists ytb_exists key ytb_players_protection event_var(userid)
if (server_var(ytb_exists) equalto 1) then es_keydelete ytb_players_protection event_var(userid)
}

event round_start
{ /// event round_start
// called when the round starts

// computing balance
es_xdoblock ytb/ytb_compute_balance

// displaying balance
es_xdoblock ytb/ytb_show_balance

// disabling god mode (if enabled)
if (server_var(ytb_godmode_enabled) equalto 1) do
{

es_xsetinfo ytb_godmode_enabled 0
foreach player ytb_godmode_id #alive "es_xdoblock ytb/ytb_godmode_off"
}
}

event round_end
{ /// event round_end
// called when round ends

// computing balance
es_xdoblock ytb/ytb_compute_balance

// compute lost rounds
if (event_var(winner) == "2") do
{ // t wins
es_math ytb_ct_lost + 1
es_xsetinfo ytb_t_lost 0
}
else do
{
if (event_var(winner) == "3") do
{ // ct wins
es_math ytb_t_lost + 1
es_xsetinfo ytb_ct_lost 0
}
}

// checking difference, and calling swap function if necessary
es_math ytb_current_roundcycle + 1
if (server_var(ytb_current_roundcycle) equalto server_var(ytb_rounds)) do
{
if (server_var(ytb_current_difference) greaterthan server_var(ytb_difference)) do
{
if (server_var(ytb_enable_status) equalto 1) do
{
es_xdoblock ytb/ytb_swap
}
}
es_xsetinfo ytb_current_roundcycle 0
}
}

block ytb_compute_balance
{ /// block ytb_compute_balance
// compute balance_status, and current_difference

// computing ct score
es_xsetinfo ytb_ct_score 0
es_xmath ytb_ct_score float
es_xsetinfo ytb_current_player_id 0
foreach player ytb_current_player_id #ct "es_xdoblock ytb/ytb_compute_ct_score"

// computing t score
es_xsetinfo ytb_t_score 0
es_xmath ytb_t_score float
es_xsetinfo ytb_current_player_id 0
foreach player ytb_current_player_id #t "es_xdoblock ytb/ytb_compute_t_score"

// computing balance_status, and current_difference
es_xsetinfo ytb_balance_status 0
es_xsetinfo ytb_current_difference 0
es_xmath ytb_current_difference float
if (server_var(ytb_ct_score) equalto server_var(ytb_t_score)) do
{
es_xsetinfo ytb_balance_status 0
es_xsetinfo ytb_current_difference 0
}
else do
{
if (server_var(ytb_ct_score) greaterthan server_var(ytb_t_score)) do
{
es_xsetinfo ytb_balance_status 1
es_math ytb_current_difference + server_var(ytb_ct_score)
es_math ytb_current_difference - server_var(ytb_t_score)
}
else do
{
es_xsetinfo ytb_balance_status 2
es_math ytb_current_difference + server_var(ytb_t_score)
es_math ytb_current_difference - server_var(ytb_ct_score)
}
}
}

block ytb_compute_ct_score
{ /// block ytb_compute_ct_score
// called to compute ct score

// getting current player score
es_xsetinfo ytb_current_player_kills 0
es_xsetinfo ytb_current_player_deaths 0
es est_GetKills ytb_current_player_kills server_var(ytb_current_player_id)
es est_GetDeaths ytb_current_player_deaths server_var(ytb_current_player_id)
es_xsetinfo ytb_current_player_score 0
if (server_var(ytb_algorithm) equalto 0) do
{ // minus algorithm
es_math ytb_current_player_score + server_var(ytb_current_player_kills)
es_math ytb_current_player_score - server_var(ytb_current_player_deaths)
}
else do
{
if (server_var(ytb_algorithm) equalto 1) do
{ // k/d ratio algorithm
if (server_var(ytb_current_player_kills) < 1) then es_xsetinfo ytb_current_player_kills 0
if (server_var(ytb_current_player_deaths) < 1) then es_xsetinfo ytb_current_player_deaths 1
es_mathparse ytb_current_player_score "ytb_current_player_kills / ytb_current_player_deaths"
}
}

// getting current player alive status
es_xsetinfo ytb_alive 0
es est_IsAlive ytb_alive server_var(ytb_current_player_id)

// storing current player kills/deaths into database
es_xsetinfo ytb_exists 0
es_exists ytb_exists key ytb_players server_var(ytb_current_player_id)
if (server_var(ytb_exists) equalto 0) then es_keycreate ytb_players server_var(ytb_current_player_id)
es_keysetvalue ytb_players server_var(ytb_current_player_id) current_score server_var(ytb_current_player_score)
es_keysetvalue ytb_players server_var(ytb_current_player_id) alive_status server_var(ytb_alive)

// adding player score to team score
es_math ytb_ct_score + server_var(ytb_current_player_score)
}

block ytb_compute_t_score
{ /// block ytb_compute_t_score
// called to compute t score

// getting current player score
es_xsetinfo ytb_current_player_kills 0
es_xsetinfo ytb_current_player_deaths 0
es est_GetKills ytb_current_player_kills server_var(ytb_current_player_id)
es est_GetDeaths ytb_current_player_deaths server_var(ytb_current_player_id)
es_xsetinfo ytb_current_player_score 0
if (server_var(ytb_algorithm) equalto 0) do
{ // minus algorithm
es_math ytb_current_player_score + server_var(ytb_current_player_kills)
es_math ytb_current_player_score - server_var(ytb_current_player_deaths)
}
else do
{
if (server_var(ytb_algorithm) equalto 1) do
{ // k/d ratio algorithm
if (server_var(ytb_current_player_kills) < 1) then es_xsetinfo ytb_current_player_kills 0
if (server_var(ytb_current_player_deaths) < 1) then es_xsetinfo ytb_current_player_deaths 1
es_mathparse ytb_current_player_score "ytb_current_player_kills / ytb_current_player_deaths"
}
}

// getting current player alive status
es_xsetinfo ytb_alive 0
es est_IsAlive ytb_alive server_var(ytb_current_player_id)

// storing current player kills/deaths into database
es_xsetinfo ytb_exists 0
es_exists ytb_exists key ytb_players server_var(ytb_current_player_id)
if (server_var(ytb_exists) equalto 0) then es_keycreate ytb_players server_var(ytb_current_player_id)
es_keysetvalue ytb_players server_var(ytb_current_player_id) current_score server_var(ytb_current_player_score)
es_keysetvalue ytb_players server_var(ytb_current_player_id) alive_status server_var(ytb_alive)

// adding player score to team score
es_math ytb_t_score + server_var(ytb_current_player_score)
}

block ytb_show_balance
{ /// block ytb_show_balance
// called to display balance status

if (server_var(ytb_balance_status) equalto 0) do
{
es_xmsg #multi #greenyTB: #defaultTeams are balanced.
}
else do
{
if (server_var(ytb_balance_status) equalto 1) do
{
es_xmsg #multi #greenyTB: #lightgreenCounter-Terrorists #defaulthave the advantage.
}
else do
{
es_xmsg #multi #greenyTB: #lightgreenTerrorists #defaulthave the advantage.
}
}
}

block ytb_swap
{ /// ytb_swap
// called when difference between teams reach the thresold

// misc. var. init
es_xsetinfo ytb_swap_status 0
es_xsetinfo ytb_swap_odd 0
es_xsetinfo ytb_swapped_ct_player 0
es_xsetinfo ytb_swapped_t_player 0
es_setinfo ytb_swap_difference server_var(ytb_current_difference)

// reseting swap_protection value
es_xsetinfo ytb_current_id 0
foreach player ytb_current_id #all "es_xdoblock ytb/ytb_swap_protection_reset"

// getting number of players from each team (useful with odd number of players)
es_xsetinfo ytb_ct_number 0
es_xgetplayercount ytb_ct_number 3
es_xsetinfo ytb_t_number 0
es_xgetplayercount ytb_t_number 2

if (server_var(ytb_ct_number) equalto server_var(ytb_t_number)) do
{ // teams have an even number of players, swapping 2 players

es_xsetinfo ytb_swap_odd 0
if (server_var(ytb_balance_status) equalto 1) do
{ // CT have the advantage

es_xsetinfo ytb_current_ct_id 0
foreach player ytb_current_ct_id #ct "es_xdoblock ytb/ytb_swap_search_ct"
}
else do
{ // T have the advantage

es_xsetinfo ytb_current_t_id 0
foreach player ytb_current_t_id #t "es_xdoblock ytb/ytb_swap_search_t"
}
}
else do
{ // teams are odd

if (server_var(ytb_ct_number) greaterthan server_var(ytb_t_number)) do
{ // CT have more players than T

if (server_var(ytb_balance_status) equalto 1) do
{ // CT have the advantage, we must try to swap a CT player to T team

es_xsetinfo ytb_swap_odd 1
es_xsetinfo ytb_current_ct_id 0
foreach player ytb_current_ct_id #ct "es_xdoblock ytb/ytb_swap_search_ct_only"
}
else do
{ // T have the advantage, swapping 2 players (we consider this as odd teams)

es_xsetinfo ytb_swap_odd 0
es_xsetinfo ytb_current_t_id 0
foreach player ytb_current_t_id #t "es_xdoblock ytb/ytb_swap_search_t"
}
}
else do
{ // T have more players than CT

if (server_var(ytb_balance_status) equalto 2) do
{ // T have the advantage, we must try to swap a T player to CT team

es_xsetinfo ytb_swap_odd 2
es_xsetinfo ytb_current_t_id 0
foreach player ytb_current_t_id #t "es_xdoblock ytb/ytb_swap_search_t_only"
}
else do
{ // CT have the advantage, swapping 2 players (we consider this as odd teams)

es_xsetinfo ytb_swap_odd 0
es_xsetinfo ytb_current_ct_id 0
foreach player ytb_current_ct_id #ct "es_xdoblock ytb/ytb_swap_search_ct"
}
}
}

if (server_var(ytb_swap_status) equalto 1) do
{ // ok, we found a way to swap ...

if (server_var(ytb_swap_odd) equalto 0) do
{ // Teams are even, 2 players swapped

// Swapping players
es est_Team server_var(ytb_swapped_ct_player) 2
es est_Team server_var(ytb_swapped_t_player) 3
es est_CashAdd server_var(ytb_swapped_ct_player) server_var(ytb_swappedreward)
es est_CashAdd server_var(ytb_swapped_t_player) server_var(ytb_swappedreward)

es_tell server_var(ytb_swapped_ct_player) #multi #greenyTB: #defaultYou have been swapped to #lightgreenTerrorists #defaultteam.
es_tell server_var(ytb_swapped_ct_player) #multi #greenyTB: #defaultYou have been rewarded of#lightgreen server_var(ytb_swappedreward) $#default for being swapped.
es_xsetinfo ytb_swapped_ct_player_name 0 // getting player name
es_getplayername ytb_swapped_ct_player_name server_var(ytb_swapped_ct_player)
es_msg #multi #greenyTB: #defaultSwapped#lightgreen server_var(ytb_swapped_ct_player_name) #defaultto #lightgreenTerrorists #defaultteam.

es_tell server_var(ytb_swapped_t_player) #multi #greenyTB: #defaultYou have been swapped to #lightgreenCounter-Terrorists #defaultteam.
es_tell server_var(ytb_swapped_t_player) #multi #greenyTB: #defaultYou have been rewarded of#lightgreen server_var(ytb_swappedreward) $#default for being swapped.
es_xsetinfo ytb_swapped_t_player_name 0 // getting player name
es_getplayername ytb_swapped_t_player_name server_var(ytb_swapped_t_player)
es_msg #multi #greenyTB: #defaultSwapped#lightgreen server_var(ytb_swapped_t_player_name) #defaultto #lightgreenCounter-Terrorists #defaultteam.

// Managing player protection
es_keycreate ytb_players_protection server_var(ytb_swapped_ct_player)
es_keysetvalue ytb_players_protection server_var(ytb_swapped_ct_player) swap_protection_left server_var(ytb_recently_swap_protection)
es_keycreate ytb_players_protection server_var(ytb_swapped_t_player)
es_keysetvalue ytb_players_protection server_var(ytb_swapped_t_player) swap_protection_left server_var(ytb_recently_swap_protection)
}
else do
{ // Teams are odd

if (server_var(ytb_swap_odd) equalto 1) do
{ // a CT player should be swapped

es est_Team server_var(ytb_swapped_ct_player) 2 // Swapping player
es est_CashAdd server_var(ytb_swapped_ct_player) server_var(ytb_swappedreward)

es_tell server_var(ytb_swapped_ct_player) #multi #greenyTB: #defaultYou have been swapped to #lightgreenTerrorists #defaultteam.
es_tell server_var(ytb_swapped_ct_player) #multi #greenyTB: #defaultYou have been rewarded of#lightgreen server_var(ytb_swappedreward) $#default for being swapped.
es_xsetinfo ytb_swapped_ct_player_name 0 // getting player name
es_getplayername ytb_swapped_ct_player_name server_var(ytb_swapped_ct_player)
es_msg #multi #greenyTB: #defaultSwapped#lightgreen server_var(ytb_swapped_ct_player_name) #defaultto #lightgreenTerrorists #defaultteam.

// Managing player protection
es_keycreate ytb_players_protection server_var(ytb_swapped_ct_player)
es_keysetvalue ytb_players_protection server_var(ytb_swapped_ct_player) swap_protection_left server_var(ytb_recently_swap_protection)
}
else do
{ // a T player should be swapped

es est_Team server_var(ytb_swapped_t_player) 3 // Swapping player
es est_CashAdd server_var(ytb_swapped_t_player) server_var(ytb_swappedreward)

es_tell server_var(ytb_swapped_t_player) #multi #greenyTB: #defaultYou have been swapped to #lightgreenCounter-Terrorists #defaultteam.
es_tell server_var(ytb_swapped_t_player) #multi #greenyTB: #defaultYou have been rewarded of#lightgreen server_var(ytb_swappedreward) $#default for being swapped.
es_xsetinfo ytb_swapped_t_player_name 0 // getting player name
es_getplayername ytb_swapped_t_player_name server_var(ytb_swapped_t_player)
es_msg #multi #greenyTB: #defaultSwapped#lightgreen server_var(ytb_swapped_t_player_name) #defaultto #lightgreenCounter-Terrorists #defaultteam.

// Managing player protection
es_keycreate ytb_players_protection server_var(ytb_swapped_t_player)
es_keysetvalue ytb_players_protection server_var(ytb_swapped_t_player) swap_protection_left server_var(ytb_recently_swap_protection)
}
}

// god mode
if (server_var(ytb_godmode) equalto 1) do
{
es_xsetinfo ytb_godmode_enabled 1
foreach player ytb_godmode_id #alive "es_xdoblock ytb/ytb_godmode_on"
}
}
else do
{ // Unable to find a fair swap
es_xmsg #multi #greenyTB: #defaultUnable to balance teams.
}

es_xsetinfo ytb_swap_status 0
es_xsetinfo ytb_swap_odd 0
es_xsetinfo ytb_swapped_ct_player 0
es_xsetinfo ytb_swapped_t_player 0
es_xsetinfo ytb_swap_difference 0
}

block ytb_swap_search_ct
{ /// ytb_swap_search_ct
// Called when teams are even, and CT have the advantage

es_xsetinfo ytb_current_ct_mustbechecked 0
if (server_var(ytb_onlyswapdead) equalto 1) do
{ // if "onlyswapdead" feature is enabled

es_xsetinfo ytb_alive 0
es_keygetvalue ytb_alive ytb_players server_var(ytb_current_ct_id) alive_status

if (server_var(ytb_alive) equalto 0) do
{ // player is dead

es_xsetinfo ytb_current_ct_mustbechecked 1
}
else do
{ // player is alive

es_xsetinfo ytb_current_ct_mustbechecked 0
}
}
else do
{ // "onlyswapdead" feature is disabled

es_xsetinfo ytb_current_ct_mustbechecked 1
}

es_xsetinfo ytb_exists 0
es_exists ytb_exists key ytb_players_protection server_var(ytb_current_ct_id)
if (server_var(ytb_exists) equalto 1) do
{ // player is in protection database

es_xsetinfo ytb_current_ct_mustbechecked 0
}

if (server_var(ytb_swapbots) equalto 0) do
{ // don't swap bots feature

es_xsetinfo ytb_isbot 0
es_isbot ytb_isbot server_var(ytb_current_ct_id)

if (server_var(ytb_isbot) equalto 1) do
{ // current player is a bot

es_xsetinfo ytb_current_ct_mustbechecked 0
}
}

if (server_var(ytb_current_ct_mustbechecked) equalto 1) do
{ // if we can check the current player

// getting current ct score
es_xsetinfo ytb_current_ct_score 0
es_keygetvalue ytb_current_ct_score ytb_players server_var(ytb_current_ct_id) current_score

// computing new score for t and ct team
es_setinfo ytb_tmp_ct_ct_score server_var(ytb_ct_score)
es_setinfo ytb_tmp_ct_t_score server_var(ytb_t_score)
es_math ytb_tmp_ct_ct_score - server_var(ytb_current_ct_score)
es_math ytb_tmp_ct_t_score + server_var(ytb_current_ct_score)

// With this new scores, let's find a t player giving us a fair swap
es_xsetinfo ytb_current_t_id 0
foreach player ytb_current_t_id #t "es_xdoblock ytb/ytb_swap_search_ct_t"
}
}

block ytb_swap_search_ct_t
{ /// ytb_swap_search_ct_t
// Called by ytb_swap_search_ct to find a fair swap with the current ct player

es_xsetinfo ytb_current_t_mustbechecked 0
if (server_var(ytb_onlyswapdead) equalto 1) do
{ // if "onlyswapdead" feature is enabled

es_xsetinfo ytb_alive 0
es_keygetvalue ytb_alive ytb_players server_var(ytb_current_t_id) alive_status

if (server_var(ytb_alive) equalto 0) do
{ // player is dead

es_xsetinfo ytb_current_t_mustbechecked 1
}
else do
{ // player is alive

es_xsetinfo ytb_current_t_mustbechecked 0
}
}
else do
{ // "onlyswapdead" feature is disabled

es_xsetinfo ytb_current_t_mustbechecked 1
}

es_xsetinfo ytb_exists 0
es_exists ytb_exists key ytb_players_protection server_var(ytb_current_t_id)
if (server_var(ytb_exists) equalto 1) do
{ // player is in protection database

es_xsetinfo ytb_current_t_mustbechecked 0
}

if (server_var(ytb_swapbots) equalto 0) do
{ // don't swap bots feature

es_xsetinfo ytb_isbot 0
es_isbot ytb_isbot server_var(ytb_current_t_id)

if (server_var(ytb_isbot) equalto 1) do
{ // current player is a bot

es_xsetinfo ytb_current_t_mustbechecked 0
}
}

if (server_var(ytb_current_t_mustbechecked) equalto 1) do
{ // if we can check the current player

// getting current t score
es_xsetinfo ytb_current_t_score 0
es_keygetvalue ytb_current_t_score ytb_players server_var(ytb_current_t_id) current_score

// computing new score for ct and t team
es_setinfo ytb_tmp_ct_t_ct_score server_var(ytb_tmp_ct_ct_score)
es_setinfo ytb_tmp_ct_t_t_score server_var(ytb_tmp_ct_t_score)
es_math ytb_tmp_ct_t_t_score - server_var(ytb_current_t_score)
es_math ytb_tmp_ct_t_ct_score + server_var(ytb_current_t_score)

es_setinfo ytb_tmp_difference server_var(ytb_swap_difference)
if (server_var(ytb_tmp_ct_t_ct_score) lessthan server_var(ytb_tmp_ct_t_t_score)) do
{ // if this swap give advantage to T team

if (server_var(ytb_t_lost) >= server_var(ytb_lostrounds)) do
{ // if T lost x rounds in a row, we allow disadvantage of the winning team

// computing new difference
es_xsetinfo ytb_tmp_difference 0
es_math ytb_tmp_difference + server_var(ytb_tmp_ct_t_t_score)
es_math ytb_tmp_difference - server_var(ytb_tmp_ct_t_ct_score)
}
}
else do
{
// computing new difference
es_xsetinfo ytb_tmp_difference 0
es_math ytb_tmp_difference + server_var(ytb_tmp_ct_t_ct_score)
es_math ytb_tmp_difference - server_var(ytb_tmp_ct_t_t_score)
}

if (server_var(ytb_tmp_difference) lessthan server_var(ytb_swap_difference)) do
{ // if the new difference, is less than the current difference

// it's a valid swap ... (maybe not the best, but at least it exists)
es_setinfo ytb_swap_difference server_var(ytb_tmp_difference)
es_setinfo ytb_swapped_ct_player server_var(ytb_current_ct_id)
es_setinfo ytb_swapped_t_player server_var(ytb_current_t_id)
es_xsetinfo ytb_swap_status 1
}

es_xsetinfo ytb_tmp_difference 0
}
}

block ytb_swap_search_t
{ /// ytb_swap_search_t
// Called when teams are even, and T have the advantage

es_xsetinfo ytb_current_t_mustbechecked 0
if (server_var(ytb_onlyswapdead) equalto 1) do
{ // if "onlyswapdead" feature is enabled

es_xsetinfo ytb_alive 0
es_keygetvalue ytb_alive ytb_players server_var(ytb_current_t_id) alive_status

if (server_var(ytb_alive) equalto 0) do
{ // player is dead

es_xsetinfo ytb_current_t_mustbechecked 1
}
else do
{ // player is alive

es_xsetinfo ytb_current_t_mustbechecked 0
}
}
else do
{ // "onlyswapdead" feature is disabled

es_xsetinfo ytb_current_t_mustbechecked 1
}

es_xsetinfo ytb_exists 0
es_exists ytb_exists key ytb_players_protection server_var(ytb_current_t_id)
if (server_var(ytb_exists) equalto 1) do
{ // player is in protection database

es_xsetinfo ytb_current_t_mustbechecked 0
}

if (server_var(ytb_swapbots) equalto 0) do
{ // don't swap bots feature

es_xsetinfo ytb_isbot 0
es_isbot ytb_isbot server_var(ytb_current_t_id)

if (server_var(ytb_isbot) equalto 1) do
{ // current player is a bot

es_xsetinfo ytb_current_t_mustbechecked 0
}
}

if (server_var(ytb_current_t_mustbechecked) equalto 1) do
{ // if we can check the current player

// getting current t score
es_xsetinfo ytb_current_t_score 0
es_keygetvalue ytb_current_t_score ytb_players server_var(ytb_current_t_id) current_score

// computing new score for ct and t team
es_setinfo ytb_tmp_t_ct_score server_var(ytb_ct_score)
es_setinfo ytb_tmp_t_t_score server_var(ytb_t_score)
es_math ytb_tmp_t_t_score - server_var(ytb_current_t_score)
es_math ytb_tmp_t_ct_score + server_var(ytb_current_t_score)

// With this new scores, let's find a ct player giving us a fair swap
es_xsetinfo ytb_current_ct_id 0
foreach player ytb_current_ct_id #ct "es_xdoblock ytb/ytb_swap_search_t_ct"
}
}

block ytb_swap_search_t_ct
{/// ytb_swap_search_t_ct
// Called by ytb_swap_search_t to find a fair swap with the current t player

es_xsetinfo ytb_current_ct_mustbechecked 0
if (server_var(ytb_onlyswapdead) equalto 1) do
{ // if "onlyswapdead" feature is enabled

es_xsetinfo ytb_alive 0
es_keygetvalue ytb_alive ytb_players server_var(ytb_current_ct_id) alive_status

if (server_var(ytb_alive) equalto 0) do
{ // player is dead

es_xsetinfo ytb_current_ct_mustbechecked 1
}
else do
{ // player is alive

es_xsetinfo ytb_current_ct_mustbechecked 0
}
}
else do
{ // "onlyswapdead" feature is disabled

es_xsetinfo ytb_current_ct_mustbechecked 1
}

es_xsetinfo ytb_exists 0
es_exists ytb_exists key ytb_players_protection server_var(ytb_current_ct_id)
if (server_var(ytb_exists) equalto 1) do
{ // player is in protection database

es_xsetinfo ytb_current_ct_mustbechecked 0
}

if (server_var(ytb_swapbots) equalto 0) do
{ // don't swap bots feature

es_xsetinfo ytb_isbot 0
es_isbot ytb_isbot server_var(ytb_current_ct_id)

if (server_var(ytb_isbot) equalto 1) do
{ // current player is a bot

es_xsetinfo ytb_current_ct_mustbechecked 0
}
}

if (server_var(ytb_current_ct_mustbechecked) equalto 1) do
{ // if we can check the current player

// getting current ct score
es_xsetinfo ytb_current_ct_score 0
es_keygetvalue ytb_current_ct_score ytb_players server_var(ytb_current_ct_id) current_score

// computing new score for t and ct team
es_setinfo ytb_tmp_t_ct_ct_score server_var(ytb_tmp_t_ct_score)
es_setinfo ytb_tmp_t_ct_t_score server_var(ytb_tmp_t_t_score)
es_math ytb_tmp_t_ct_ct_score - server_var(ytb_current_ct_score)
es_math ytb_tmp_t_ct_t_score + server_var(ytb_current_ct_score)

es_setinfo ytb_tmp_difference server_var(ytb_swap_difference)
if (server_var(ytb_tmp_t_ct_t_score) lessthan server_var(ytb_tmp_t_ct_ct_score)) do
{ // if this swap give advantage to CT team

if (server_var(ytb_ct_lost) >= server_var(ytb_lostrounds)) do
{ // if CT lost x rounds in a row, we allow disadvantage of the winning team

// computing new difference
es_xsetinfo ytb_tmp_difference 0
es_math ytb_tmp_difference + server_var(ytb_tmp_t_ct_ct_score)
es_math ytb_tmp_difference - server_var(ytb_tmp_t_ct_t_score)
}
}
else do
{
// computing new difference
es_xsetinfo ytb_tmp_difference 0
es_math ytb_tmp_difference + server_var(ytb_tmp_t_ct_t_score)
es_math ytb_tmp_difference - server_var(ytb_tmp_t_ct_ct_score)
}

if (server_var(ytb_tmp_difference) lessthan server_var(ytb_swap_difference)) do
{ // if the new difference, is less than the current difference

// it's a valid swap ... (maybe not the best, but at least it exists)
es_setinfo ytb_swap_difference server_var(ytb_tmp_difference)
es_setinfo ytb_swapped_ct_player server_var(ytb_current_ct_id)
es_setinfo ytb_swapped_t_player server_var(ytb_current_t_id)
es_xsetinfo ytb_swap_status 1
}

es_xsetinfo ytb_tmp_difference 0
}
}

block ytb_swap_search_ct_only
{ /// ytb_swap_search_ct_only
// Called when teams are odd, and CT have the advantage

es_xsetinfo ytb_current_ct_mustbechecked 0
if (server_var(ytb_onlyswapdead) equalto 1) do
{ // if "onlyswapdead" feature is enabled

es_xsetinfo ytb_alive 0
es_keygetvalue ytb_alive ytb_players server_var(ytb_current_ct_id) alive_status

if (server_var(ytb_alive) equalto 0) do
{ // player is dead

es_xsetinfo ytb_current_ct_mustbechecked 1
}
else do
{ // player is alive

es_xsetinfo ytb_current_ct_mustbechecked 0
}
}
else do
{ // "onlyswapdead" feature is disabled

es_xsetinfo ytb_current_ct_mustbechecked 1
}

es_xsetinfo ytb_exists 0
es_exists ytb_exists key ytb_players_protection server_var(ytb_current_ct_id)
if (server_var(ytb_exists) equalto 1) do
{ // player is in protection database

es_xsetinfo ytb_current_ct_mustbechecked 0
}

if (server_var(ytb_swapbots) equalto 0) do
{ // don't swap bots feature

es_xsetinfo ytb_isbot 0
es_isbot ytb_isbot server_var(ytb_current_ct_id)

if (server_var(ytb_isbot) equalto 1) do
{ // current player is a bot

es_xsetinfo ytb_current_ct_mustbechecked 0
}
}

if (server_var(ytb_current_ct_mustbechecked) equalto 1) do
{ // if we can check the current player

// getting current ct score
es_xsetinfo ytb_current_ct_score 0
es_keygetvalue ytb_current_ct_score ytb_players server_var(ytb_current_ct_id) current_score

// computing new score for t and ct team
es_setinfo ytb_tmp_ct_score server_var(ytb_ct_score)
es_setinfo ytb_tmp_t_score server_var(ytb_t_score)
es_math ytb_tmp_ct_score - server_var(ytb_current_ct_score)
es_math ytb_tmp_t_score + server_var(ytb_current_ct_score)

es_setinfo ytb_tmp_difference server_var(ytb_swap_difference)
if (server_var(ytb_tmp_ct_score) lessthan server_var(ytb_tmp_t_score)) do
{ // if this swap give advantage to T team

if (server_var(ytb_t_lost) >= server_var(ytb_lostrounds)) do
{ // if T lost x rounds in a row, we allow disadvantage of the winning team

// computing new difference
es_xsetinfo ytb_tmp_difference 0
es_math ytb_tmp_difference + server_var(ytb_tmp_t_score)
es_math ytb_tmp_difference - server_var(ytb_tmp_ct_score)
}
}
else do
{

es_xsetinfo ytb_tmp_difference 0
es_math ytb_tmp_difference + server_var(ytb_tmp_ct_score)
es_math ytb_tmp_difference - server_var(ytb_tmp_t_score)
}

if (server_var(ytb_tmp_difference) lessthan server_var(ytb_swap_difference)) do
{ // if the new difference, is less than the current difference

// it's a valid swap ... (maybe not the best, but at least it exists)
es_setinfo ytb_swap_difference server_var(ytb_tmp_difference)
es_setinfo ytb_swapped_ct_player server_var(ytb_current_ct_id)
es_xsetinfo ytb_swap_status 1
}

es_xsetinfo ytb_tmp_difference 0
}
}

block ytb_swap_search_t_only
{ /// ytb_swap_search_t_only
// Called when teams are odd, and T have the advantage

es_xsetinfo ytb_current_t_mustbechecked 0
if (server_var(ytb_onlyswapdead) equalto 1) do
{ // if "onlyswapdead" feature is enabled

es_xsetinfo ytb_alive 0
es_keygetvalue ytb_alive ytb_players server_var(ytb_current_t_id) alive_status

if (server_var(ytb_alive) equalto 0) do
{ // player is dead

es_xsetinfo ytb_current_t_mustbechecked 1
}
else do
{ // player is alive

es_xsetinfo ytb_current_t_mustbechecked 0
}
}
else do
{ // "onlyswapdead" feature is disabled

es_xsetinfo ytb_current_t_mustbechecked 1
}

es_xsetinfo ytb_exists 0
es_exists ytb_exists key ytb_players_protection server_var(ytb_current_t_id)
if (server_var(ytb_exists) equalto 1) do
{ // player is in protection database

es_xsetinfo ytb_current_t_mustbechecked 0
}

if (server_var(ytb_swapbots) equalto 0) do
{ // don't swap bots feature

es_xsetinfo ytb_isbot 0
es_isbot ytb_isbot server_var(ytb_current_t_id)

if (server_var(ytb_isbot) equalto 1) do
{ // current player is a bot

es_xsetinfo ytb_current_t_mustbechecked 0
}
}

if (server_var(ytb_current_t_mustbechecked) equalto 1) do
{ // if we can check the current player

// getting current t score
es_xsetinfo ytb_current_t_score 0
es_keygetvalue ytb_current_t_score ytb_players server_var(ytb_current_t_id) current_score

// computing new score for t and ct team
es_setinfo ytb_tmp_ct_score server_var(ytb_ct_score)
es_setinfo ytb_tmp_t_score server_var(ytb_t_score)
es_math ytb_tmp_t_score - server_var(ytb_current_t_score)
es_math ytb_tmp_ct_score + server_var(ytb_current_t_score)

es_setinfo ytb_tmp_difference server_var(ytb_swap_difference)
if (server_var(ytb_tmp_t_score) lessthan server_var(ytb_tmp_ct_score)) do
{ // if this swap give advantage to CT team

if (server_var(ytb_ct_lost) >= server_var(ytb_lostrounds)) do
{ // if T lost x rounds in a row, we allow disadvantage of the winning team

// computing new difference
es_xsetinfo ytb_tmp_difference 0
es_math ytb_tmp_difference + server_var(ytb_tmp_ct_score)
es_math ytb_tmp_difference - server_var(ytb_tmp_t_score)
}
}
else do
{

es_xsetinfo ytb_tmp_difference 0
es_math ytb_tmp_difference + server_var(ytb_tmp_t_score)
es_math ytb_tmp_difference - server_var(ytb_tmp_ct_score)
}

if (server_var(ytb_tmp_difference) lessthan server_var(ytb_swap_difference)) do
{ // if the new difference, is less than the current difference

// it's a valid swap ... (maybe not the best, but at least it exists)
es_setinfo ytb_swap_difference server_var(ytb_tmp_difference)
es_setinfo ytb_swapped_t_player server_var(ytb_current_t_id)
es_xsetinfo ytb_swap_status 1
}

es_xsetinfo ytb_tmp_difference 0
}
}

block ytb_swap_protection_reset
{ /// ytb_swap_protection_reset
// triggered to reset ytb_players_protection keygroup

es_xsetinfo ytb_exists 0
es_exists ytb_exists key ytb_players_protection server_var(ytb_current_id)
if (server_var(ytb_exists) equalto 1) do
{ // player is in protection database

es_xsetinfo ytb_current_id_swap_protection 0
es_keygetvalue ytb_current_id_swap_protection ytb_players_protection server_var(ytb_current_id) swap_protection_left

if (server_var(ytb_current_id_swap_protection) greaterthan 0) do
{ // if player is still protected

es_math ytb_current_id_swap_protection - 1
es_keysetvalue ytb_players_protection server_var(ytb_current_id) swap_protection_left server_var(ytb_current_id_swap_protection)
}
else do
{ // player is not protected anymore

es_keydelete ytb_players_protection server_var(ytb_current_id)
}
}
}

block ytb_enable
{ /// ytb_enable
// triggered to enable yTB after a warmup time

es_xsetinfo ytb_current_roundcycle 0
es_xsetinfo ytb_ct_lost 0
es_xsetinfo ytb_t_lost 0
es_xsetinfo ytb_enable_status 1
es_xsetinfo ytb_godmode_enabled 1
}

block ytb_godmode_on
{ /// ytb_godmode_on
// triggered to enable god mode

es est_God server_var(ytb_godmode_id) 1
}

block ytb_godmode_off
{ /// ytb_godmode_off
// triggered to disable god mode

es est_God server_var(ytb_godmode_id) 0
}

// ---
Rechtschreibfehler sind gewollt und tragen zur allgemeinen Belustigung bei!

6

Mittwoch, 31. Dezember 2008, 15:58

Re: Team Swapped deaktivieren

also das einzige was du machen könntest, was ich jetzt zumindest so sehe, ist ytb abschalten... immerhin is ein team balancer dazu da die spieler zwischen den teams so hin und her zu schieben dass die teams möglichst fair sind. wenn man da in einem team bleiben will hat man denke ich schlechte karten... zumal ytb keine option zu haben scheint die admins immun macht oder so...

tomdespeed

Schüler

  • »tomdespeed« ist der Autor dieses Themas

Beiträge: 56

Wohnort: Neustadt an der Weinstrasse

  • Nachricht senden

7

Mittwoch, 31. Dezember 2008, 16:49

Re: Team Swapped deaktivieren

Ok, wie kann ich diesen mod stilllegen?

Braucht man sowieso nicht.
Rechtschreibfehler sind gewollt und tragen zur allgemeinen Belustigung bei!

8

Samstag, 3. Januar 2009, 14:41

Re: Team Swapped deaktivieren

müsstest in deiner autoexec.cfg oder der server.cfg einen eintrag es_load es_ytb (oder so ähnlich) haben. den musst du löschen

tomdespeed

Schüler

  • »tomdespeed« ist der Autor dieses Themas

Beiträge: 56

Wohnort: Neustadt an der Weinstrasse

  • Nachricht senden

9

Sonntag, 4. Januar 2009, 02:59

Re: Team Swapped deaktivieren

Danke werden es heute noch ausprobieren.
Rechtschreibfehler sind gewollt und tragen zur allgemeinen Belustigung bei!