## ETpub Dokumentation (0.6.3)

- Die Cvars
- Server Konsolen Befehle
- Shrubbot
- Allgemeine Änderungen

### Die Cvars

Die verschiedenen Cvars müssen in die Server Konfiguration mit einem führenden set (bzw. setl) eingetragen werden. Für diejenigen unter euch, die auch noch etpro laufen lassen wollen empfiehlt es sich eine extra Konfiguration zu erstellen, die ihr über eure Startparameter aufruft.

Neu in Version 0.6

  Die folgenden Cvars sind hinzugekommen oder wurden verändert:

  g_ATB | g_ATB_diff | g_ATB_rating | g_XPDecay
  g_XPDecayFloor | g_XPDecayRate | g_XPSaveFile | g_XPSaveMaxAge
  g_XPSaveMaxAge_xp | g_alliedSpawnInvul | g_asblock | g_axisSpawnInvul
  g_canisterKick | g_constructibleXPSharing | g_coverts | g_dmg
  g_damageXP | g_damageXPLevel | g_dmgAir | g_dmgAirRadius
  g_dmgArty | g_dmgArtyRadius | g_dmgDynamite | g_dmgDynamiteRadius
  g_dmgFG42 | g_dmgFG42Scope | g_dmgFlamer | g_dmgGLauncher
  g_dmgGLauncherRadius | g_dmgGrenade | g_dmgGrenadeRadius | g_dmgHeadShotMin
  g_dmgHeadShotRatio | g_dmgInfRifle | g_dmgKnife | g_dmgLandmine
  g_dmgLandmineRadius | g_dmgMG | g_dmgMG42 | g_dmgMortar
  g_dmgMortarRadius | g_dmgPanzer | g_dmgPanzerRadius | g_dmgPistol
  g_dmgSMG | g_dmgSatchel | g_dmgSatchelRadius | g_dmgSniper
  g_dmgSten | g_dyno | g_friendlyFireOpts | g_killRating
  g_killingSpree | g_killingSpreeMsg_X | g_killingSpreeMsg_default | g_killingSpreeMsg_end
  g_killingSpreeMsg_futility | g_killingSpreeMsg_tk | g_killingSpreePos | g_knifeDamage
  g_maxKnives | g_maxXP | g_medicHealthRegen | g_medics
  g_minAirstrikeTime | g_minArtyTime | g_misc | g_panzersGravity
  g_panzersSpeed | g_panzersVulnerable | g_partyPanzersDamageMode | g_partyPanzersEnabled
  g_partyPanzersPattern | g_playerRating | g_playerRating_minplayers | g_realHead
  g_reflectFFWeapons | g_reflectFriendlyFire | g_shortcuts | g_shuffle_rating
  g_staminaRecharge | g_teamForceBalance_playerrating | g_throwKnifeWait | g_throwableKnives
  g_weapons | skill_battlesense | skill_covertops | skill_engineer
  skill_fieldops | skill_lightweapons | skill_medic | skill_soldier
  team_maxCovertOps | team_maxEngineers | team_maxFieldOps | team_maxMedics
  vote_allow_shufflenorestart |  |  |

g_shrubbot [Dateiname]

  Als Dateinamen tragt ihr hier den Namen eurer shrubbot Konfiguration ein, ohne Pfadangaben, die Konfiguration sollte sich im gleichen Verzeichnis befinden, wie die etpub qagame.mp.i386.so bzw. die qagame_mp_x86.dll, z.B. .../enemy-territory/etpub/shrubbot.cfg. Um den shrubbot nutzen zu können müsst ihr Punkbuster auf eurem Server aktivieren.

  Bsp.: set g_shrubbot "shrubbot.cfg"

g_logAdmin [Dateiname]

  Hiermit gebt ihr die Datei an, in die alle Shrubbot Aktivitäten eingetragen werden, also z.B. alle von Shrubbot Admins ausgeführten Kicks oder Mapwechsel.

  Bsp.: set g_logAdmin "admin.log"

g_hitsounds [bitmask]

  Ihr könnt Hitsounds auf eurem Server mit folgenden Flags konfigurieren:

  1 | Schaltet Hitsounds ein.
  2 | Unterbindet Klänge, wenn ihr auf verwundete Spieler schießt.
  4 | Deaktiviert Hitsounds bei Treffern auf den Kopf von verwundeten Gegnern.
  8 | Schaltet den "hold your fire" Spruch ab, den ihr normalerweise hören würdet, wenn ihr ein Teammitglied zum ersten mal trefft.
  16 | Deaktiviere den Hitsound für Giftschaden.

  Standardmäßig werden Sounds aus pak0.pk3 von Enemy-Territory verwendet, wodurch keine zusätzlichen Pakete heruntergeladen werden müssen.
  Will man ohne Hitsounds spielen, genügt es vor dem Verbinden mit dem Server /setu cg_hitsounds 0 in die Konsole zu schreiben oder ihr stellt diese mit dem /hitsounds Befehl aus.
  Standard: 0

  Mit ETpub ist es möglich eigene Hitsounds einzustellen. Dazu müssen die gewünschten Sounds als .wav in eine Zip-Datei, am besten in einen Unterordner sound/. Die Datei speichern und das .zip in .pk3 umbenennen. Dann das Ganze auf den Server ins etpub Verzeichnis hoch laden.

  Folgende Sounds könnt ihr definieren:

      g_hitsound_default		Standard Hitsound für einen normalen Körpertreffer.
      g_hitsound_helmet		Hitsound für einen Treffer auf den Helm.
      g_hitsound_head			Hitsound für einen Kopfschuss.
      g_hitsound_team_warn_axis	Warnklang beim ersten Treffer auf ein Teammitglied (Axen).
      g_hitsound_team_warn_allies	Warnklang beim ersten Treffer auf ein Teammitglied (Alliierte).
      g_hitsound_team_helmet		Für Treffer auf den Helm eines Teammitgliedes.
      g_hitsound_team_head		Für Kopfschüsse auf ein Teammitglied.
      g_hitsound_team_default		Für Treffer auf den Körper eines Mitspielers.

  Bsp.: set g_hitsound_default "sound/hit1.wav"

g_shoveSound [string]

  Hier gebt ihr den Sound an, der beim schieben eines Spielers abgespielt werden soll. Setzt diese Variable auf "" um keinen Ton zu spielen.
  Standard: "sound/weapons/grenade/gren_throw.wav"

g_poisonSound [string]

  Klang der pro Sekunde von einem vergifteten Spieler ausgeht. Setzt die auf "" um keinen Ton abzuspielen.
  Standard: "sound/player/gurp2.wav"

g_fightSound [string]

  Klang, der am Ende der Aufwärmphase oder wenn das Match nach einer Pause wieder aufgenommen wird, abgespielt wird. Bsp.:set g_fightSound "sound/world/rooster.wav"
  Standard: ""

g_playDead [0|1]

  Erlaubt das Totstellen auf dem Server. Um sich das Kommando "playdead" auf eine Taste zu binden, folgendes in die etconfig.cfg eures etpub Profils oder direkt in die Konsole tippen: bind X "playdead" wobei X für eine Taste eurer Tastatur steht.
  Standard: 0

g_shove [integer]

  Erlaubt einem Spieler die "Benutzen" Taste zu verwenden, um einen Mitspieler eine bestimmte Strecke zu schieben. [integer] steht für eine Ganze Zahl (0,1,2,...).
  Standard: 0

  Bsp.: set g_shove "80"

g_shoveNoz [0|1]

  Aktiviert (1), deaktiviert (0) schieben entlang der y-Achse (oben/unten).
  Standard: 0

g_dragCorpse [0|1]

  Erlaubt es verwundete Spieler mit der "Benutzen" Taste zu ziehen, wenn man langsam rückwärts läuft. Funktioniert am Besten, wenn man dabei kriecht oder auf dem Bauch gleitet.
  Standard: 0

g_classChange [0|1]

  Ermöglicht einen Klassenwechsel, indem man von einem toten Kameraden die Uniform nimmt (wie beim Stehlen einer Uniform als CovertOps). Beim nächsten Respawn startet man wieder mit seiner vorher ausgewählten Spielerklasse.
  Standard: 0

g_forceLimboHealth [0|1]

  Wird dieser Wert auf 1 gesetzt, werden 5 Schüsse statt 3 benötigt, um einen Spieler zu gibben.
  Standard: 1

g_privateMessages [0|1]

  Wird g_privateMessages auf 1 gesetzt, können die Spieler mittels /m Spielername Nachricht private Nachrichten versenden.
  Standard: 0

  Beginnend mit Version 0.2.1 könnt ihr /m Name Nachricht auch in eure Dialogbox schreiben, statt in eure Konsole.

  Ab Version 0.5.1 kann man private Nachrichten Anderer mittels /ignore [Name|Nummer] ablehnen (Rückgängig zu machen mit /unignore).

g_XPSave [bitmask]

  Regelt die Art und Weise, wie die gesammelten Erfahrungspunkte und Leben gespeichert werden. [bitmask] setzt sich dabei aus vier Werten zusammen, die aufaddiert werden können:

  1 | Speichert die Erfahrungspunkte beim Disconnect.
  2 | Setzt die XP bei einem Neustart der Map, einem shuffle etc. nicht zurück.
  4 | Die Erfahrungspunkte werden nicht zurückgesetzt, solange der Server nicht komplett neu gestartet wird.
  8 | Erzwingt die Trennung eines Spielers mit der gleichen GUID wie ein gerade connectender. Dies soll vor allem Spielern mit instabilen Verbindungen helfen, da sie ihre Erfahrungspunkte zurückbekommen, obwohl sie mit neuer IP-Adresse zum Server verbinden. Diese Option ist standardmäßig aktiviert, es sei denn ihr habt sv_wwwDlDisconnected gesetzt. sv_wwwDlDisconnected scheint damit Probleme zu verursachen. Ihr solltet diese Option nicht verwenden, wenn ihr sehr häufig pk3s auf eurem Server verändert, da gespeicherte Erfahrungspunkte nach abgebrochenen Downloads verloren gehen.

  Wollt ihr z.B., dass die XP beim trennen der Verbindung und beim Kampagnenwechsel erhalten bleiben, dann wäre [bitmask]=1+4=5
  Bsp.: set g_XPSave "5"
  Die Erfahrungspunkte werden anhand der Punkbuster guid gespeichert, Punkbuster muss daher auf eurem Server laufen, damit ihr diese Funktion verwenden könnt. Wollt ihr die Erfahrungspunkte bei Zeiten zurücksetzen, dann könnt ihr das mit clearxp in der Serverkonsole tun.
  Standard: 0

g_XPSaveFile [string]

  Hiermit legt ihr die Datei fest, in der XPsave seine Daten ablegt. Die Angabe erfolgt, wie bei g_shrubbot relativ zum fs_game Pfad.
  Standard: "xpsave.cfg"

g_XPSaveMaxAge_xp [integer]

  Zeit (in Sekunden) die ein Spieler nicht auf dem Server sein kann, bevor XPsave seine Erfahrungspunkte löscht. Sollte g_XPSaveMaxAge niedriger sein als g_XPSaveMaxAge_xp so wird g_XPSaveMaxAge verwendet.
  Standard: 86400 (= ein Tag)

g_XPSaveMaxAge [integer]

  Zeit (in Sekunden) die ein Spieler nicht auf dem Server sein kann, bevor XPsave seine Erfahrungspunkte, sein Killrating, sein Playerrating und seinen Mutestatus vergisst. Siehe auch g_XPSaveMaxAge_xp.
  Standard: 604800 (= eine Woche)

g_XPDecay [integer]

  Dies ist eine Bitmask Variable, die das Abklingverhalten der Erfahrungspunkte (EP) regelt.

  1 | Aktiviert XPDecay.
  2 | Verringere die EP eines Spielers nicht, wenn er sich nicht auf dem Server befindet.
  4 | Verringere die EP eines Spielers nicht für die Klasse (z.B. Sanitäter) die er gerade spielt.
  8 | Verringere die EP eines Spielers nicht, während er nur zuschaut.
  16 | Verringere die EP eines Spielers während der Aufwärmphase und während Unterbrechungen nicht.
  32 | Verringere die EP eines Spielers nicht, solange er auf einer der beiden Seiten spielt und das Spiel gerade im Gange ist.
  64 | Verringere die Battle Sense EP eines Spielers nicht, wenn er spielt.
  128 | Verringere die Light Weapons EP eines Spielers nicht, wenn er spielt.

  Siehe auch g_XPDecayRate.
  Diese Variable wurde Aufgrund des g_XPSave 4 Bitschalters eingeführt, der es ermöglicht Erfahrungspunkte für immer anwachsen zu lassen.
  Standard: 0

g_XPDecayRate [float]

  Das ist die Rate (in EP pro Sekunde) mit der die Erfahrungspunkte aller Fertigkeiten abnehmen werden, wenn g_XPDecay aktiviert ist.
  Würdet ihr hier einen Wert von "0.1" einstellen, würde ein Spieler 6 EP pro Minute pro Fertigkeit verlieren, also bis zu 42 EP pro Minute, wenn er überall Erfahrungspunkte besitzt.
  Standard: 0.0

g_XPDecayFloor [float]

  Dies ist das Minimum auf das jede einzelne Fertigkeit durch g_XPDecay reduziert werden kann. Wenn ihr hier z.B. einen Wert von 140.0 einstellt wird kein Spieler im Rang herabgestuft und verliert keine, bereits erworbenen, Fertigkeiten aufgrund von g_XPDecay.
  Standard: 0.0

g_maxXP [integer]

  Hiermit könnt ihr eine Obergrenze für die zu erreichenden Erfahrungspunkte festlegen. Sobald ein Spieler diese Grenze erreicht werden seine Erfahrungspunkte auf Null zurückgesetzt. Zum deaktivieren auf -1 setzen.
  Standard: -1

g_damageXP [integer]

  Ermöglicht die optionale Vergabe von Erfahrungspunkten basierend auf dem an der gegnersichen Mannschaft verursachten Schaden. Verfügbare Optionen sind:

  0 | Deaktiviert: verwende normale ET EP Vergabe.
  1 | 1 EP wird pro g_damageXPLevel Punkten Schaden verliehen. Die Erfahrungspunkte werden für die Fertigkeit der jeweiligen Waffe gutgeschrieben. Kills (egal welcher Art) werden dann mit einem Erfahrungspunkt bedacht.
  2 | 1 EP wird pro g_damageXPLevel Punkten Schaden verliehen. Die Erfahrungspunkte werden dem Battle Sense gutgeschrieben. Kills werden mit normalen EP belohnt (normalerweise 3-5 EP).

  Standard: 0

g_damageXPLevel [integer]

  Diese Variable legt die Schadensmenge fest, die ein Spieler der gegnerischen Mannschaft zufügen muss um einen Erfahrungspunkt zu erhalten. Siehe dazu g_damageXP
  Standard: 50

g_Weapons [bitmask]

  Soll g_weapons vom Shrubmod nachempfinden, bisher wurden folgende Optionen eingeführt:

  2 | Spritzen funktionieren auch unter Wasser.
  4 | Zangen funktionieren unter Wasser.
  8 | Wurde ein Luftangriff abgebrochen (alle Flugzeuge im Einsatz), wird die Energieanzeige des FOps vollständig wiederhergestellt
  16 | Wurde ein Luftangriff abgebrochen, wird die Energieanzeige des FOps zur Hälfte wiederhergestellt
  32 | Munitionspäckchen liefern einen neuen Helm.
  64 | Ferngläser werden fallengelassen, falls vorhanden. (etpub_client >= 20050927 nötig)
  128 | Level 4 Soldaten verlieren ihre Pistolen nicht.
  256 | Garands können auch bei nicht leerem Magazin nachgeladen werden.
  512 | Gleicht die Magazingröße der Alliierten- und Axengewehre an.
  1024 | Erzeugt eine Hitbox für Mörser Granaten. Dies verhindert bzw. vermindert die Möglichkeit durch enge Fenster und Schiessscharten zu feuern.

  Wie bei [bitmask] üblich, summiert ihr für die gewünschten Optionen die Zahlen einfach auf.
  Standard: 0

  Bsp.: Wollt ihr z.B. neue Helme im Munitionspäckchen und das die Spritze unter Wasser funktioniert, dann müsst ihr folgendes in eure Server Konfiguration eintragen: set g_Weapons "34"; also 2 + 32 = 34

g_goomba [integer]

  Springt ihr einem Freund oder Feind auf den Kopf, nimmt dieser dadurch Schaden. Die Höhe des Schadens berechnet sich aus der Falltiefe, also dem Schaden den ihr selber nehmen würdet, mal eurem eingestellten Wert. Der herabfallende Spieler nimmt, wenn er auf einem anderen Spieler landet, nur 20% seines normalen Fallschadens. Durch Sprünge aus dem Stand könnt ihr auch geringfügigen Schaden (5LP) zufügen.

  Durch einen Sturz könntet ihr 500, 50, 25, 15 oder 10 Lebenspunkte Schaden nehmen. Setzt ihr g_goomba z.B. auf 5 und ihr landet aus einer Höhe auf einem Spieler, bei der ihr selber 10LP Schaden genommen hättet, würdet ihr dem Spieler auf dem ihr landet einen Schaden von 50LP zufügen. Ihr selber nehmt dabei nur 2LP Schaden.
  Standard: 0

g_goombaFlags [bitmask]

  Regelt wie g_goomba arbeitet.

  1 | Ihr fügt euren Teammitgliedern keinen goomba Schaden zu.
  2 | Stürze aus geringer Höhe (Sprünge aus dem Stand) richten bei euren Mitspielern keinen Schaden an.
  4 | Stürze aus geringer Höhe (Sprünge aus dem Stand) richten bei euren Teammitgliedern keinen Schaden an. (Nicht nötig, wenn Flag 1 oder 2 gesetzt ist.)
  8 | Herabspringende Spieler erleiden keinen Schaden, wenn sie auf einem anderen Spieler landen. (Normalerweise würden sie 20% des Schadens erleiden, den sie beim Aufprall am Boden erlitten hätten.)
  16 | Insta-gib goomba. Fügt immer einen Schaden von 500LP zu. Ausgenommen bei Sprüngen aus dem Stand, in diesem Fall bleibt es bei 5LP Schaden.

  Setzt g_goombaFlags auf 31, damit g_goomba wie unter shrubet funktioniert.
  Standard: 0

g_spawnInvul [integer]

  [integer] gibt die Zeit in Sekunden an, in der ein Spieler nach dem Respawn unverwundbar ist.
  Standard: 3

g_alliedSpawnInvul [integer]

  Zeit, die ein alliierter Spieler nach seinem Respawn unverwundbar ist. Dies wird g_spawnInful deaktivieren.
  Standard: 0

g_axisSpawnInvul [integer]

  Zeit, die ein Spieler der Achsen-Mächte nach seinem Respawn unverwundbar ist. Dies wird g_spawnInful deaktivieren.
  Standard: 0

g_spinCorpse [0|1]

  Erlaubt es dem Spieler sich mittels +left und +right zu drehen, während er sich tot stellt oder er tot ist.
  Standard: 0

g_teamChangeKills [0|1]

  Wird dieser Wert auf 1 gestellt, darf jeder Spieler einmal das Team wechseln und startet sofort am neuen Respawn Punkt. Beim nächsten Wechsel stirbt man dann wieder normal (wird nicht als death in der Statistik gewertet) und muss bis zum nächten Respawn warten.
  Standard: 1

g_ATB [0|1|2]
g_ATB_diff

  g_ATB steuert die Art und Weise wie ihr "Active Team Balance" verwenden wollt. ATB wird automatisch einen der besten drei Spieler, von der Mannschaft die zu gewinnen scheint zu der die zu verlieren scheint, verschieben. Es gibt derzeit zwei Varianten , eine verwendet Erfahrungspunkte die andere das Playerrating um das Spielgeschehen zu beurteilen. Mit g_ATB legt ihr fest welche. g_ATB entscheidet nur WANN ein Spieler verschoben wird, nicht welcher. Dafür ist g_ATB_rating zuständig.

  0 | Kein "Active Team Balance"
  1 | Greift auf Erfahrungspunkte zurück um die Mannschaften auszugleichen. Es kommen folgende Variablen zum Einsatz: g_ATB_minXP [integer] g_ATB_minPlayers [integer] g_ATB_axisHoldoff [integer] g_ATB_alliedHoldoff [integer] ATB verschiebt einen Spieler wenn Respawn ist, falls die folgenden Kriterien erfüllt sind: Eine Mannschaft hat mindestens g_ATB_minXP Erfahrungspunkte Es sind mindestens g_ATB_minPlayers im Spiel Der erfolgte Teamwechsel kann zu folgenden zahlenmäßigen überlegenheiten führen: Wenn 16 oder mehr Leute spielen, bekommt das verlierende Team maximal einen Spieler mehr. Wenn 26 oder mehr Leute spielen, bekommt das verlierende Team maximal zwei Spieler mehr. Die gewinnende Mannschaft führt mit g_ATB_diff Prozent bei den Erfahrungspunkten. Die Berechnungen gründen sich auf die TeamXP nicht den zusammengezählten Erfahrungspunkten der Spieler. Zusätzlich könnt ihr mittels g_ATB_alliedHoldoff bzw. g_ATB_axisHoldoff festlegen, wie lange, nach dem Verschieben eines Spielers, etpub warten soll bis es eventuell einen weiteren Spieler verschiebt. [integer] legt dabei fest wie viele Respawnzyklen gewartet werden muss bis wieder ein Alliierter (g_ATB_alliedHoldoff) bzw. ein Axe (g_ATB_axiHoldoff) verschoben werden darf. Standard Werte: g_ATB_diff: 75 g_ATB_minXP: 300 g_ATB_minPlayers: 5 g_ATB_axisHoldoff: 5 g_ATB_alliedHoldoff: 5 Ein kleines Beispiel: set g_ATB_diff 50 würde einen Spieler verschieben, wenn er oder sie die beste im Team wäre, ihre Mannschaft 750XP und die Gegnerische Mannschaft 500XP hätte.
  2 | Verwende "Playerrating" um die Mannschaften auszugleichen sobald die Wahrscheinlichkeit dass ein Team gewinnt g_ATB_diff überschreitet. Diese Variante greift auf keine der EP abhängigen Variablen zurück. Um die Mindestanzahl Spieler festzulegen, die benötigt werden, bevor ATB eingreift legt ihr hier nicht mit g_ATB_minPlayers sondern mit g_playerRating_minplayers fest. ATB wird bei dieser Variante keine Spieler hin und her schieben um die Mannschaften Zahlenmäßig auszugleichen. Ihr solltet euch g_teamForceBalance_playerrating sorgfältig durchlesen, ehe ihr Variante 2 verwendet.

g_ATB_swap [0|1]

  Setzt ihr diese Variable auf 1, so wird einer der drei schwächsten Spieler des verlierenden Teams ins gewinnende Team verschoben, wenn ATB eingreift.
  Standard: 1

g_ATB_rating [integer]

  Wählt die Art und Weise WIE (nicht WANN, das macht g_ATB) ATB entscheidet welche Spieler es verschiebt. Ihr habt folgende Optionen:

  1 | Verwendet die absoluten Erfahrungspunkte der Spieler.
  2 | Verwendet die Zuwachsrate an Erfahrungspunkten.
  3 | Verwendet killRating (g_killRating muss dafür aktiviert sein!).
  4 | Verwendet g_playerRating (g_playerRating muss aktiviert sein!).

  Standard: 3

g_shuffle_rating [integer]

  Legt fest mit welchen Informationen shuffle arbeitet. Ihr habt folgende Optionen zur Auswahl:

  1 | Verwendet die absoluten Erfahrungspunkte der Spieler.
  2 | Verwendet die Zuwachsrate an Erfahrungspunkten.
  3 | Verwendet killRating (g_killRating muss dafür aktiviert sein!).
  4 | Verwendet g_playerRating (g_playerRating muss aktiviert sein!).

  Standard: 3

g_maxTeamLandmines [integer]

  Legt die Anzahl der pro Team zur Verfügung stehenden Minen fest. Dieser Wert sollte Null oder größer sein.
  Standard: 10

Bei Folgenden Cvars ist der Standard -1 für unbegrenzte Anzahl, 0 zum deaktivieren der Waffengattung.

team_maxPanzers [integer]

  Begrenzt die Anzahl der pro Team verfügbaren Panzerfäuste.

team_maxMortars [integer]

  Begrenzt die Anzahl der pro Team verfügbaren Mörser.

team_maxFlamers [integer]

  Begrenzt die Anzahl der pro Team verfügbaren Flammenwerfer.

team_maxMG42s [integer]

  Begrenzt die Anzahl der pro Team verfügbaren tragbaren MGs.

team_maxGrenLaunchers [integer]

  Begrenzt die Anzahl der pro Team verfügbaren Gewehre mit angebautem Granatwerfer.

skill_Klasse [string]

  Mit den skill CVars könnt ihr festlegen, wie viele Erfahrungspunkte für die einzelnen Fertigkeiten bzw. Stufen benötigt werden. Euch steht für jede Klasse eine skill_ Variable zur verfügung:

      skill_soldier
      skill_medic
      skill_engineer
      skill_fieldops
      skill_covertops
      skill_battlesense
      skill_lightweapons

  [integer] setzt sich dabei aus 4 Zahlen zusammen, die die benötigten XP widerspiegeln, die für die erste, zweite, dritte und vierte Stufe der Klasse benötigt werden. Die einzelnen Werte müssen in der Reihe größer oder gleich den vorhergehenden sein. Auch müsst ihr jeweils alle Stufen definieren, ansonsten werden die veränderten Stufen nicht verwendet. Standardmäßig sind die Level folgendermaßen definiert: "20 50 90 140". Ein gültiges Konfigurationsbeispiel wäre z.B.: skill_engineer "10 20 30 250"; hier würde ein Engineer Stufen eins bis drei sehr schnell erreichen, Stufe 4 (Splitterschutzweste) würde er aber erst mit 250 EngineerXP erreichen. Oder skill_lightweapons "3 3 3 3" gibt jedem Spieler nach dem ersten kill Akimbos. Was nicht gehen würde wäre z.B. skill_soldier "20 50 30 60".
  Achtung: Die Stufen werden den Clients immer standardmäßig (20 50 90 140) angezeigt, was im allgemeinen zu Verwirrungen führt. Dies lässt sich aber serverseitig nicht ändern.

g_mapConfigs [string]

  Beginnt eine neue Karte, dann sucht der Server nach einer Konfigurationsdatei MapName.cfg im Ordner [string]. Zum Beispiel, setzt ihr g_mapConfigs auf "mapcfg" und Oasis wird geladen, dann versucht der Server etpub/mapcfg/oasis.cfg auszuführen. Kann er diese nicht finden wird stattdessen die default.cfg geladen, so sie vorhanden ist.
  Zum deaktivieren [string] auf "" setzen; damit etpub im aktuellen Verzeichnis (fs_home_path) sucht auf "."
  Standard: ""

g_packDistance [integer]

  Regelt die Weite mit der Munitions- und Verbandspäckchen geworfen werden. Setzt diese Variable auf 0 damit es sich wie bei ETmain verhält. Diese Einstellung sollte ähnlich zu der vom Shrubmod sein, ein Wert von 2 sollte also eine leichte Veränderung bringen.
  Standard: 0

g_dropHealth [integer]

  Setzt ihr für [integer] eine positive Zahl ein, so geben Medics, nachdem sie getötet wurden, eine entsprechende Anzahl von Verbandspäckchen ab. Wenn ihr g_dropHealth auf -1 setzt, werfen Medics die Menge Päckchen, die sie zu Lebzeiten hätten abgeben können. Mit 0 wird diese Option deaktiviert.
  Standard: 0

g_dropAmmo [integer]

  Wie g_dropHealth, nur für den Fieldops.
  Standard: 0

g_tossDistance [integer]

  Mit g_tossDistance stellt ihr ein, wie weit die Päckchen, um einem getöteten Medic bzw. Fieldops, verstreut werden. Ein Wert größer als 10 ist sinnvoll, damit sich die Pakete nicht auf einem Haufen stapeln.
  Standard: 0

g_logOptions [integer]

  Ist als Gegenstück zur gleichnamigen shrubmod Cvar gedacht. Bisher wurde aber nur folgendes implementiert

  1 | Verwende serverseitige Todesnachrichten, die im Chatbereich der Spieler statt im Infobereich (links unten) angezeigt werden. Wird den Datentransfer erhöhen. Außerdem müsst ihr noch g_obituary auf 3 setzen.
  2 | Adrenalin Countdowns werden angezeigt.
  4 | Adrenalin Countdowns werden angezeigt.Deaktiviere die Anzeige der "Wegdrück" Bestätigungsbox.
  8 | Adrenalin Countdowns werden angezeigt.Zeige Verbindungsversuche von gebannten Spielern.
  16 | Zeige gib-Meldungen ("<Opfer> was gibbed by <Angreifer>")
  32 | Lass "item" Zeilen aus der Logdatei.
  128 | GUIDs werden in die Logdatei eingetragen.
  256 | Zeichnet alle privaten Nachrichten auf (/m Text).
  512 | Schreibt die tatsächliche Serverzeit in die Logdateien, anstelle der Server Uptime.
  2048 | Zeigt Teamkills wie einen normalen Kill an (mit Waffenangabe), plus ein vorangestelltes, rotes TEAMKILL. Funktioniert nur mit Option 1.

  Standard: 0

g_censor [string]

  Mit g_censor könnt ihr einen Schimpfwortfilter für Spielerchats erstellen. Dabei ist [string] eine Komma getrennte Liste mit zu filternden Wörtern.

  Bsp.: set g_censor "Arsch,Depp,Idiot,MeinRefereePasswort"
g_censorNames [string]

  [string] ist eine durch Kommata getrennte Liste von Spielernamen die gefiltert werden.
  Standard: ""

g_censorPenalty [bitmask]

  Und hiermit legt ihr die Strafe für das Schreiben von solchen zensierten Wörtern fest.

  1 | Tötet den Spieler
  2 | Kickt Spieler mit Namen die Wörter aus g_censorNames enthalten.
  4 | Tötet den Spieler, aber gibbt ihn nicht.
  8 | Schaltet den Spieler automatisch für g_censorMuteTime auf stumm.

  Verwendet ihr 1 + 4 = 5, so wird der Spieler gegibbt (wie beim shrubmod).
  Standard: 0

g_censorMuteTime [integer]

  Zeit in Sekunden die ein Spieler zur Bestrafung stumm geschalten wird. Geht nur bei gesetztem 8 Flag bei g_censorPenalty.
  Standard: 60

g_intermissionTime [integer]

  Damit könnt ihr die Zeit in Sekunden festlegen, die die Statistiken nach einer Map angezeigt werden, bevor die nächste Karte geladen wird. Standard von ETmain sind 60 Sekunden.

g_intermissionReadyPercent [integer]

  Wenn ihr nicht warten wollt, bis g_intermissionTime abgelaufen ist, dann könnt ihr mit g_intermissionReadyPercent festlegen, wie viel Prozent der Spieler Ready drücken müssen, damit die nächste Karten geladen wird. Wollt ihr Normale ETmain Verhältnisse, dann stellt [integer] hier auf 100.

g_skills [bitmask]

  Regelt das Verhalten eurer Fertigkeiten. Bislang wurden folgende Optionen eingeführt:

  1 | Ein Spieler, der Battlesense Stufe 4 erreicht hat, kann für seine Teamkameraden Minen ausfindig machen.
  2 | Ein Spieler, der Engi Stufe 4 erreicht hat, darf seine Splitterweste behalten.
  4 | Ein Spieler, der Medic Stufe 4 erreicht hat, darf seine Adrenalinspritze auch bei anderen Klassen einsetzen

  Standard: 0

g_hitboxes [bitmask]

  gibt euch die Möglichkeit die verbesserten Hitboxen nach Wunsch zu deaktivieren. Ihr habt folgende Optionen:

  1 | Senkt die BodyHitbox des stehenden Spieler auf Schulterhöhe.
  2 | Senkt die BodyHitbox des kniehenden Spielers auf Schulterhöhe.
  4 | Verringert die BodyHitbox des verwundeten Spielers auf eine realistische Höhe.
  8 | Verringert die BodyHitbox des liegenden Spielers auf eine realistische Höhe.
  16 | Verringert die BodyHitbox des totspielenden (playdead) Spielers auf eine realistische Höhe.

  Standard ist 31, was alle verbesserten Hitboxen aktiviert. Setzt g_hitboxes auf 0 um die etmain Hitboxen zu verwenden.

g_misc [bitmask]

  Dies ist ein bitflag CVar das die Folgenden Bitschalter unterstützt:

  1 | Ermöglicht einen Doppelsprung wie bei UT.
  2 | Aktiviert Binocular-Master Wettstreit. Benötigt g_weapons 64
  8 | Gibt "killing sprees" aus. Dazu muss g_killingSpree aktiviert werden. Es werden jede Minute die besten 3 "killing sprees" angezeigt. Alle zwei Minuten wird der längste "killing spree" der Karte ausgegeben.
  16 | Spieler können nicht springen, falls ihre Ausdauer zu niedrig ist. (benötigt etpub_client >= 20050927)
  32 | Spieler können ihren Kopf nicht in feste Objekte stecken, wenn sie liegen oder knien. Das ist ETpub 0.5.x Verhalten. Wenn ihr einen etpubclient vor 20050927 verwendet müsst ihr dies aktivieren.

  Standard: 0

g_doubleJumpHeight [float]

  g_doublejumpheight ist ein Multiplikator für die Sprunghöhe beim Doppelsprung. Euer zweiter Sprung wird dadurch [float] mal höher als euer erster, normaler Sprung.
  Standard: 1.4

g_skipCorrection [0|1]

  Stellt ihr dies auf 1, so wird die "unlagged 2" Korrektur gegen Bewegungssprünge (warpen) aktiviert. Damit soll verhindert werden, dass Spieler mit sehr hohem Ping oder geringer Framerate über die Map ruckeln und über Minen gleiten ohne sie auszulösen. Ähnlich zu Banis b_antiwarp; ersetzt g_smoothclients.
  Standard: 1

g_maxWarp [integer]

  Hiermit könnt ihr einstellen, wie stark ein Spieler mit hohem packetloss, "warpen" darf. [integer] legt dabei fest, wie viele Serverframes ein Spieler verpassen kann, bevor seine nächste Bewegung eingebracht wird.
  Serverschnappschüsse werden normalerweise alle 50ms genommen (wenn sv_fps auf 20 steht). Das bedeutet, falls ihr g_maxWarp auf 5 gesetzt habt, dass Spieler nicht von A nach B "warpen" können, wenn sie dafür länger als eine viertel Sekunde brauchen würden. Diese Variable auf 1 zu setzen, ist eine gute Möglichkeit um euren Server leer zu halten :). Werte unterhalb von 3 verhindern, dass g_skipCorrection richtig arbeiten kann. Empfohlen wird außerdem ein Gnadenframe, also mindestens g_maxWarp "4".
  Laut tjw sind wohl 1000ms standardmäßig erlaubt. Diese Variable auf einen Wert über 39 zu setzen hätte also keinerlei Effekt, wenn sv_fps auf 10 gestellt ist.
  Standard: 4

g_teamDamageRestriction [integer]

  Setzt ihr hier einen Wert größer 0, dann wird jeder, der mehr als [integer] Prozent seines insgesamt Verursachten Schadens dem eigenen Team zugefügt hat, vom Server gekickt. Eine Mindestanzahl an Teamtreffern, bevor Spieler vom Server entfernt werden, lässt sich mit g_minHits einstellen. Clients können sich ihre eigenen Trefferquoten mittels /damage in der Konsole anzeigen lassen.
  Standard: 0

g_minHits [integer]

  Regelt die Mindestanzahl an Treffern, bevor geprüft wird, ob ein Spieler den g_teamDamageRestriction Grenzwert erreicht hat.
  Standard: 6

g_autoTempBan [0|1]

  Falls auf 1 gesetzt, wird jeder, der wegen g_teamDamageRestriction gekickt wurde, für g_autoTeamBanTime Sekunden gebannt.
  Standard: 0

g_autoTempBanTime [integer]

  Zeit in Sekunden, die ein Spieler gebannt wird, wenn g_autoTempBan gesetzt ist.
  Standard: 1800 (entspr. 30min)

g_voting [bitmask]

  Bitflag Variable die folgende Optionen unterstützt:

  1 | Abstimmungen werden anhand der abgegebenen Stimmen entschieden, nicht der Anzahl an Spielern auf dem Server.
  2 | Durchgehende Abstimmungen zählen für den Starter nicht zum vote_limit
  4 | " (called by NAME)" wird an die Beschreibung der Wahl angehängt. NAME wird dabei durch den eigentlichen Spielernamen ersetzt.

  Standard: 0

g_moverScale [float]

  Multipliziert die Geschwindigkeit von Fahrzeugen mit [float]
  Standard: 1.0

g_poison [integer]

  Erlaubt es Ärzten, Gegner mit ihrer Spritze zu vergiften. Der vergiftete Spieler verliert [integer] Lebenspunkte pro Sekunde, wenn g_poison auf einen Wert größer 0 gesetzt ist. g_poison 0 deaktiviert dementsprechende die Giftspritze. Zur Zeit wird der vergiftete Spieler nur simple animiert. Damit sich das injizieren von Gift lohnt solltet ihr g_poison auf mindestens 10 setzen.
  Standard: 0

g_poisonFlags [bitmask]

  Diese Variable steuert die Effekte der Giftspritze.

  1 | Der Bildschirm des vergifteten Spielers wird geschüttelt.
  2 | Mitspieler sehen den Kopf des Vergifteten sich schütteln.
  4 | Der vergiftete Spieler scheint sich alle zwei Sekunden zu krümmen. Dies sehen nur Mitspieler, er selber wird dadurch nicht beeinflusst.
  8 | Vergiftete Spieler können +attack nicht mehr verwenden. ANMERKUNG: Weil ETpub im Moment noch ein rein serverseitiger Mod ist wird der vergiftete Spieler seine Waffe noch feuern sehen, es werden aber dennoch keine Schüsse abgegeben.
  16 | Der vergiftete Spieler wird desorientiert (Bild wird auf den Kopf gestellt).

  Standard: 7

g_slashKill [bitmask]

  Variable, die das Verhalten von /kill regelt.

  1 | Spieler haben beim nächsten Respawn nur halbvollen Energiebalken.
  2 | Spieler haben beim nächsten Respawn einen leeren Energiebalken.
  4 | Nach dem Respawn haben Spieler genausoviel Energie wie zum Zeitpunkt an dem sie /kill benutzt haben.
  8 | Deaktiviert /kill
  16 | Deaktiviert /kill, wenn der Spieler vergiftet wurde.

  siehe auch g_fear
  Standard: 0

g_ammoCabinetTime [integer]

  Zeit in Millisekunden (1000stel Sekunden), bis der Munitionsschrank wieder aufgefüllt wird. Ein Päckchen alle [integer] Millisekunden.
  Standard: 60000

g_healthCabinetTime [integer]

  Zeit in Millisekunden (1000stel Sekunden), bis der Arzneischrank wieder aufgefüllt wird. Ein Päckchen alle [integer] Millisekunden.
  Standard: 10000

g_spectator [bitmask]

  Damit könnt ihr das Verhalten von Zuschauern beeinflussen. Ihr habt dabei folgende Möglichkeiten:

  1 | Wenn du frei umher fliegst, schieße auf einen Spieler, um durch ihn zu sehen. Triffst du daneben, passiert nichts.
  2 | Wenn du frei umher fliegst (bei gesetztem 1 Flag), und den gewünschten Spieler nicht triffst, folgst du automatisch dem nächsten, verfügbaren Spieler.
  4 | Wird der Spieler, dem du folgst, getötet (bzw. verwundet und er "drückt sich weg") dann gehst du nicht weiter zum nächsten, verfügbaren Spieler.
  8 | Wird der Spieler, dem du folgst, getötet (bzw. verwundet und er "drückt sich weg"), dann gehst du in den frei schwebenden Modus über, anstelle dem nächsten Spieler zu folgen. (4 hat hier übergeordneten Rang!)

  Standard: 0 (keine Veränderungen gegenüber etmain)

g_medics [bitmask]

  Durch g_medics bekommt ihr die Möglichkeit die verschiedenen Fähigkeiten der Medics zu beeinflussen.

  1 | Medics können sich selbst nicht durch Medipacks von Vergiftungen (Giftspritze) heilen.
  2 | Medics können ihre eigenen Medipacks nicht aufnehmen..
  8 | Die Lebenspunkte eines Medics füllen sich, bis 110LP, um 1LP pro Sekunde auf, danach nicht weiter.
  16 | Sanitäter erhalten auch bei Stufe 4 Leichte Waffen keine Akimbos
  32 | Sanitäter bekommen nur eine Pistole in die Hand, kein Gewehr. Sie können im Spiel auch kein Gewehr vom Boden aufheben. Habt ihr g_classChange allerdings auf 1 gesetzt, behalten Spieler, die sich eine Medic-Uniform anziehen, ihre Waffen, also sowohl Akimbos als auch das Gewehr.
  64 | Sanitäter können die Spritze verwenden um Teammitglieder zu heilen, anstelle des üblichen Teamkill/Wiederbeleben Kreislaufs.

  Standard: 0

g_medicHealthRegen [integer]

  Die Geschwindigkeit mit der Sanitäter Lebenspunkte regenerieren in LP pro Sekunde. Die Rate teilt sich in zwei Teile auf: Einmal von einem bis 110 bzw. 125 LP (in Abhängigkeit von der Gesamtzahl an Sanitätern) und dann alles darüber. Der Systemstandard ist 3/2, also erst 3 dann 2 LP pro Sekunde. Mögliche Optionen sind:

  0 | 3/2
  1 | 2/2
  2 | 2/1
  3 | 2/0
  4 | 1/1
  5 | 1/0
  6 | 0/0 (keine Regeneration)

  Standard: 0

g_coverts [bitmask]

  Bitmask die die verschiedenen Aspekte der Covert Op Klasse regelt. Derzeit unterstützte Schalter:

  1 | Stufe 4 bekommt genauere Scharfschützengewehre.
  2 | Getarnte Covert Ops können nur über den "Fadenkreuz Namen" durch Stufe 4 FieldOps identifiziert werden. (benötigt etpub_client >= 20051016)
  4 | Nach dem zünden einer Sprengladung wird auf die Hauptwaffe gewechselt anstatt zurück zur nächsten Sprengladung. (benötigt etpub_client >= 20051016)
  8 | Getarnte Spione nehmen weniger Kampfschaden.
  16 | Getarnte Spione nehmen keinen indirekten Schaden (Flächenschaden).
  32 | Spione verlieren nicht automatisch ihre Uniform, wenn sie von einem gegnerischen Spieler beim abfeuern einer Waffe gesehen werden.
  64 | Spione verlieren nicht automatisch ihre Uniform, wenn sie eine ungedämpfte Waffe abfeuern.
  128 | Spione verlieren nicht automatisch ihre Uniform, wenn sie an ein montiertes MG treten. Dieser Bitschalter hat nichts mit dem Abfeuern einer Waffe zu tun. (etpub_client >= 20051030 wird benötigt.)

  Standard: 0

g_truePing [0|1]

  Erlaubt es den Spielern die wahre Zeitspanne zu sehen, die es dauert, bis ihre Aktionen vom Server verarbeitet werden. Pings sind damit etwa 50ms höher, aber die Angaben sind genauer. Wird im Punktespiegel angezeigt.
  Standard: 0

g_dropObj [integer]

  [integer] legt fest, wie häufig ein Spieler, pro Leben, die Objectives fallen/wegwerfen kann (z.B. Radarteile bei Radar)
  Die Levelziele könnt ihr fallen lassen, indem ihr die +activate Taste drückt (benutzen; normalerweise auf F) und währenddessen nichts in eurer Nähe ist, das ihr aktivieren könntet.
  Bevor ihr das wegwerfen der Objectives erlaubt, solltet ihr euch im Klaren darüber sein, wie nervig die ständigen Sprachinfos auf dem Server sein können, wenn sich ein Spieler andauernd die Levelziele zuschmeisst. Daher solltet ihr den Wert nicht allzu hoch setzen.
  Beginnend mit Version 0.4.4 müsst ihr das Messer ziehen, um die Missionsziele fallenlassen zu können. Solltet ihr nicht das Messer in der Hand halten, während ihr +activate (Standard Taste F) drückt, dann werdet ihr eine Nachricht sehen, die euch darauf hinweist. Dies wurde geändert, um ein versehentliches fallenlassen der Objekte zu verhindern, wenn ihr jemanden schiebt, zieht oder etwas aktiviert.
  Standard: 0

g_serverInfo [bitmask]

  Mit dieser Variable könnt ihr den "serverinfo" Text regeln. Diese Informationen werden ausgegeben, wenn eine "getstatus" Anfrage, z.B. von einem Serverbrowser wie ASE, an den Server kommt. Ihr habt folgende Optionen:

  1 | Zeigt die Spieler/Team Informationen mit der der P Variable an (wie ET Pro und ETmain 2.60)
  2 | Zeigt die Spieler/Team Informationen mit Hilfe der "Players_Axis" und "Player_Allied" Variablen an (Wie ETmain bis 2.56)
  4 | Zeigt die 'campaign_maps' Variable bei den Serverinfos an. Diese enthält eine durch Kommata getrennte Liste aller Maps der laufenden Kampagne.
  8 | Zeigt die 'C' Variable bei den Serverinfos an. Diese enthält die aktuelle Mapnummer und die Gesamtanzahl an Maps in der laufenden Kampagne, in der Form xx,yy.
  16 | Beginnend mit Version 0.5.1 werden die Ladezeiten der Klassen erst angezeigt, wenn ihr dieses Flag setzt. Anstelle ihrer werden sinnvollere Informationen im Server Info String angezeigt. Die entfernten CVars sind: g_medicChargeTime, g_engineerChargeTime, g_LTChargeTime, g_covertopChargeTime, g_soldierChargeTime.

  Diese Variable muss vor dem Laden der ersten Map gesetzt werden. Verändert ihr diese Variable danach, wird es nicht wie gewünscht funktionieren.
  Der Server Info String hat eine feste Länge von 1024 Zeichen. Dieser Bereich wird mit den Informationen, die ihr mittels 'sets' festlegt, geteilt. Wenn ihr also mit euren 'sets' zu viel Platz verbraucht kann es passieren, dass euer Gameserver nicht startet. Ihr werdet die Fehlermeldung: "Info string length exceeded". Sollte dies passieren müsst ihr entweder ein paar sets entfernen oder andere g_serverInfo Optionen verwenden.
  Standard: 1

g_killRating [bitmask]

  Wenn ihr diese Variable auf einen Wert ungleich 0 setzt, dann wird etpub die Treffsicherheit der Spieler (anhand ihrer kills) mittels eines ELO-Systems, ähnlich zum Schach, beurteilen. Jeder kill wird die Bewertung eines Spielers basierend auf der Schwierigkeit dieses kills erhöhen. Bringt zum Beispiel ein erfahrener Spieler einen weniger guten Schützen um, dann erhält dieser nur wenig Bewertungspunkte. Umgekehrt würde der unerfahrene Spieler für seinen kill weit mehr Punkte erhalten. In die Bewertungen geht außerdem die verwendete Waffe ein (weniger für Artillerie, mehr für Messer).

  1 | Aktiviert killRating
  2 | Macht das killRating sichtbar. Spieler können /killrating verwenden und am Ende jeder Runde erscheint eine Nachricht mit den besten Schützen dieser Map und den Besten Schützen insgesammt.

  In Version 0.5 gab es einen Bitschalter 4, der es ermöglichte killRating für Schuffle zu verwenden. Dieser wurde durch die Variable g_shuffle_rating überflüssig. Siehe auch g_ATB_rating.
  Standard: 3

g_playerRating [bitmask]

  Wenn ihr diese Bitflag Variable auf einen Wert ungleich Null setzt wird ETpub die Fähigkeit der Spieler gegen eine gute Mannschaft zu gewinnen überwachen. Dazu wird ein ELO-System ähnlich wie beim Schach verwendet. D.h. die Beurteilung eines Spielers wird umso mehr steigen, je stärker das gegnerische Team war, das besiegt wurde. Gewinnt die stärkere Mannschaft gibt es für deren Spieler entsprechend weniger Punkte. Die Spielerbewertung bezieht außerdem die Anzahl Spieler je Team und die Seite, die normalerweise auf der Karte gewinnt, mit ein (z.B. gewinnen die Alliierten meistens tc_base).
  Hier sind die verfügbaren Bitschalter:

  1 | Verwende Player Rating.
  2 | Mache Player Rating einsehbar. Spieler können /playerrating verwenden und am Ende jeder Runde wird der beste Spieler angezeigt.

  Siehe auch g_ATB_rating, g_shuffle_rating und g_teamForceBalance_playerrating
  Standard: 3

g_playerRating_minplayers [integer]

  Die Mindestanzahl Spieler, die spielen müssen, damit das Spiel zum Player Rating beiträgt.
  Standard: 8 (4 gegen 4)

g_teamForceBalance_playerrating [0..100]

  g_teamForceBalance muss aktiviert sein, damit ihr g_teamForceBalance_playerrating verwenden könnt. ETpub wird dann neuen Spielern nicht erlauben der Mannschaft beizutreten, deren Gewinnchance höher ist als g_teamForceBalance_playerrating. Die Gewinnchance wird über drei Parameter berechnet. Erstens dem durchschnittlichen Player Rating der Mannschaft, zweitens der Anzahl Spieler auf beiden Seiten und drittens der Häufigkeit mit der eine Mannschaft diese Karte gewinnt (z.B. gewinnen die Alliierten meistens tc_base). Wenn das Team, dass der Spieler betreten will als zu stark eingestuft ist, erhält er eine Aufforderung das andere Team zu unterstützen.

  Wichtige Anmerkungen:
  g_teamForceBalance_playerrating erlaubt zahlenmäßig unausgeglichene Mannschaften um Vorteile bei einer Karte oder unfaire Teams auszugleichen. D.h. es kann durchaus passieren, dass die Alliierten einige Spieler mehr erhalten, sollten die Achsen sehr gute Spieler haben und die Map für beide Mannschaften gleich schwer zu gewinnen sein. Andererseits, sollten beide Mannschaften von der Spielstärke ausgeglichen sein, aber die Karte wird so gut wie immer von den Achsen gewonnen, so wird g_teamForceBalance_playerrating ein großes Alliiertenteam erzwingen.
  Da g_teamForceBalance_playerrating auf Daten zurückgreift, die über die Zeit gesammelt werden ist es vielleicht ratsam eure Kampagne erst einige male druchlaufen zu lassen, bevor ihr g_teamForceBalance_playerrating aktiviert. Auf diese Weise kann das System die Spielerstärken und Karten kennenlernen.
  Wollt ihr einen groben Überblick, warum es auf eine bestimmte Weise läuft, verwendet !listplayers. Dort wird euch angezeigt, wie viele Punkte eine Mannschaft erhält für den Fall, dass sie gewinnt. Sollte ein Team weniger als 4 Punkte erhalten, ist es zu gut. Die anderen Informationen zeigen euch die Aufgliederung, wie die Punkte berechnet werden.

      Ratings       Win Prob       Win Points
      ---------------------------------------------
      Allies          0.65            5
      Axis            0.35           10

  Die Tabelle oben besagt, dass die Achsen eine 35 prozentige Gewinnchance haben, basierend auf den Spielern (Anzahl und Qualität) und der Karte. Die Punkte werden nach 16*(1 - win prob) berechnet.

  Nicht vergessen, g_teamForceBalance_playerrating passt sich ständig an, gebt ihm also etwas Zeit, auch wenn es Anfangs noch dumm erscheinen mag. Evtl. solltet ihr es erst nach einer Woche einschalten.

  Siehe auch !listteams und g_ATB.

  Standard: 0
  Empfohlener Wert wenn verwendet: 70

g_stats [bitmask]

  Diese Variable regelt, wie Statistiken in ET behandelt werden. Ihr habt folgende Optionen zur verfügung:

  1 | Wenn auf einen Verwundeten geschossen wird um ihn zu gibben, wird dies nicht als Treffer gewertet.
  2 | Wenn auf einen Verwundeten geschossen wird um ihn zu gibben, wird dies nicht als Schuss gewertet.

  Setzt diese Variable auf 3 um das Verhalten von ETmain und shrubet zu bekommen.
  Standard: 0

g_tyranny [0|1]

  Diese Variable soll möglichen Missbrauch von Rechten durch Admins verhindern. Standardmäßig werden Befehle wie !gib, !slap und !burn deaktiviert. Des weiteren werdet ihr g_logOptions 256 (logge private Nachrichten) nicht verwenden können, wenn ihr g_tyranny nicht einschaltet.
  Ihr müsst g_tyranny auch aktivieren um beim Serverbefehl "playsound" einen Client angeben zu können. g_tyranny wird im Server Info String erscheinen und soll misstrauischen Spielern als Warnung dienen.

  ANMERKUNG: Ihr musst g_tyranny vor dem Laden der ersten Map setzen (wie auch g_serverInfo), danach wird sie schreibgeschützt.
  Standard: 0

g_mapScriptDirectory [string]

  Ähnlich der b_mapscriptdirectory CVar von ET Pro. Setzt für [string] ein Verzeichnis in eurem fs_path das eigene Mapscripts enthält.
  Ihr könnt zum Beispiel den Ordner 'etpromapscripts' von ET Pro in euer etpub Verzeichnis kopieren und:

      set g_mapScriptDirectory "etpromapscripts"

  in eure Server Konfiguration einfügen. Mit "" Deaktiviert ihr eigene Map Scripts.
  Standard: ""

g_campaignFile [string]

  Wie b_campaignfile von ET Pro. Setzt ihr für [string] den Namen einer Datei in eurem fs_path wird diese als Kampagne interpretiert und alle weiteren .campaigns in euren .pk3s werden ignoriert.

  Diese Variable ist für eigene Kampagnen nützlich, da ihr nicht extra eine .pk3 zum Download anbieten müsst. Hat aber ein Client die .campaign nicht in einer .pk3 vorliegen, werden ihm keine Informationen zur Kampagne angezeigt. Das hat zur Folge, dass:

  - die Kampagne nicht im Vote Menü zu sehen ist
  - die Schauplätze der Maps nicht angezeigt werden
  - die Gesamtanzahl und Reihenfolge der Maps nicht zu sehen ist

  Auch wenn die Standard-Kampagnen cmpgn_centraleurope und cmpgn_northafrica ungültig werden, erscheinen sie weiterhin im Vote Menü. Sollten sie über eine Abstimmung aufgerufen werden passiert nichts.
  Standard: ""

vote_allow_surrender [1|0]
vote_allow_nextcampaign [1|0]
vote_allow_restartcampaign [1|0]
vote_allow_poll [1|0]
vote_allow_maprestart [1|0]
vote_allow_shufflenorestart [1|0]

  Variablen, die die entsprechenden Abstimmungen erlauben oder nicht. vote_allow_surrender: Ihr gebt euch auf der laufenden Map geschlagen, es wird die nächste Karte geladen, bzw. die nächste Runde (SW) gestartet. vote_allow_nextcampaign: Lädt die nächste Kampagne im Zyklus. (Früher: vote_allow_nextmap bei gametype 4 für nächste Kampange) vote_allow_restartcampaign: Lässt die Kampagne neu starten. vote_allow_poll: Damit könnt ihr eine beliebige Umfrage starten. /callvote poll etpub ist super.
  Standard: 1

g_fear [integer]

  Verwendet ein Spieler den /kill Befehl innerhalb von [integer] Millisekunden, nachdem er Schaden durch einen Gegner genommen hat, wird dem Gegner, von dem der Spieler zuletzt getroffen wurde, der kill zugesprochen. Intern wird der kill als "mod_fear" eingetragen. Einschränkungen hierbei sind, der Angreifer muss im Gegnerischen Team und noch am Leben sein.
  In den Statistiken von ET wird der kill der Waffe zugeschrieben, die dem Spieler den letzten Schaden zugefügt hat.
  Standard: 2000 (2 Sekunden)

g_msgX [string]

  Mit Hilfe der g_msgX Variablen könnt ihr auf eurem Server Banner anzeigen lassen. X steht dabei für die Stelle, an der der jeweilige Text erscheinen soll. Ihr müsst bei 1 beginnen und dürft keine Lücken/Sprünge einbauen. Der Server würde bei Auslassung einer Zahl wieder bei Banner 1 beginnen.
  Standardmäßig sind keine Banner definiert.

g_msgS [integer]

  Hiermit stellt ihr den zeitlichen Abstand zwischen euren Bannern ein. [integer] ist dabei die Zeit in Sekunden zwischen zwei aufeinanderfolgenden g_msgX.
  Standard: 0

g_msgPos [integer]

  Für den Anzeigeort eurer Banner habt ihr drei Möglichkeiten:

  0 | Chat Bereich
  1 | Untere Mitte des Bildschirms
  2 | Linkes Nachrichtenfeld

  Standard: 0

  #### Beispiel:

  Damit ihr Banner zum Laufen bekommt müsst ihr mindestens eine g_msgX definieren und bei g_msgS einen Wert größer 0 angeben.

      set g_msgS 	"20" 		//Zwischen der Anzeige der einzelnen Banner wird jeweils 20 Sekunden gewartet.
      set g_msgPos 	"1" 		//Banner kommen in die untere Bildschirmmitte
      set g_msg1 	"^1Wir ^2beginnen ^3mit ^4einer ^5bunten ^6Zeile."
      set g_msg2 	"Mit der nächsten Zeile wollen wir eine Pause einbauen, daher setzen wir nur einen Farbcode."
      set g_msg3 	"^0"
      set g_msg4 	"Dieser Text wird also 40 Sekunden nach Banner 2 angezeigt."
      set g_msg5 	"Nach der letzten g_msgX Zeile beginnt der Zyklus von vorne."

g_obituary [integer]

  Diese Variable kontrolliert, wie Todesnachrichten vom Server gehandhabt werden. Normalerweise werden diese im Nachrichtenbereich (cpm) links unten, mit einem vorangestellen Totenkopf angezeigt. Ihr habt dafür jetzt folgende Optionen:

  0 | Todesnachrichten werden deaktiviert.
  1 | Alle Todesnachrichten werden vom ET Client mit dem EV_OBITUARY Ereignis gehandhabt. Da der etmain Client nicht alle "Todesarten" von ETpub kennt (z.B. MOD_GOOMBA, MOD_POISON) werden fü diese die Standardmeldungen angezeigt.
  2 | Nur die dem ETmain Client bekannten Todesnachrichten werden vom ihm gehandhabt. Dem Client unbekannte MODs werden vom Server übernommen.
  3 | Alle Todesmeldungen werden vom Server gehandhabt. Den Clients wird das EV_OBITUARY Ereignis nicht mehr gesendet. Dadurch werden die Todesnachrichten immer sofort angezeigt, allerdings wird dann kein Totenkopf mehr vor der Nachricht angezeigt und ihr werdet ein erhöhtes Datenaufkommen zu verzeichnen haben. (Wenn ihr diese Option setzt könnt ihr ab Version 0.6.1 Custom Obituaries verwenden.)

  Siehe auch g_logOptions.
  Standard: 2

min_airstriketime [integer]

  Zeit in Sekunden, die zwischen zwei Luftschlägen des gleichen Teams vergehen muss
  Standard: 10

min_artytime [integer]

  Zeit in Sekunden, die zwischen dem Anfordern von Artillerieunterstützung für das gleiche Team vergehen muss. Wird weitere Artillerieunterstützung angefordert, bevor min_artytime vergangen ist werdet ihr mittels "Insuffient fire support" darauf hingewiesen.
  Standard: 10

g_throwableKnives [integer]

  Hiermit legt ihr die Anzahl an Messern fest, mit denen ein Spieler startet. Diese können dann mittels /throwknife (bzw. /bind X throwknife) geworfen werden. Mit /knives könnt ihr euch anzeigen lassen wieviele Messer ihr noch zur Verfügung habt. Zum deaktivieren auf 0 setzen.
  Standard: 0

g_maxKnives [integer]

  Maximale Anzahl an Messern die ein Spieler aufnehmen kann.
  Standard: 5

g_knifeDamage [integer]

  Höchstschaden den ein Messer verursachen kann. Der tatsächliche Schaden wird zufällig ermittelt.
  Standard: 35

g_throwKnifeWait [integer]

  Zeit in Sekunden, die ein Spieler warten muss, bis er erneut ein Messer werfen kann.
  Standard: 2

g_constructibleXPSharing [0|1]

  Helfen mehrere Ingenieure ein Objekt zu errichten werden die Erfahrungspunkte entsprechend der erbrachten Leistung aufgeteilt. Derjenige, der am meisten dazu beigetragen hat, bekommt also die meisten Erfahrungspunkte.
  Standard: 0

g_asblock [integer]

  Luftschlag blocken. Mögliche Optionen sind:

  1 | Mache eine Ansage für jeden geblockten Luftschlag.
  2 | Spieler können einen Luftschlag verhindern, indem sie sich auf die gegnerische Rauchgranate stellen, knien oder legen.
  4 | Platzhalter ^^.
  8 | Luftschläge von FieldOps Stufe 3 und 4 können nicht blockiert werden.

  Standard: 0

g_partyPanzersEnabled [0|1]

  Setzt diese Variable auf 1 um PartyPanzers zu aktivieren.
  Standard: 0

g_partyPanzersPattern [string]

  Hiermit könnt ihr das Muster der Projektile frei definieren. [string] ist dabei eine Abfolge von Nullen und Einsen (bits) die festlegen, wohin Projektile fliegen. Der Standardwert "10001;01010;00100;01010;10001" erzeugt z.B. fünf Reihen mit jeweils fünf Projektilen. Die 1 steht für das Vorhandensein eines Projektils, die 0 für das Fehlen. Die einzelnen Reihen werden durch einen Strichpunkt (Semikolon = ;) voneinander getrennt. Das sich ergebende Muster ist in unserem Falle demnach ein "X".
  Die Anzahl der Projektile ist nicht beschränkt, zu viele können aber zu starken lags auf dem Server führen.
  Standard: "10001;01010;00100;01010;10001"

g_partyPanzersDamageMode [integer]

  Legt den durch PartyPanzers erzeugten Schaden fest. Mögliche Optionen:

  0 | Kein Schaden.
  1 | Normaler Schaden. Jedes Projektil erzeugt normalen Schaden.
  2 | Prozentualer Schaden. Alle Projektile zusammen verursachen normalen Schaden. Werden z.B. 10 Projektile abgeschossen, dann verursacht jedes Projektil das einen Spieler trifft 1/10 des normalen Schadens.

  Standard: 2

g_panzersVulnerable [0|1]

  Setzt ihr den Wert dieser Variable auf 1, werden auch in die Luft abgegebene Schüsse explodieren. Ist party panzers aktiviert, werden aufgrund des Flächenschadens auch in der Nahe befindliche Projektile zum explodieren gebracht.
  Standard: 0

g_panzersSpeed [integer]

  Geschwindigkeit der PartyPanzers. Normale Projektilgeschwindigkeit ist 2500.
  Standard: 2500

g_panzersGravity [integer]

  Auf 1 gesetzt bedingt diese Variable, dass die Flugbahn der Projektile von der Schwerkraft beeinflusst wird. (Wirkt auf normale und party panzers)

g_realhead [0|1]

  Head Box Positionen. Optionen sind:

  0 | Normale Head Box Position.
  1 | Der Server verfolgt die Animationen, so dass die Head Box genau zum Playermodel passt. Empfohlen.

  Der Code hierfür stammt ursprünglich von ET Pro (b_realhead). Er wurde von zinx geschrieben und durch forty zu ETpub hinzugefügt.
  Standard: 1

g_dyno [bitmask]

  Verhalten von Dynamit. Zur Verfügung stehende Optionen:

  1 | Sudden Death Dynamit. Wenn auf der Rundenuhr 30 Sekunden oder weniger verbleiben und Dynamit wird an einem Missionsziel plaziert, so läuft das Spiel weiter, bis das Dynamit entschärft wird oder es explodiert. Es ist nicht erlaubt weiteres Dynamit während dieser Zeit scharf zu machen.
  2 | Dynamit verkettung wird ermöglicht. Dynamit bringt ähnliche Sprengsätze zum explodieren. Dynamit, das nicht an Missionszielen plaziert wurde, wird andere Sprengladungen die ebenfalls nicht an Zielen plaziert sind mit zum explodieren bringen. Dynamit, das an einem Missionsziel gelegt wurde wird nur Dynamit zünden, das am gleichen Objekt liegt.

  Standard: 0

g_canisterKick [integer]

  Rauch- und Handgranaten kicken. Erlaubt es Spielern Rauch- (also Nebel- und Markierungsgranaten) und Handgranaten [integer] weit zu schiessen. Ein Wert von 75 ist zu empfehlen, 60 wären wenig sinnvoll, 125 wohl zu viel.
  Standard: 0

g_killingSpree [integer]

  Das ist die Anzahl kills bzw. deaths die ein Spieler am Stück ansammeln muss, bevor eine "spree message" ausgegeben wird.
  Setzt ihr diese Variable z.B. auf 5, so erhält ein Spieler nach 5, 10, 15, 20 usw. kills oder death am Stück die entsprechenden Nachrichten.

  Ist der Bitschalter g_misc8 gesetzt, werden jede Minute die drei Besten sprees und alles zwei Minuten der Beste spree der Karte angezeigt. Setzt den Wert dieser Variable auf Null um diese Funktion zu deaktivieren.
  Standard: 0

g_killingSpreePos [integer]

  Legt den Anzeigeort der "killing spree" Nachrichten fest. Verfügbare Optionen sind:

  0 | Chat Bereich
  1 | Untere Mitte des Bildschirms
  2 | Linkes Nachrichtenfeld

  Standard: 0

g_killingSpreeMsg_end [string]

  Der Text, der das Ende eines "killing spree" anzeigt.
  [n] wird durch den Spielernamen ersetzt.
  [k] wird durch die Anzahl an kills ersetzt.
  [a] wird durch den Spielernamen ersetzt, der den Blutrausch beendet hat.

  Standard: "[n]^8's killing spree came to an end after ^7[k] ^8kills."

g_killingSpreeMsg_tk [string]

  Der Text, der ausgegeben wird, wenn der Blutrausch durch einen Mannschaftskameraden beendet wurde.
  [n] wird durch den Spielernamen ersetzt.
  [k] wird durch die Anzahl an kills ersetzt.
  [a] wird durch den Spielernamen ersetzt, der den Blutrausch beendet hat.

  Standard: "[n]^8's killing spree was stopped by a ^1TEAMKILL^8 after ^7[k] ^8kills!"

g_killingSpreeMsg_futility [string]

  Der Text, der bei einem anti-kill spree ausgegeben wird.
  [n] wird durch den Spielernamen ersetzt.
  [d] wird durch die Anzahl bisheriger deaths ersetzt.

  Standard: "[n] ^8seems to be having a bad day... ^7[d] ^8deaths without a kill!"

g_killingSpreeMsg_default [string]

  Standard Text der einen stattfindenden Blutrausch aufzeigt.
  [n] wird durch den Spielernamen ersetzt.
  [k] wird durch die Anzahl an kills ersetzt.

  Standard: "[n] ^8is on a killing spree ^7[k] ^8kills without a death!"

g_killingSpreeMsg_X [string]

  Text, der anstelle von g_killingSpreeMsg_default verwendet wird, für ein X-faches an kills. [n] wird durch den Spielernamen ersetzt.
  [k] wird durch die Anzahl an kills ersetzt.

  Einige Beispiele:

      set g_killingSpreeMsg_1 "[n] ^8is on a killing spree! ^7[k] ^8kills without a death!"
      set g_killingSpreeMsg_2 "[n] ^8is a killing machine! ^7[k] ^8kills without a death!"
      set g_killingSpreeMsg_3 "[n] ^8is on a rampage! ^7[k] ^8kills without a death!"
      set g_killingSpreeMsg_4 "[n] ^8is dominating! ^7[k] ^8kills without a death!"
      set g_killingSpreeMsg_5 "[n] ^8is invincible! ^7[k] ^8kills without a death!"

  Standardmäßig wird g_killingSpreeMsg_default verwendet

g_dmgKnife [integer]

  Durch das Messer verursachter Schaden.
  Standard: 10

g_dmgSten [integer]

  Durch die Sten verursachter Schaden.
  Standard: 14

g_dmgFG42 [integer]

  Durch das FG 42 verursachter Schaden.
  Standard: 15

g_dmgPistol [integer]

  Durch die Pistolen verursachter Schaden.
  Standard: 18

g_dmgSMG [integer]

  Durch die vollautomatischen Gewehre verursachter Schaden (MP 40 und Thompson).
  Standard: 18

g_dmgMG42 [integer]

  Durch das MG 42 verursachter Schaden.
  Standard: 18

g_dmgMG [integer]

  Durch ein auf eine Lafette montiertes Maschinengewehr verursachter Schaden.
  Standard: 20

g_dmgFG42Scope [integer]

  Durch ein FG 42 verursachter Schaden, wenn anvisiert wurde.
  Standard: 30

g_dmgInfRifle [integer]

  Durch einen Karabiner (K43 Garand) verursachter Schaden.
  Standard: 43

g_dmgSniper [integer]

  Durch einen Karabiner verursachter Schaden, wenn anvisiert wurde.
  Standard: 50

g_dmgFlamer [integer]

  Durch einen Flammenwerfer, pro Kick, verursachter Schaden. Legt auch den Schaden fest, den ein in Brand gesteckter Spieler erleidet.
  Standard: 5

g_dmgGrenade [integer]

  Durch eine Granate verursachter Schaden.
  Standard: 250

g_dmgGrenadeRadius [integer]

  Explosionsradius einer Granate
  Standard: 250

g_dmgGLauncher [integer]

  Durch eine Gewehrgranate verursachter Schaden.
  Standard: 250

g_dmgGLauncherRadius [integer]

  Explosionsradius einer Gewehrgranate
  Standard: 250

g_dmgLandmine [integer]

  Durch eine Landmine verursachter Schaden.
  Standard: 250

g_dmgLandmineRadius [integer]

  Explosionsradius einer Landmine.
  Standard: 250

g_dmgSatchel [integer]

  Durch eine Sprengladung verursachter Schaden.
  Standard: 250

g_dmgSatchelRadius [integer]

  Explosionsradius einer Sprengladung.
  Standard: 250

g_dmgPanzer [integer]

  Durch ein Panzerfaustgeschoss verursachter Schaden.
  Standard: 400

g_dmgPanzerRadius [integer]

  Explosionsradius eines Panzerfaustgeschosses.
  Standard: 300

g_dmgMortar [integer]

  Durch eine Mörsergranate verursachter Schaden.
  Standard: 300

g_dmgMortarRadius [integer]

  Explosionsradius einer Mörsergranate.
  Standard: 400

g_dmgDynamite [integer]

  Durch Dynamit verursachter Schaden.
  Standard: 400

g_dmgDynamiteRadius [integer]

  Explosionsradius von Dynamit.
  Standard: 400

g_dmgAir [integer]

  Durch einen Luftschlag pro Bombe verursachter Schaden.
  Standard: 400

g_dmgAirRadius [integer]

  Explosionsradius eines Luftschlages pro Bombe.
  Standard: 400

g_dmgArty [integer]

  Durch Artillerie pro Geschoss verursachter Schaden. Setzt ihr diesen Variable auf einen Wert größer Null, wird das erste Geschoss (Zielgeschoss) ganz normal verschossen verursacht aber nur minimalen Flächenschaden.
  Standard: 400

g_dmgArtyRadius [integer]

  Explosionsradius der Artilleriegeschosse.
  Standard: 400

g_dmg [bitmask]

  Variable für experimentelle, verbesserte Gefechtsoptionen. Ihr habt folgende Möglichkeiten:

  0 | Verwendet die Ursprünglichen ET Einstellungen für Gefechte.
  1 | Verwendet ein verbessertes Schadensmodell. Es wird zwischen Kopf, Armen, Beinen und Rumpf unterschieden.
  2 | Verursachter Schaden wird Entfernungsabhängig. Dadurch werden Waffen auf große Distanzen weniger effektiv.
  4 | Nahkampfwaffen erhalten auf kurze Distanz einen Bonus. Sie werden dadurch im Nahkampf effektiver.
  8 | Schätzt das Absinken der Kugel bei der Berechnung der Flugbahn ab.
  16 | Verbessert die Treffgenauigkeit der Karabiner.
  32 | Verbessert die Treffgenauigkeit der KaraVerwendet ein anderes Streumuster für Automatik- und Schnellfeuerwaffen.
  64 | Verbessert die Treffgenauigkeit der KaraSchaden von Zuschauern oder Spielern die den Server bereits verlassen haben wird nicht berücksichtigt und es werden keine Erfahrungspunkte vergeben.

  Standard: 0

g_dmgHeadShotMin [Integer]

  Dies stellt den, durch einen Kopfschuss verursachten, Mindestschaden dar, unabhängig von der Waffe. Kopfschüsse, die weniger Schaden verursachen würden werden aufgewertet. Kopfschüsse, die mehr Schaden verursachen würden, vervielfachen ihren Schaden nach g_dmgHeadShotRatio. (Der Tatsächliche Schaden kann noch von weiteren Parametern abhängen.)
  Standard: 50

g_dmgHeadShotRatio [float]

  Hiermit stellt ihr den Multiplikator für Kopfschüsse ein die mehr als g_dmgHeadShotMin Schaden verursachen (z.B. für Scharfschützengewehre).
  Standard: 2.0

g_reflectFriendlyFire [float]

  Ähnlich zu shrubs g_friendlyfire 2 Variable. [float] ist dabei ein Verstärkungsfaktor, der festlegt, wieviel Schaden auf einen Spieler zurückgeworfen wird, der einen Kameraden verwundet hat. Diese Einstellung ist unabhängig von g_friendlyfire. Daher kann sie sowohl auf FF Servern wie auch auf non-FF Servern eingesetzt werden.
  Ein Wert von 1.0 würde den kompletten Schaden reflektieren, ein Wert von 0.5 die Hälfte. 0 zum deaktivieren.
  Standard: 0

g_reflectFFWeapons [bitmask]

  Legt fest, von welchen Waffen der Schaden reflektiert wird, wenn g_reflectFriendlyFire aktiviert ist. Würdet ihr den Wert hier auf 0 setzen würde das g_reflectFriendlyFire ebenfalls deaktivieren. Ihr habt folgende Kategorien zur Auswahl:

  1 | Schaden von Handfeuerwaffen wird zurückgeworfen. (Gewehre, Pistolen)
  2 | Schaden von Granaten und Granatwerfern wird zurückgeworfen.
  4 | Schaden von Messern wird zurückgeworfen. (Eingeschlossen geworfene Messer)
  8 | Schaden von Panzerfäusten wird zurückgeworfen.
  16 | Schaden von Flammenwerfern wird zurückgeworfen.
  32 | Schaden von Mörsern wird zurückgeworfen.
  64 | Schaden von Sprengladungen wird zurückgeworfen.
  128 | Schaden von Artillerie und Luftschlag wird zurückgeworfen.
  256 | Schaden von Dynamit und Konstruktionen wird zurückgeworfen.
  512 | Schaden von Landminen wird zurückgeworfen.

  Standard: 31 (Handfeuerwaffen + Granaten + Messer + Panzerfäuste + Flammenwerfer)

g_friendlyFireOpts [bitmask]

  Erlaubt eine Anpassung der g_friendlyfire Variable. Es gibt folgende Optionen:

  1 | Landminen fügen Teammitgliedern immer Schaden zu.
  2 | Landminen fügen Teammitgliedern immer SErlaubt Granatensprünge auch bei ausgeschaltetem friendly fire.
  4 | Landminen fügen Teammitgliedern immer SNicht-Ingenieur Spieler lösen keine Minen gegen ihr eigenes Team aus.

  Standard: 0

team_maxMedics [string]
team_maxEngineers [string]
team_maxFieldOps [string]
team_maxCovertOps [string]

  Beschränkt die Anzahl Spieler, die ein bestimmte Klasse (je Mannschaft) spielen dürfen. Ihr könnt entweder einen festen Wert definieren oder ihr legt einen Prozentualen Wert mit Hilfe des % Zeichens fest. Bei Prozentualen Werten wird immer aufgerundet!

  Bsp.1:set team_maxMedics "5"
  Beschänkt die Anzahl an Sanitätern auf 5 pro Team. Unabhängig von der Spieleranzahl.

  Bsp.2:set team_maxMedics "15%"
  Beschränkt die Anzahl an Sanitätern auf 15% je Team. Bei 8 Spielern auf jeder Seite (15% entsprechen dann 1.2 -> aufgerundet 2) wären dann 2 Sanitäter erlaubt.

  -1 entfernt das Limit.
  Standard: -1

g_staminaRecharge [float]

  Vervielfacht die Rate mit der sich die Ausdauer regeneriert. Setzt ihr diesen Wert auf 0 lässt sich Ausdauer nur mit einer Adrenalinspritze zurückgewinnen. Ihr solltet diese Option nur verwenden, wenn ihr etpubclient 20050927 oder neuer verwendet.
  Standard: 1.0

g_shortcuts [0|1]

  Aktiviert verschiedene Abkürzungen die ihr für Nachrichten verwenden könnt.

  [a] | Der Spieler der dir zuletzt Munition gegeben hat.
  [d] | Der Spieler der dich zuletzt getötet hat.
  [h] | Der Spieler der dir zuletzt Medizin gegeben hat.
  [k] | Der Spieler den du zuletzt getötet hast.
  [l] | Deine Position (Buchstabe, Zahl).
  [n] | Dein Name.
  [r] | Der Spieler der dich zuletzt wiederbelebt hat.
  [p] | Der Spieler den du zuletzt angesehen hast.
  [s] | Deine verbleibenden Lebenspunkte.
  [w] | Die Bezeichnung deiner derzeitigen Waffe.
  [t] | Deine Restmunition für deine derzeitige Waffe.

  Standard: 0

### Server Konsolen Befehle

Die folgenden Server Konsolen Befehle wurde in ETpub hinzugefügt. Ihr könnt sie in der Server Konsole oder über Rcon verwenden.

chat [Nachricht]

  Zeigt eine Nachricht im Chatbereich aller Spieler an.

chatclient [slot#|name] [Nachricht]

  Zeige eine Nachricht im Chatbereich eines bestimmten Spielers an. Für name genügt auch ein Teil, sollte der Teil für mehrere Spieler zutreffen, so bekommt jeder von diesen die Nachricht. Auf diese Weise könnt ihr z.B. einen ganzen Clan anschreiben.

clearxp

  Löscht die Erfahrungspunke aller Spieler.

cp [Nachricht]

  Zeigt eine Nachricht in der Bildschirmmitte aller Spieler an.

cpmsay [Nachricht]

  Zeigt eine Nachricht im popup-Bereich aller Spieler an.

forcecvar [Variable] [Wert]

  Zwingt alle Clients eine Variable auf einen bestimmten Wert zu setzen.

m [slot#|name] [Nachricht]

  Versendet eine private Nachricht an einen Spieler. Es genügt ein Teil des Names, sollte der Teil auf mehrere Spieler passen, erhalten sie alle die Nachricht.

playsound [Dateiname]

  Spielt eine Klangdatei ab. Alle Spieler hören den Inhalt der Datei.

ratingsinfo

  Gibt die Bewertungspunkte aus, die jedes Team erhalten würde, wenn es diese Karte gewinnen würde.

readxp

  Benötigt eingeschaltetes g_tyranny. Lädt die Datei mit den gespeicherten Erfahrungspunkte von der Festplatte. Es gibt keinen Grund diese Funktion aufzurufen, da ETpub die Erfahrungspunkte automatisch lädt, wenn sie gebraucht werden.

writexp

  Schreibt die im Speicher befindlichen Erfahrungspunkte auf die Festplatte. ETpub macht das nach jeder Karte und beim Beenden des Server automatisch.

Zusätzlich könnt ihr alle shrubbot Befehle über die Konsole verwenden. Dabei ist das Ausrufezeichen am Anfang optional.

### Shrubbot

Shrubbot ist eine Erfindung von Ryan Mannion. Etpub versucht Shrubbot, was Bedienung und Konfiguration anbelangt, so genau wie möglich nachzuempfinden.

Unterhalb stehen die von ETpub bereits unterstützten Shrubbot Kommandos mit ihren dazugehörigen Kürzeln (Buchstaben in Klammern) für die Shrubbot Konfigurationsdatei.

!readconfig | (G) | Liest die shrubbot.cfg neu ein.
!time | (C) | Zeigt die aktuelle Serveruhrzeit an.
!setlevel | (s) | Hiermit legt ihr die shrubbot Stufe für einen Spieler fest (siehe unten). Ein Spieler kann keine Stufe höher vergeben als die seine.
!kick | (k) | Damit könnt ihr Störenfriede vom Server schmeißen. Verwendung: !kick Spielername/Spielernummer Grund
!ban | (b) | Für den Fall, dass ihr jemanden mal für etwas länger oder für immer loswerden wollt. Verwendung: !ban Name/Nummer Zeitdauer Grund
!unban | (b) | Falschen Spieler gebannt? Mit !unban könnt ihr ihn wieder entbannen. Verwendung: über !showbans die gewünschte BanID heraussuchen und dann mit !unban Nummer entbannen.
!putteam | (p) | Zum verschieben von Spieler. Verwendung: !putteam Name/Nummer b/r/s. (b=blue=Alliierte; r=red=Axen; s=Spectator)
!pause | (Z) | Pausiert das Spiel für 5min.
!unpause | (Z) | Setzt das Spiel vorzeitig fort.
!listplayers | (i) | Gibt die Liste der Spieler auf dem Server mit Spielernummer (id), Adminlevel, Erfahrungspunkten etc. aus (Konsole). Dieser Liste entnehmt ihr die Nummern für die jeweiligen Befehle
!mute | (m) | Deaktiviert die Sprachsounds eines Spielers. Verwendung: !mute Name/Nummer
!unmute | (m) | Hebt !mute auf. Verwendung siehe !mute.
!showbans | (B) | Zeigt euch eine Liste mit bis zu 30 verhängten Bans an. Verwendung: !showban [ab]. Es werden die Bans von [ab] beginnend angezeigt, falls ihr einen Wert angegeben habt. Ihr könnt auch einen negativen Wert angeben um die neuesten Bans zu sehen.
!help | (h) | Zeigt euch entweder an, welche Befehle ihr zur Verfügung habt (!help) oder gibt euch Infos zur Verwendung eines bestimmten Befehls (Bsp.:!kick help).
!admintest | (a) | Gibt euren Adminlevel und Levelnamen aus.
!cancelvote | (c) | Beendet die laufende Abstimmung.
!spec999 | (P) | Verschiebt alle Spieler mit Ping 999 zu den Spectators.
!shuffle | (S) | Teilt die Spieler neu auf die Teams auf. Im Gegensatz zum normalen ETmain ref shuffle, wird die laufende Runde nicht neu gestartet.
!rename | (N) | Damit könnt ihr einen Spieler umbenennen. Es wird nur der dem Server bekannte Name geändert, die CVar name auf dem Client selber wird nicht verändert. Verwendung: !rename Name/Nummer neuerName
!gib | (g) | Tötet den angegebenen Spieler, er kann also nicht von einem Medic geheilt werden. Verwendung: !gib Name/Nummer
!slap | (A) | Gibt einem Spieler einen kleinen Klaps. Verwendung: !slap Name/Nummer
!burn | (U) | Zündet einen Spieler an. Schaden entspricht einem Schuss aus dem Flammenwerfer (ca. 5LP). Verwendung wie !slap.
!warn | (R) | Gibt eine Warnung aus. Verwendung: !warn Name/Nummer Grund
!news | (W) | Spielt die Map Nachrichten ab. Gibt es bei den Originalen und wenigen Custom Maps. Die selben Aufnahmen werden auch abgespielt, wenn ihr im Limbo-Menü, rechts von den Missionszielen, auf den goldenen "play" Knopf drückt.)
!lock | (K) | Sperrt die Teams.
!unlock | (K) | Entsperrt die Teams.
!lol | (x) | Die Spieler (oder einer) lassen einen Ring von Handgranaten fallen, die sofort nach dem Aufprall explodieren. Verwendung: !lol Name/Nummer oder !lol
!restart | (r) | Die laufende Map beginnt von neuem, die seit Rundenbeginn gesammelten Erfahrungspunkte gehen verloren.
!reset | (r) | Map startet neu und die Erfahrungspune bleiben erhalten.
!pip | (z) | Erzeugt kleine fliegende Funken um einen/alle Spieler (cg_wolfparticles muss auf 1 stehen). Verwendung: !pip Name/Nummer oder !pip
!pop | (z) | Ein bzw. alle Spieler verlieren einen Helm. Verwendung: !pop Name/Nummer oder nur !pop.
!fling/!launch/!throw | (l) | !fling und !throw schleudern einen Spieler herum, !launch schießt ihn in die Luft. Verwendung: !fling Name/Nummer
!flinga/!launcha/!throwa | (L) | Betrifft alle Spieler statt nur einen. !fling(a) a:= alle.
!listteams | (I) | Zeigt euch Informationen über die Teams an. Spieler, Erfahrungspunkte der Teams auf der Karte, Erfahrungspunkte insgesamt, durchschnittlicher Ping. Am Ende der Liste wird ausgegeben, mit welcher Wahrscheinlichkeit die Mannschaften gewinnen. Die Mannschaft mit mehr Punkte wird eher verlieren! Es ist daher eine gute Methode der Mannschaft beizutreten, die mehr Punkte hat oder ihr Spieler zuzuweisen, um die Teams auszugleichen.
!passvote | (V) | Gegenstück zu !cancelvote.
!disorient | (d) | Stellt das Bild eines Spielers auf den Kopf. Wird ein Grund angegeben, wird dieser auf dem Schirm angezeigt. Verwendung: !disorient [Name|Nummer] [Grund]
!orient | (d) | Macht !disorient rückgängig. Verwendung: !orient [Name|Nummer]
!resetxp | (X) | Löscht die Erfahrungspunkte und setzt alle Fertigkeiten zurück. Ihr könnt auch einen Grund angeben. Verwendung: !resetxp [Name|Nummer] [Grund]
!swap | (w) | Vertauscht die Teams.
!nextmap | (n) | Lädt direkt die nächste Karte der Kampange bzw. der Rotation. Das Rundenende wird übersprungen.
!resetmyxp | (M) | Löscht alle Erfahrungspunkte des Spielers, der dieses Kommando ausführt.

Weiterhin werden folgende Kürzel unterstützt:

1 | kann durch vote nicht gekickt und nicht gemutet werden, man kann gegen ihn nicht complainen und er wird wegen Inaktivität nicht vom Server geschmissen.
2 | wird nicht zensiert.
3 | darf Befehle leise mit /!command über die Konsole ausführen.
4 | kann als Zuschauer Teamchats von Alliierten und Achsen sehen
5 | kann jederzeit das Team wechseln, unabhängig von der Spieleranzahl in den Teams.
6 | muss für !kick und !ban keinen Grund angeben.
7 | darf jederzeit, jede Abstimmung starten, auch wenn dieser evtl. in der Serverconfig deaktiviert wurde.
8 | muss bei einem Bann keine Zeitspanne angeben (Vorgabe: PERMANENT)
9 | Shrubbot Befehle können auch über Team- und Fireteamchat ausgeführt werden.

Die folgenden Anweisungen sind unter flags erlaubt:

*
  Dies bedeutet, dass alle alle Kommandos erlaubt sind. Alle Kürzel, die auf * folgen, werden verboten. So würde zum Beispiel:

      [level]
      level	= 5
      name	=
      flags	= *xU

  den Admins der Stufe 5, alle Befehle, bis auf !lol und !burn, geben.
-
  Entfernt die, für die darauf folgenden Kürzel stehenden, Befehle.
  Beispiel:

      [admin]
      name	= tjw
      guid	= XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      level	= 5
      flags	= -bs

  Dies würde tjw alle Befehle, die ein Level 5 Admin hat, geben, bis auf !ban und !setlevel
  ANMERKUNG: Dieser Operator ist nur für Admin Kürzel, nicht für Level.

+

  Der Vollständigkeit halber, denn eigentlich werden alle Kürzel hinzugefügt, es sei denn ihnen geht ein "-" voran. "+" ist daher nur nach einem "-" sinnvoll.

  Beispiel:

      [admin]
      name    = tjw
      guid    = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      level   = 5
      flags   = -bs+U

  würde tjw alle Befehle eines Level 5 Admins erlauben, bis auf !ban und !setlevel. Zusätzlich darf er !burn verwenden, was einem Level 5 Admin, in unseren Beispielen, normalerweise nicht erlaubt wäre.
  ANMERKUNG: Dieser Operator ist nur für Admin Kürzel, nicht für Level.

Die Shrubbot Konfigurationsdatei selbst besteht aus einzelnen Absätzen, die durch leere Zeilen voneinander getrennt sind. Drei Arten werden unterstützt: [level], [admin] und [ban]. Solltet ihr die Konfigurationsdatei einmal von Hand editieren, dann müsst ihr !readconfig auf dem Server ausführen oder den Server komplett neu starten, damit die änderungen übernommen werden.
Wenn ihr eine neue shrubbot.cfg anlegen wollt, müsst ihr nur die Cvar g_shrubbot auf den gewünschten Namen setzen, mit ET auf den Server connecten und das folgende Kommando in die Serverkonsole schreiben:

/rcon rconPasswort !setlevel ETPlayer 5

Für ETPlayer setzt ihr natürlich euren eigenen Namen ein. Dies erzeugt euch dann die shrubbot.cfg mit den Standardleveln und eurer Punkbuster guid als Level 5 Admin. Ihr könnt dann die verschiedenen Stufen in der Datei nach Belieben anpassen und danach mittels !readconfig die änderungen einlesen lassen.
Ihr könnt mit etpub bis zu 32 verschiedene [level], 32768 Admins und 1024 Bans definieren. Den einzelnen Leveln und Admins könnt ihr bis zu 64 Flags zuweisen.

### Allgemeine Änderungen

- Beim Teamwechsel wird die Statistik nicht zurückgesetzt.
- Die meisten ETpro Waffenänderungen wurden übernommen.
- Banis self-headshot Bugfix wurde verwendet.
- Banis Bugfix für überlange Serverkommandos wurde übernommen.
- Es ist nicht länger möglich die Uniform einer Leiche zu stehlen, die bereits im Boden versunken ist.
- Bei Servern mit begrenzten Leben, die eine Map mit zwei Zielen am Laufen haben, bekommen Spieler, die nach Ablauf der Rundenzeit joinen, nicht mehr unbegrenzt Leben.
- XPShuffle sortiert nicht länger nach den aktuellen Erfahrungspunkten, sondern nach der Geschwindigkeit mit der ein Spieler XP gesammelt hat.
- Referee Kommandos funktionieren auch über Rcon.
- Schüsse auf zerbrechliche Gegenstände (Fenster, Stühle) werden nicht mehr als Treffer gewertet, dafür aber Schüsse auf Verwundete.
- Spieler dürfen keine Waffen mehr aufheben, die sie nicht auch im Limbo Menü auswählen könnten. (Betrifft vor allem Soldaten)
- Auf Servern mit begrenzter Anzahl Leben endet eine Map mit zwei Zielen, wenn einem Team die Leben ausgehen, auch wenn kein Objective erfüllt wurde.
- Die Hitboxen sind nun für diverse Spielerstellungen genauer. (Siehe auch g_hitboxes)
- Ein pausiertes Spiel wird spätestens, nach den mit match_timeoutlength definierten Sekunden, wieder gestartet.
- Bei Spielern, die die Mannschaft gewechselt haben, wird nun kein Totenkopf mehr neben dem Namen angezeigt. (betrifft nur Server mit unbegrenzt Leben)
- Die Teams werden nun nicht mehr zu Beginn der Aufwärmphase gesperrt.
- cp, cpmsay, cpm, chatclient, m, und private Konsolen Kommandos wurden hinzugefügt.
- Akimbos können auch nach Abgabe von nur einem Schuss nachgeladen werden.
- Seid ihr verwundet, sollte euer Blick keinem nichtMedic mehr folgen.
- Wenn ihr durch einen Teamkammeraden das Spiel beobachtet, folgt ihr ihm nicht mehr, wenn er das Team wechselt.
- Chrukers Bugfixes sind eingeflossen (Project: Bug Fix).
- ignore und unignore Client Befehle nehmen nun auch Slotnummer und Teilnamen an.
- vsay* Befehle beachten die ignore Liste.
- Wird ein Client ignoriert, dann werden dessen Nachrichten in der Konsole angezeigt, nicht im Chat.
- /callvote comp (bzw. Ausführen der "competition settings") lässt den Server die default_comp.cfg, anstelle der mitgelieferten Einstellungen, laden.
- /callvote pub (bzw. Ausführen der "public settings") lässt den Server die default_pub.cfg, anstelle der mitgelieferten Einstellungen laden.
- Wenn ihr über das Laden der nächsten Karte abstimmt (/callvote nextmap) lädt der Server die jetzt die nächste map der Kampange anstelle der nächten Kampagne.
- Die vote_allow_maprestart CVar wurde hinzugefügt. Der ETmain Client wird den Button für maprestart allerdings auch anzeigen, wenn ihr die Abstimmungsmöglichkeit deaktiviert habt, da er im Client Code fest integriert ist.
- Custom Obituaries wurden hinzugefügt