Etadmin_mod Help


(Adrian) #1

Hey i have etadmin mod it says it installed but it dont read admin levels or killings spree or multi kills i dont know why any ideas


(stealth6) #2

etadmin mod is pretty annoying to install if you don’t know what you’re doing, but maybe you could give us a little more help then: “it doesn’t work”
is it just those features that don’t work, or the whole thing, which mod are you running it with etc?


(Nail) #3

documentation is here:
http://et.d1p.de/wiki/index.php/Main_Page


(ailmanki) #4

if it all appears to run fine - but does not, you might be using the wrong log file for etadmin mod.


(Adrian) #5

I am running it on Etpro When i restart the server then it says

Starting etadmin_mod: OK! [ 380 ? S 0:00 /usr/bin/perl bin/etadmin_mod2.pl instanz_base2 etc/etadmin.cfg]

Here is etadmin.cfg

ET Admin Mod Config-file

© Mark Davis <gaming@d1p.de> 2004-2005

etadmin_mod: ([d1p])H. Potter

Kontakt ueber www.gamesunited.de oder et.d1p.de

oder via E-Mail an obige Adresse.

Kommentarzeilen beginnen mit einer Raute (#)

und werden beim Einlesen der Config ignoriert.

Last update: 06.12.2005

Config Section:

[config]

debug

#-------

Debug Ausgabe zum debuggen

0 = aus, 1 = wenig, 2 = viel

debug output into the logfile ?

0 = off, 1 = few, 2 = much

debug = 0

dry Run

#--------

Dieser Modus ist zum testen. Wenn dieser aktiviert ist,

dann werden die RCON befehe nicht an den Server uebergeben,

sondern nur ins Logfile geschrieben.

This mode is for testing. If you activate this (1), then

all commands to the server will only be written to the

logfile

dry_run = 0

et_mod

#--------

Welcher mod laueft auf dem ET-Server ?

Which mod is running on the ET-server ?

0 == etmain

1 == shrub

2 == etpro

3 == headshod

et_mod = 2

logfile

#---------

Pfad zum Consolen Logfile. Diese Einstellung ist sehr wichtig!

Wenn hier was falsches eingestellt wird, dann wird der etadmin_mod

nicht funktionieren (er wird einfach nichts machen).

Path to the console logfile

This setting is very important. If you set this setting to a wrong

value, then the etadmin_mod will NOT work.

logfile = /home/europa3/.etwolf/etpro/logfilename.log

#####################################

input_type

#------------

Please choose, how you want the commands to be passed to the ET-server

Gueltige Optionen: udp / file

Wie sollen die Befehle an den ET-Server uebergeben werden?

Valid options: udp / file

input_type = udp

file Konfiguration / file configuration

#-----------------------------------------

You can ignore this part, if you choose input_type = udp

input_file

#------------

Bitte hier die Datei angeben, in die die Befehle geschrieben werden sollen.

NUR ausfuellen, falls input_type = file !

Please choose the file, where the commans have to be written in.

ONLY if input_type = file !

input_file = server.in

ENDE file Konfiguration / END file configuration

udp Konfiguration / udp configuration

#---------------------------------------

You can ignore this part, if you choose input_type = file

server_password

#-----------------

Hier bitte das RCON-Server Passwort eintragen.

Nur ausfuellen, falls input_type = udp

server_password => kurwaetpror45

ONLY if input_type = udp !

PLEASE CHANGE THIS TO YOUR SERVER

RCON PASSWORD, OR THE ETADMIN_MOD

WON’T WORK !

server_password =*******

server_addr

#-------------

Server IP or Adresse des ET-Servers.

Nur ausfuellen, falls input_type = udp

IP or hostname of your ET-Server.

ONLY if input_type = udp !

server_addr = 92.48.118.201

server_port

#-------------

ET-Server UDP-Port (standard ist 27960)

Nur ausfuellen, falls input_type = udp

Server Port (27960 is default)

server_port = 27964

ENDE udp Konfiguration / END udp configuration

###################

website

#---------

Hier die Webseite des Clans / Hosters eintragen, wo

man die Nicknames registrieren kann.

Your website, where players can register their

name (if they can).

website = www.eck-gaming.com

etadmin_serverlist

###########

This function updates the serverlist on et.d1p.de

Set this to 0, if you don’t want your server list there.

The serverlist is available here:

http://et.d1p.de/etadmin_mod/server_list.php

etadmin_serverlist = 1

########################################################################

spree_detector

#----------------

Killing Sprees im Spiel erkennen und anzeigen ?

(0 == aus, 1 == an)

Position und Anzahl koennen im Block [spree] und [positions]

weiter unten konfiguriert werden.

Detect multi kills and killing sprees (0/1)

Positions and Amount of kills can be configured in the

[spree] and [positions] section further below

spree_detector = 1

displays the longest spree

use !spree_record to see the current record

and !spree_reset to reset it.

these 2 commands have to be in the permission section.

longest_spree_display = 1

Shall the spree record be stored in a file?

If not, then the spree_record gets reset, when you

restart the etadmin_mod.

persistent_spree_record = 1

To have a record saved for every map:

0 = don’t save map spree’s

1 = save map spree’s and show mapspree / overall record at the end of a map

2 = save map spree’s and show longest spree / map_spree record at the end of map

persistent_map_spree_record = 2

for death sprees:

death_spree_detector = 1

spree_color (still used in some parts)

Used in last_blood and map spree record

spree_color = ^7

Announce first blood

first_blood = 1

Detect Multikills (UT like, 3 at once)

Note: The 3 kills have to be max. 3 seconds away from each other

multikill_detector = 1

Detect Monsterkills (UT like, 5 at once)

Note: 5 kills have to be max. 3 seconds away from each other

monsterkill_detector = 1

Displays the last kill of the round

in intermission.

last_blood = 1

HINT: See the etc/sound.cfg for sounds for firstblood, sprees, multikills oder else.

########################################################################

Birthday notifications

birthday_notifications = 1
birthdays_file = etc/birthdays.cfg

########################################################################

detect_uneven_teams

-------------------

displays messages, if teams are not even (+/-3 players).

e.g axis 3, allies 6 players -> message

detect_uneven_teams = 1

This is the first displayed warning, if uneven teams are detected.

uneven_warning1 = ^1Mhhh. Teams look pretty uneven… ^1Better ^1have ^1a ^1look!

This is the second warning. It will be displayed 30 seconds, after

the first warning has been displayed. This is the last warning before

the escalation command (gets executed on warning 3).

uneven_warning2 = ^1Teams are still uneven… ^1Please even up teams!
#uneven_warning2 = ^1Teams are still uneven… ^130 seconds before shuffle without restart!

This is the third warning and gets displayed right after the

escalation command (if there is a escalation command set)

uneven_warning3 = ^1Teams are still uneven… ^1Please even up teams!
#uneven_warning3 = ^1Teams have been shuffled. Please mind teams next time.

Uneven teams escalation rcon command (after 60 seconds uneven teams)

Note: This command is executed right before the 3 warning.

uneven_teams_escalation_cmd =
#uneven_teams_escalation_cmd = ref shuffleteamsxp_norestart

This is the last messages, that will be repeated every 30 seconds,

if teams won’t be even.

Note: This warning will not be reached, if your escalation command

is a shuffle (like shuffle_teams or ref shuffleteamsxp_norestart).

uneven_warning4 = ^1Mhhh. Teams still look pretty uneven… ^1Please ^1someone ^1even ^1teams!

########################################################################

if you want to protect one or more clantags (the clans-section)

set this to one:

clantag_protector = 0

Let admin level override password of a clantag protection ?

The value is the minimum level required for overriding

a clantag_protection password.

0 == disables

> 0 activated

admin_ctp_override = 3

########################################################################

enhanced warn command

#----------------------

replaces !warn with !warn <name|id> <reason>

You can use !dewarn to remove warning(level) from a player

!finger / !admintest to show the warning (also shown on server entry)

use_advanced_warn = 1

Max amounts of warnings:

If limit is reached, player gets kicked / banned

1 == immidiate kick on first warning

warn_limit = 4

When shall warnings decay (in days):

warn_timeout = 2

kick length in minutes.

> 5 -> temp ban, else normal kick

warn_kicklength = 5

###########################

advanced kick

#--------------

replaces !kick with !kick <name|id> [reason] (shrub like)

use_advanced_kick = 1

###########################

admin_greeting

#----------------

Sollen Admins begruesst werden ?

Ein Wert von 0 deaktiviert diese Funktion, ansonsten gibt

man hier den minimalen Admin Level an, der begruesst werden

soll.

Durch den Befehl: “setu hp_greeting 0” kann diese bei Bedarf

durch den Client abgeschaltet werden. Die standard Begruessungen

sind im Block [greetings] weiter unten definiert.

Shall Admins be welcomed ?

Value = minimum level to be greeted, 0 to deactivate

Default: 1

Can be deactivated by user command: “setu hp_greeting 0”

The greetings are defined in the [greetings] block below

admin_greeting = 1

name_protector

#----------------

Protect names (0/1)

name_protector = 1

Datei mit Name=GUID (pro line) fuer namensregistration

protected_file = etc/protected.cfg

Gib Protector (0/1)

Schaut nach Lightweapon Teammate gibs.

Funktioniert nur mit shrub mod und Gibs im Logfile

SHRUB ONLY

body_protector = 0

Admin functions (0/1)

admin_functions = 1

rcon_featback

shall the output of rcon commands be displayed ?

-1 => disabled

> 0 => enabled for this level and above

rcon_featback = 1

shall the replies of silent

commands be private (not visible to other users) ?

requires: etpro 3.1.9+

silent_private_messages = 1

if you set use_punkbuster = 1

then the kicks are made with punkbuster

this is recommended, because

punkbuster shows the reason in the client, after disconnect.

use_punkbuster = 1

Default length of a kick

default_kick_duration = 5

###########################

Shrub (compatible) Config file (for protected, admins, bans, …)

shrubbot_cfg = /home/europa3/et/etadmin_mod/etc/shrubbot.cfg

Which char must be put in front of the commands ?

command_prefix = !

Shall the external program calls / commands (See section [externals])

be permission based?

- If you set this to 0, all commands are automatically available for everyone.

- If you set this to 1, you have to configure every external command

in the permission section

permission_based_external_commands = 1

Bans aus dem shrubbot config file durchsetzen (0/1)

Kick beim joinen (inkl. 5 Minuten ban).

Nur notwendig, falls Shrubbot nicht aktiv !

manage_bans = 1

unix (unix timestamp) / shrub (seconds since 1.1.2000)

Default: unix (unix timestamp)

ban_timestamp_format = unix

This is the default reason displayed and inserted into the shrubbot.cfg

when you ban someone with the !ban command

ban_default_reason = Banned by admin

Activate Seen database (0/1)

requires Perl DB::File Module.

deactivate, if you don’t have it (you get a error on starting)

or can’t install it on your own.

seen_db = 1

Seen-DB File:

Choose a filename.

seen_db_file = var/seen.db

Path to the tail binary

tail = /usr/bin/tail

###########################

Votings canceln (0/1)

Aktiviert / Deaktiviert die unteren Funktionen

Cancel votings (0/1)

activates / deactivates features below

cancel_votes = 1

Votes nur alle X Minuten (pro Karte) zulassen (Minuten, 0 = deaktiviert)

How long shall a specfic vote be disabled (canceled) afte called.

allow_vote_minutes = 5

Cancel_mode (for map / campaign votes, like map_restart, shuffle_teams, …)

1 == X mins before end of map,

2 == after X% of map time,

3 == X minutes after mapstart (default)

cancel_mode = 3

Cancel time after a vote has been casted

Length in “minutes” (mode 1 or 3) OR “percent” (mode 2)

default: 10 for cancel_mode 3

cancel_time = 10

Defined, from which level Admins are allowed to cast votes

which are not affected by the cancel_vote restriction

0 = disable (admins aren’t allowed to vote either)

>= 0 minimum level for admins which are allowed to bypass vote_cancel.

cancel_adminlevel = 1

cancel votes for standard maps (railgun/battery/fueldump/goldrush/…)

Usefull for trickjump servers.

default: 0

cancel_standardmap_votes = 0

###############################

simple_stats

!stats shows kills/death/… since player joined.

Don’t forget to add the permission to lvl0 (or else)

simple_stats = 1

###############################

Intermission Mapvoting.

See here:

http://et.d1p.de/etadmin_mod/wiki/index.php/Intermission_Mapvoting

intermission_mapvoting = 0
intermission_mapfile = etc/maps.lst

###############################

loadable configs

----------------

There you can put configs, which you can load with !loadconfig

be aware, those settings may be temporarely, if map configs

overwrite these settings next map again or you do a !readconfig

loadable_configs = etc/configs

map_configs

-----------

directory of map specific configs.

you can use set everything in there,

but not permissions and dont forget to

specify a block ([config], [positions], …)!

see map_configs_order or map_configs_options

for more options (in which order and how

the map configs should be loaded).

#map_configs =
map_configs = etc/maps

maps config load order.

-----------------------

Which config shall be loaded first.

0 = first mapname.cfg, then default.cfg (default)

1 = first default.cfg, then mapname.cfg

Be aware: if you have map_configs_order = 1 and map_configs_options = 0,

then only default.cfg will be loaded, never mapname.cfg.

Only, if default.cfg doesn’t exist.

map_configs_order = 0

maps config options

------------------

Shall both config files be loaded?

0 = abort after first loaded config file (default)

1 = load both configs after another (default.cfg and mapname.cfg, order see map_configs_order)

Note: 1 is useful, if you have a default.cfg, which shall be loaded every map, but sometimes

overwritten by a special map config.

map_configs_options = 0

#############################

Automute

---------

If a player uses a "bad"word on the badword-list, he’ll get a warning like

‘this is your first and last warning, don’t use bads words on this server!’.

The second time he uses a badword, he gets muted for 1 minute, third time

he uses one: 2 minute, then 4, 8, 16, and so on

>>>>> ETPRO ONLY ATM <<<<<<

automute = 0

Which lvl of admins are not checked for badwords: (=>)

automute_override_lvl = 1

see file for documentation

or here: http://et.d1p.de/etadmin_mod/wiki/index.php/Automute

badwords_file = etc/badwords.lst

If someone gets muted (due to automute or vote or ref), he

will immidiatly be muted again on rejoin

persistent_mute is a bit-option

1 == ONLY AUTOMUTED players mute state will be saved

2 == ONLY PMUTED players mute state will be saved.

4 == EVERY MUTED PLAYER will get his mute state saved! (Includes option 1 & 2)

persistent_mute = 3

###############################

The minimum age (in days) of the Punkbuster ID.

If you want to kick newbies or cheaters, that get a new key,

set this to a value > 0

minguidage = 0

Punkbuster Message prefix:

pb_sv_msgprefix = ^3PunkBuster Server

Detects name stealing / faking,

if activated. Also detects the

bug with the space in front of the name

with pb does not detect atm

RECOMMENDATION: ACTIVATE THIS FEATURE

(for more security of the admin functions)!

name_stealing_detection = 1

name_minlength

---------------

Specify the minimum name length here.

(Use this, if you don’t use punkbuster

to check the name length)

Values:

0 == deactivated

> 0 for length check

check is name length >= name_minimum length

name_minlength = 0

kick_badnames

-------------

to kick players with a

a [bad_names]-part in the name.

use this (if you dont use punkbuster

to do the job)

Values:

0 == deactivated

1 == kick players with bad names immediately (like bad_name_grace_period = 0)

2 == kick players after 30 seconds, if they don’t change their name

kick_badnames = 0

grace period for bad named player to change name (in seconds)

this is only useful if kick_badnames is set to ‘2’

bad_name_grace_period = 30

detect_sound_exploit

--------------------

Use this, if you don’t use etpro or the headshot mod.

Exploiting players will be kicked and banned.

They are only banned, if you have manage_bans = 1 or

if you use the shrub mod, else they are only kicked for 5 minutes.

detect_sound_exploit = 1

###############################

banners

-------

Shall the banner messages from

the banner section be displayed ?

banners = 0

If “banners = 1”, bannertime configures the

duration between the messages.

bannertime = 120

###############################

forceclass_balance

------------------

With forceclass_balance, you can restrict

the amount of players per class.

If you activate this setting, then you can

set the amount of players in the

class_restrictions section and

can define rules (how many players must be

on the server to make a class or group available)

see [class_restricions] and [rules] sections

forceclass_balance = 1

If you set fcb_except_admins to a value higher >0,

then admins (with a level higher then this value)

are excluded from the forceclass_balance.

Set this to 0 to disable exceptions completly.

fcb_except_admins = 0

How often shall the ingame notices about the

rules be displayed.

Set this to 0 to deactivate the messages.

rule_announce_time = 120

For class restriction / rule messages:

Supress the change in status messages ?

These removes the “XXX has now become (un)available” messages.

rule_dont_show_change = 0

#####################

teamkill_restricion

#--------------------

this is experimental feature, which you can

use to auto kick players, that make much more

tks, then everything else. Aggressive teamkillers

are first warned, then kicked.

Explanation how it works:

For every kill players get a positive

score (see tk_kill_bonus), for every teamkill

the player gets negative one:

-0.65 for a kill with a airstrike or artillery

-0.75 for a teamkill with (grenade, panzer, rifle, mortar or mg42)

-0.00 for a teamkill with a mine

-1 for a normal TK with all other weapons.

+1 if you make a revive

+“tk_kill_bonus” for a kill

lower_limit 0 upper_limit

|----|---------|------------|

^ ^ ^

| warning start

kick

if a player gets under the (tk_lower_limit +1) he gets a warning.

As soon as he comes below the tk_lower_limit he gets kicked.

If you want to test this feature, then set “tk_warnonly = 1”.

Normal players tend to play at the upper limit (tk_upper_limit)

teamkill_restrictions on(1)/off(0)

teamkill_restriction = 1

tk_lower_limit is the amount of negative points

needed for a player to get kicked.

tk_lower_limit = -3

tk_upper_limit

This is the maximal points, which can be archived as “bonus”

tk_upper_limit = 3

This is the amount of points, players get for a normal kill

to increase the tk_index (max=tk_upper_limit)

this option can be seen as a tk/kill percentage.

If you want allow one TEAMKILL on 4 kills, then set this to 0.25

tk_kill_bonus = 0.25

If you set tk_warnokly, then players, that

drop below tk_lower_limit are not kicked (only warned)

use this for testing, if you unsure about your settings.

tk_warnonly = 0

If you set tk_except_admins, then admins (all lvl1+)

players are excluded from the teamkill_restriction

tk_except_admins = 0

suicide_limit

#--------------

How many selfkills are allowed:

0 == disabled.

> 0 == amount of selfkills / map

suicide_limit = 0

Warn from X percent (0 - 1.0):

after how many self kills,

shall a warning be displayed?

e.g.

example1: suicid_limit = 5, suicide_warn_percentage = 0.66 => warnings after 4th selfkill

example2: suicid_limit = 10, suicide_warn_percentage = 0.50 => warnings after 5th selfkill

suicide_warn_percentage = 0.50

If you set suicide_nokick = 1,

then players, that make more suicides then allowed

are forced into spec instead of getting kicked

This ruins their ingame stats (not the stats taken

from the logfile)

suicide_nokick = 0

class_restrictions

------------------

Wie viele Spier pro Klasse sind erlaubt?

Wenn eine Klasse voll besetzt ist, dann wird der naechste

Spieler, der diese Klasse auswaehlt zum Spectator gemacht

mit der Aufforderung, eine andere Klasse zu waehlen.

-1 = Unbegrenzt (standard)

0 = Klasse deaktiviert

>0 = Spieler Limit fuer diese Klasse

How many players / class are allowed. Admin’s can choose,

whatever they want (-1 unlimited)

if the limit is exceeded, then the player gets

put into spec and has to use a different class.

-1 = Unlimited(standard)

0 = Class deactivated

>0 = Player limit for that class

To do: A timer is planed.

[class_restrictions]

Soldier (0):

0 = -1

Medic:

1 = -1

Engi:

2 = -1

Field Ops:

3 = -1

covert ops:

4 = -1

rules (addition of forceclass_balance)

-----

Wie viele Spieler muessen sich auf dem Server befinden,

bevor eine Klasse verwendet werden kann.

0 deaktiviert eine Regel.

Bitte beachten, dass fuer jede Regel eine Nachricht alle

<rule_announce_time> eingeblendet wird. Daher die Anzahl

der Regeln moeglichst gering halten.

How many players have to be on the server, before

this classes become available:

0 deactivates a rule.

Please be aware, that you get a announcement for each rule every <rule_announce_time>

time. So try to keep the amount of rules low.

[rules]

This is just for panzer:

player_minimum_panzer = 0

This is for mortar only.

player_minimum_mortar = 0

Sniper are coverts with a scoped weapon (FG42, Garand and K43)

Coverts with a sten are still allowed then…

player_minimum_sniper = 0

Includes Mortar, Flamer, MG42 and of course Panzer

player_minimum_heavyweapons = 0

Engineers with rifles (Garand, K43)

player_minimum_rifleengi = 0

Complete Covert Class

player_minimum_covert = 0

Amount of Kill for the different types of killing sprees

[spree]
spree = 5
rampage = 10
dominating = 15
unstoppable = 20
godlike = 25
wicked = 30
potter = 35

mount of deaths is negativemount of Deaths for the different types of death sprees (negativ values)

badday = -10
victim = -15
asskicked = -20

spree_messages (new in 0.25)

--------------

define your killing / death spree messages here:

Note: The color gets reset to whie after a break. You never know,

when a breaks happens (depends on the length of the name), place a

color code infront of every word.

[spree_messages]

if a spree ends (these names [ends_(kill|teamkill|selfkill)] are fixed):

Replacements: <PLAYER>, <KILLER>, <KILLS>

ends_kill = <PLAYER>^8’s ^8killing ^8spree ^8ended ^8(^7<KILLS> ^8kills). ^8He ^8was ^8killed ^8by ^7<KILLER>^8!
ends_teamkill = <PLAYER>^8’s ^8killing ^8spree ^8ended ^8(^7<KILLS> ^8kills). ^8He ^8was ^8killed ^8by ^1TEAMMATE ^7<KILLER>^8!
ends_selfkill = <PLAYER>^8’s ^8killing ^8spree ^8ended ^8(^7<KILLS> ^8kills). ^8He ^8killed ^1himself, ^8what ^8a ^8pity!

spree is the only required keyword, everything else can be added like you want.

Replacements: <PLAYER>, <KILLS>

spree = <PLAYER> ^8is ^8on ^8a ^8killing ^8spree! ^8(^7<KILLS> ^8kills ^8in ^8a ^8row)
rampage = <PLAYER> ^8is ^8on ^8a ^8rampage! ^8(^7<KILLS> ^8kills ^8in ^8a ^8row)
dominating = <PLAYER> ^8is ^8dominating! ^8(^7<KILLS> ^8kills ^8in ^8a ^8row)
unstoppable = <PLAYER> ^8is ^8unstoppable! ^8(^7<KILLS> ^8kills ^8in ^8a ^8row)
godlike = <PLAYER> ^8is ^8godlike!! ^8(^7<KILLS> ^8kills ^8in ^8a ^8row)
wicked = <PLAYER> ^8is ^8wicked ^8sick!!! ^8(^7<KILLS> ^8kills ^8in ^8a ^8row)
potter = <PLAYER> ^8is ^8real ^8Potter!!! ^8(Woohoo, ^7<KILLS> ^8kills ^8in ^8a ^8row!)

deathsprees messages: (Replacements: <PLAYER>, <DEATHS>

badday = <PLAYER> ^7seems to have a bad day … (^3<DEATHS>^7 deaths without a ^1kill^7)
victim = <PLAYER> ^7is on the best way to get ^3victim^7 of the day… (^3<DEATHS> ^7deaths w/o kill)
asskicked = <PLAYER> ^7really gets his ass kicked! Oh well, ^3<DEATHS> ^7deaths w/o ^1kill^7…

positions

---------

Konfiguration der Position aller etadmin_mod Nachrichten

Configuration of the position of all etadmin_mod messages.

Available positions are:

------------------------

etmain:

- say (chat window, with "console: " in front)

shrub / headshot_mod:

- chat (chat window,

- cpm (left popup area),

- cp (center print)

- say (chat window, with "console: " in front),

etpro:

- qsay (chat window,

- cpmsay (left popup area) available since 3.0.15+

- cp (center print)

- bp (banner print area, top of screen)

- say (chat window, with "console: " in front)

be sure to choose the right “et_mod” above in the config section.

[positions]

Killing sprees: (a s_ infront to not interfere with other positions)

s_spree = qsay
s_rampage = cp
s_dominating = cp
s_unstoppable = cp
s_godlike = cp
s_wicked = cp
s_potter = cp

death spree positions:

s_badday = qsay
s_victim = qsay
s_asskicked = qsay

First blood

first_blood = cp

multikill = qsay
monsterkill = cp

Last blood

dont use cp /cpmsay for last_blood or

it wont be shown in intermission

Use: qsay / chat / say

last_blood = qsay

Greetings / Begruessungen:

greetings = qsay

Banner messages / Banner Nachrichten ?

banners = bp

Forceclass_balance announcements:

I recommend cpm with shrub and headshot mod, cpmsay in etpro (3.0.15+)

announcements = qsay

default position for all text output

default = qsay

NEW:

uneven_teams = cp
birthdays = cpmsay

suicide limit:

suicide_warnings = cpmsay

clans

-----

Hier kann man clan-tags passwörtern zuweisen. Dann koennen

nur noch Spieler, welches das Passwort mit

setu hp_password “password”

gesetzt haben, diesen Tag benutzen.

Linke Seite: regulaerer Ausdruck, daher schuetzen (mit ), ^ Anfang und $ Ende

Here you can passwords to clantags.

If you set a password for a clantag, then only players, which

have the password set with:

setu hp_password “password”

use the clan tag.

Left side: Regular expression, therefore have to be escaped, ^ for start, $ for end of name

[clans]

Examples:

Protects: “[tB]…” Names

#^[tb] = testpass

Protects: “…[nC]” Names

#[nC]$ = testpass

externals

---------

Externe Programme / Befehle

External programs / commands

Ersetzungen / Replacements. Those replacements also work in the alias section:

<PLAYER> = Name of the calling player (without color codes)

<COLOR_PLAYER> = Name of the calling player (with color codes)

<GUID> = Guid of the calling player (without color codes)

<PARAMETER> = text followed by the command. USE quotes ("<PARAMETER>") to protect your programs !

<CLIENT_ID> = the client id of the calling player.

<PART2GUID> = tries to match a player and then replaces the tag with the guid of the matching player

<PART2CNAME> = tries to match a player and then replaces the tag with the name (with colors)

of the matching player

<PART2NAME> = tries to match a player and then replaces the tag with the name (w/o colors)

of the matching player

<PART2ADMINLEVEL> = tries to match a player and then replaces the tag with the adminlevel of the matching player

<ADMINLEVEL> = Adminlevel of the calling player

Note: If you set permission_based_external_functions = 1, you have to add these commands to the permission

section.

[externals]

Fortune:

fortune = /usr/bin/fortune -a -s

Server Uptime:

server_uptime = /usr/bin/uptime |/usr/bin/cut -f 1 -d ‘,’ |/usr/bin/xargs -iX /bin/echo Server uptime: X

For stats to work, you have to install “either”

systats - http://systats.sourceforge.net

ets - http://soul.datamax.bg/~cade/away/ets/, needs patch, see addons directory

vsp - http://www.clanavl.com/vsp

Then you also have to configure the ets_stats.pl, systats_stats.pl or vsp_stats.pl

in the addons directory.

ets stats:

#stats = addons/ets_stats.pl “<COLOR_PLAYER>”

Systats stats:

#stats = addons/systats_stats.pl “<COLOR_PLAYER>”

vsp stats (Thx to Lukey):

#stats = addons/vsp_stats.pl “<GUID>” “<COLOR_PLAYER>”

Admin notify

For this to work, you have to configure the notify.sh in the addons-directory.

#admin = addons/notify.sh “<COLOR_PLAYER>” “<PLAYER>” “<PARAMETER>”

Voting script:

vote = addons/vote.pl <GUID> <ADMIN_LEVEL> “<PARAMETER>”

greetings

---------

Hier kann man die unterschiedlichen Begruessungen definieren,

welche angezeigt werden, wenn ein “Admin” (>level0) den Server

betritt. Dazu muss “admin_greeting = 1” im Config-Bereich

gesetzt sein.

Here you can assign the messages, that will be displayed, when a

admin (>level 0)enters the servers. This will only work, if

you set “admin_greeting = 1” in the config section.

greeting strings:

level = greeting

replacement: <PLAYER> / <COLOR_PLAYER>

[greetings]
1 = Welcome ^2Protected^7-^2Friend <COLOR_PLAYER>
2 = Ohohhh! ^rRecruitee <COLOR_PLAYER> ^7entered the game!
3 = Stand up! ^eTrial^7-^eMember <COLOR_PLAYER> ^7entered the game!
4 = Stand up! ^uJunior^7-^uAdmin <COLOR_PLAYER> ^7entered the game!
5 = Stand up! ^1Senior^7-^6Admin ^7<COLOR_PLAYER> ^7entered the game!
6 = Stand up! ^qFull^7-^qAdmin ^7<COLOR_PLAYER> ^7entered the game!
7 = ^1Attention! ^bRecruiter^7-^1Admin ^7<COLOR_PLAYER> ^7entered the game!
8 = ^1Attention! ^xSection^7-^xLeader ^7<COLOR_PLAYER> ^7entered the game!
9 = ^1Attention! ^5Ass’t^7-^5Server^7-^5Admin ^7<COLOR_PLAYER> ^7entered the game!
10 = ^1Attention! ^1Clan^7-^dLeader ^7<COLOR_PLAYER> ^7entered the game!
11 = ^1Attention! ^1Webmaster-^7Server-^fAdmin ^7<COLOR_PLAYER> ^7entered the game!
12 = ^1Attention! ^1Master-^7Server-^fAdmin ^7<COLOR_PLAYER> ^7entered the game!

Default greeting, if no level is set …

default = Everybody welcome <COLOR_PLAYER> ^7!

##########################

Command alias section

##########################

Shortcuts / Aliases.

Ersetzungen / Replacements.

<PLAYER> = Name des aufrufenden Spielers (ohne ColorCodes)

<COLOR_PLAYER> = Name des aufrufenden Spielers (mit ColorCodes)

<GUID> = Guid des aufrufenden Spielers

<PARAMETER> = text followed by the command. USE quotes ("<PARAMETER>") to protect your programs !

<CLIENT_ID> = the client id of the calling player.

<PARAMETER> / PART2PBID / PART2NAME / PART2ID

<PLAYER_LAST_VICTIM_(ID|NAME|CNAME|WEAPON)> = last player, you killed

<PLAYER_LAST_KILLER_(ID|NAME|CNAME|WEAPON)> = last player, that killed you

<PLAYER_CLASS> = class of calling player

<PLAYER_TEAM> = side / team of calling player

<PLAYER> = Name of the calling player (without color codes)

<COLOR_PLAYER> = Name of the calling player (with color codes)

<GUID> = Guid of the calling player (without color codes)

<PARAMETER> = text followed by the command. USE quotes ("<PARAMETER>") to protect your programs !

<CLIENT_ID> = the client id of the calling player.

<PART2GUID> = tries to match a player and then replaces the tag with the guid of the matching player

<PART2CNAME> = tries to match a player and then replaces the tag with the name (with colors)

of the matching player

<PART2NAME> = tries to match a player and then replaces the tag with the name (w/o colors)

of the matching player

<PART2ADMINLEVEL> = tries to match a player and then replaces the tag with the adminlevel of the matching player

<ADMINLEVEL> = Adminlevel of the calling player

<ARANDOM_COLOR_PLAYER>= Always picks a random user, even if multiple times used in one command.

<RANDOM_(CLIENT_ID|COLOR_PLAYER|PLAYER|PLAYER_CLASS|_PLAYER_TEAM>

= Selects a random player and replaces the shortcut with his id / name / …

if you add <HIGHER_LEVEL_PROTECTED> at the end, the command can’t be executed on a higher or equal level

(if used with PART2XX), example: kick = ref mute “<PART2ID>” <HIGHER_LEVEL_PROTECTED>

[alias]

Rcon Shortcuts (Work with all mods / etmain)

start = start_match
swap = swap_teams
reset = reset_match
#ref = makeReferee “<PLAYER>”
ref = ref referee “<CLIENT_ID>”
unref = removeReferee “<PLAYER>”
shuffle = shuffle_teams

restart = map_restart
maprestart = map_restart
#map_restart = map_restart

quote the parameters of the following rcon commands (because of names with spaces):

kick = clientkick “<PART2ID>”
makeReferee = makeReferee “<PART2NAME>”
removeReferee = removeReferee “<PART2NAME>”

Referee Commands (only ETPRO)

pub = ref pub
comp = ref comp
putaxis = ref putaxis <PART2ID>
putallies = ref putallies <PART2ID>
putspec = ref remove <PART2ID>
putteam = forceteam <PARAMETER>
pause = ref pause
unpause = ref unpause
allready = ref allready
lock = ref lock
unlock = ref unlock
speclock = ref speclock
specunlock = ref specunlock
nextmap = ref nextmap
mutespecs = ref mutespecs
unmutespecs = ref unmutespecs
mute = ref mute <PART2ID>
unmute = ref unmute <PART2ID>
timelimit = ref timelimit <PARAMETER>
warn = ref warn <PARAMETER>
map = ref map <PARAMETER>
campaign = ref campaign <PARAMETER>
gametype = ref gametype <PARAMETER>
config = ref config <PARAMETER>

Shuffle without restart

shuffle_norestart = ref shuffleteamsxp_norestart
shuffleteamsxp_norestart= ref shuffleteamsxp_norestart

campaign functions

currentcampaign = g_currentCampaign
listcampaigns = listcampaigns
campaign = campaign <PARAMETER>

shops IP or GUID (etpro < 3.1.6, beware: data will be posted in global chat)

#getip = qsay “^3getip: ^7<PART2IP>”
#guid = qsay “^3guid: ^7<PART2CNAME> <PART2GUID>”

etpro 3.1.6+

guid = m <PLAYER> “^3guid: ^7<PART2CNAME> <PART2GUID>”
getip = m <PLAYER> “^3getip: ^7<PART2IP>”

shows IP / GUID

#info = qsay “^3info: ^7<PART2CNAME> ^7guid: <PART2GUID>^7, ip: <PART2IP>”
info = m <PLAYER> “^3info: ^7<PART2CNAME> ^7guid: <PART2GUID>^7, ip: <PART2IP>”

shrub:

#getip = chatclient <CLIENT_ID> “^3getip: ^7<PART2IP>”

IP Bans (works with all (etmain, etpro, shrub):

addip = addip <PARAMETER>
removeip = removeip <PARAMETER>
listip = g_banIPs

To kick a player without temporary ban. Change the message, if you like.

fkick = pb_sv_kick <PART2PBID> 0 “Come back in, if you want”

Rcon cvars:

gravity = g_gravity “<PARAMETER>”
knifeonly = g_knifeonly “<PARAMETER>”
knockback = g_knockback “<PARAMETER>”
speed = g_speed “<PARAMETER>”

Shortcut to make the called a shoutcaster / remove his statua

ms = makeShoutcaster <CLIENT_ID>
rs = removeShoutcaster <CLIENT_ID>

Commands to make someone shoutcaster

makeShoutcaster = makeShoutcaster <PART2ID>
removeShoutcaster = removeShoutcaster <PART2ID>

cointoss (etpro-test5+)

cointoss = ref cointoss

Moves the calling person into the specific team

putmeaxis = ref putaxis <CLIENT_ID>
putmeallies = ref putallies <CLIENT_ID>
putmespec = ref remove <CLIENT_ID>

FUN:

beer = qsay “A nice sexy waitress brings ^7<COLOR_PLAYER>^7 a nice cup of beer!”
pizza = qsay “Someone calls Mario, and he brings ^7<COLOR_PLAYER>^7 a hot pepperoni pizza!”
godmode = qsay “^3Godmode: ^7<PARAMETER>”
coke = qsay “^3Ah… A delicious glass of cold Coca Cola[tm] (thinks ^7<COLOR_PLAYER>^3 while he drinks)”
pfstinkt = qsay “^3Uh, that smell of the panzer is pretty strong today … ^3(^7<COLOR_PLAYER>^3’s opinion)”
bye = qsay “^7<COLOR_PLAYER>^3 waves his hand to say ^1GOOD BYE^3. We surely meet later!”
site = qsay “^7<COLOR_PLAYER>^3 Here is The Site: www.eck-gaming.com!”

Only use that one, if you running debian linux

#moo = qsay “This ET-server has ^3Super Cow Powers^7. Have you ^3mooed^7 today?”

Cheats: (!cheats 1/0) (for trickjumps, testing, …)

cheats = forcecvar sv_cheats <PARAMETER>

Use to set the server password. (Better make that silent)

password = g_password “<PARAMETER>”

New commands (for testing and demostration):

you don’t tk / kill a admin…

vkick = clientkick “<PLAYER_LAST_KILLER_ID>”

stop making owned messages, when you killed me =)

vmute = ref mute “<PLAYER_LAST_KILLER_ID>”

for spamming :wink:

owned = qsay “^1Ha^3ha^5ha^3, i owned ^7<PLAYER_LAST_VICTIM_CNAME>^3 with my ^7<PLAYER_LAST_VICTIM_WEAPON>^7!!!”
pants = qsay “^1No^3no^5noooo^7, i was killed by ^3<PLAYER_LAST_KILLER_CNAME>^7 with a ^3<PLAYER_LAST_KILLER_WEAPON>^7!!!”
whoami = qsay “I am <COLOR_PLAYER>^7. I play ^3<PLAYER_CLASS>^7 on the ^3<PLAYER_TEAM>^7 side.”
laser = forcecvar g_debugbullets <PARAMETER>

For the etadmin_mod control center:

cc_maps = fdir *.bsp

permissions

-----------

In diesem Bereich kann man festlegen, welcher Level über welche

Rechte verfügen soll.

Format:

level = befehl(, befehl[, befehl], …)

Die Befehle werden vererbt. D.h. Level 1 hat alle Level 0 Befehle,

Level 2 hat alle Level 1 und Level 0 Befehle, und so weiter

Define the commands for the levels here:

Here you can define, which level has access to which functions

Format: level = commands (, command[, command], …)

New permission prefix:

----------------------

tcp: means, just for the tcp-interface

game: means just for ingame.

no prefix = allowed in tcp-interface and ingame.

Permissions inherite…

[permissions]

Level 0 (Prole):

0 = admintest, seen, time, help, rs

Just for fun:

0 = pizza, beer, bye, coke, pfstinkt

like shrub help: !listcmds shows all available commands.

0 = listcmds

Voting script. Should be lvl0 or regular players can’t vote.

Starting and ending votes is limited to lvl3+ (configure in addons/vote.pl)

0 = vote

for teamkillrestriction:

does not work, if you have the teamkill_restriction disabled.

0 = tkindex

for longest_spree_display:

0 = spree_record

if you set permission_based_external_functions = 1, you have to configure

the external function calls in the permission section too.

Exactly, like the aliases

#0 = admintest,stats, fortune, admin, server_uptime, vote

Level 1 (Protected-Friend):

1 = stats, fortune, admin, server_uptime, vote
1 = owned, pants, whoami
1 = pizza, beer, bye, coke, pfstinkt
1 = admintest, seen, time, help, rs
1 = listcmds

Level 2 (Recruitee):

2 = stats, fortune, admin, server_uptime, vote
2 = owned, pants, whoami
2 = pizza, beer, bye, coke, pfstinkt
2 = admintest, seen, time, help, rs
2 = listcmds

Level 3 (Trial-Member):

3 = stats, fortune, admin, server_uptime, vote
3 = owned, pants, whoami
3 = pizza, beer, bye, coke, pfstinkt
3 = admintest, seen, time, help, rs
3 = listcmds

Level 4 (Junior-Admin):

4 = stats, fortune, admin, server_uptime, vote
4 = owned, pants, whoami
4 = pizza, beer, bye, coke, pfstinkt
4 = admintest, seen, time, help, rs
4 = listcmds
4 = fkick, kick, clientkick, mute, unmute

Level 5 (Senior-Admin):

5 = stats, fortune, admin, server_uptime, vote
5 = owned, pants, whoami
5 = pizza, beer, bye, coke, pfstinkt
5 = admintest, seen, time, help, rs
5 = listcmds
5 = fkick, kick, clientkick, mute, unmute

Level 6 (Full-Admin):

6 = stats, fortune, admin, server_uptime, vote
6 = owned, pants, whoami
6 = pizza, beer, bye, coke, pfstinkt
6 = admintest, seen, time, help, rs
6 = listcmds
6 = fkick, kick, clientkick, mute, unmute
6 = putaxis, putallies, putspec, putteam

Level 7 (Recruiter-Admin):

7 = fkick, kick, clientkick, mute, unmute
7 = pub, comp, config, pause, unpause, lock, unlock
7 = match_reset, reset, maprestart, restart, map_restart
7 = start_match, start, allready
7 = speclock, specunlock, mutespecs, unmutespecs
7 = putaxis, putallies, putspec, putteam
7 = swap_teams, swap, cointoss
7 = stats, fortune, admin, server_uptime, vote
7 = owned, pants, whoami
7 = pizza, beer, bye, coke, pfstinkt
7 = admintest, seen, time, help, rs
7 = listcmds
7 = setlevel

if you have enhanced warning activated:

#7 = warn, dewarn

for testing

7 = vkick, vmute

Level 8 (Section-Leader):

8 = ban, cancelvote, passvote
8 = cp, qsay, nextmap, ref, unref, warn
8 = putmespec, putmeaxis, putmeallies, ms, finger
8 = makeShoutcaster, removeShoutcaster
8 = shuffleteamsxp_norestart, shuffle_norestart, shuffle, shuffle_teams
8 = stats, fortune, admin, server_uptime, vote
8 = owned, pants, whoami
8 = pizza, beer, bye, coke, pfstinkt
8 = admintest, seen, time, help, rs
8 = listcmds
8 = fkick, kick, clientkick, mute, unmute
8 = setlevel

spree_reset (resets the high score):

8 = spree_reset

Use for resyncing teams in the etadmin_mod

if they ever get out of sync (maybe external programs, other rcon tools, …)

8 = resync, guid

the admin permission for the admin command: usage: !tkindex <partofname|id>

does not work, if you have the teamkill_restriction disabled.

8 = tkindex_admin

ip bans:

8 = addip, removeip, listip, getip

campaign functions:

8 = currentcampaign, listcampaigns, campaign

move players into spec, if ping of 999 (remove the script from the external section, if there is one!)

8 = spec999

#(for etpro guid bans), usage: !bani <name|id> [duration] [reason]
8 = bani

Level 9 (Ass’t-Server-Admin):

9 = makeReferee, removeReferee
9 = gravity, knifeonly, crazygravity, speed
9 = knockback, password, silentcommands
9 = setlevel
9 = ban, cancelvote, passvote
9 = cp, qsay, nextmap, ref, unref, warn
9 = putmespec, putmeaxis, putmeallies, ms, finger
9 = makeShoutcaster, removeShoutcaster
9 = shuffleteamsxp_norestart, shuffle_norestart, shuffle, shuffle_teams
9 = stats, fortune, admin, server_uptime, vote
9 = owned, pants, whoami
9 = pizza, beer, bye, coke, pfstinkt
9 = admintest, seen, time, help, rs
9 = listcmds
9 = fkick, kick, clientkick, mute, unmute

for commands to execute while login:

example (before connect of in autoexec.cfg):

/setu hp_logincmd “!ref”

9 = logincmd

Level 10 (Clan-Leader):

10 = makeReferee, removeReferee
10 = gravity, knifeonly, crazygravity, speed
10 = knockback, password, silentcommands
10 = setlevel
10 = ban, cancelvote, passvote
10 = cp, qsay, nextmap, ref, unref, warn
10 = putmespec, putmeaxis, putmeallies, ms, finger
10 = makeShoutcaster, removeShoutcaster
10 = shuffleteamsxp_norestart, shuffle_norestart, shuffle, shuffle_teams
10 = stats, fortune, admin, server_uptime, vote
10 = owned, pants, whoami
10 = pizza, beer, bye, coke, pfstinkt
10 = admintest, seen, time, help, rs
10 = listcmds
10 = fkick, kick, clientkick, mute, unmute

Level 11 (Webmaster-Server-Admin):

11 = makeReferee, removeReferee
11 = gravity, knifeonly, crazygravity, speed
11 = knockback, password, silentcommands
11 = ban, cancelvote, passvote
11 = cp, qsay, nextmap, ref, unref, warn
11 = putmespec, putmeaxis, putmeallies, ms, finger
11 = makeShoutcaster, removeShoutcaster
11 = shuffleteamsxp_norestart, shuffle_norestart, shuffle, shuffle_teams
11 = stats, fortune, admin, server_uptime, vote
11 = owned, pants, whoami
11 = pizza, beer, bye, coke, pfstinkt
11 = admintest, seen, time, help, rs
11 = listcmds
11 = fkick, kick, clientkick, mute, unmute
11 = setlevel

for commands to execute while login:

example (before connect of in autoexec.cfg):

/setu hp_logincmd “!ref”

11 = logincmd

Level 12 (Master-Server-Admin):

12 = setlevel, readconfig, cheats, laser
12 = ban, cancelvote, passvote
12 = cp, qsay, nextmap, ref, unref, warn
12 = putmespec, putmeaxis, putmeallies, ms, finger
12 = makeShoutcaster, removeShoutcaster
12 = shuffleteamsxp_norestart, shuffle_norestart, shuffle, shuffle_teams
12 = stats, fortune, admin, server_uptime, vote
12 = owned, pants, whoami
12 = pizza, beer, bye, coke, pfstinkt
12 = admintest, seen, time, help, rs
12 = listcmds
12 = fkick, kick, clientkick, mute, unmute

for loading etadmin_mod configs

there is a default config, which is called off.

12 = loadconfig

Hint:

Use “!loadconfig off” to disable the etadmin_mod (with setting a wrong server_password)

and !readconfig to reenable etadmin-mod then

#########################################

For TCP-Interface (tcp-interface.cfg):

---------------------------------------

You should add / change these:

1 = tcp:bc, tcp:serverinfo
3 = unban, tcp:banlist, tcp:listplayers

to see a Usage: /playerstats [client]

3 = tcp:playerstats

this is a pseudo permanent mute. But works ONLY with etpro atm.

#3 = pmute

for loading maps with cheats

4 = devmap

for retrieving a list of available maps. (for the control center)

4 = tcp:cc_maps, listcampaigns, campaign, silentcommands

for kicking other tcp connections

5 = tcp:disconnect

permission to see the etconsole.log output:

5 = tcp:etconsole_log

Bad names

---------

Hier kann man (Teil-)Namen eintragen, die man den Spielern nicht erlauben will.

You can set (part of) bad names here, which you don’t want to allow your players.

[bad_names]
NAZI
HITLER


NIGGA
COON
JEW


SHIT
PISS


COCK
PENIS
VAGINA
TITS
ASSHOLE
BALLS
BONER
TAMPON
BUTTPICKER
SUCK
BITCH
BLOW
HIMMLER
HIMLER
ADOLPH
ADOLF
FUEHRER
FUHRER
GOERING

banner messages

---------------------

empty lines or lined with a # in front are not displayed

use “banners” to enable / disable and “bannertime” to

configure the duration between the messages.

[banners]
^3the following lines
^2can be filled with information
^4that should be displayed ingame.

Includes:

Help texts:

include “etc/help.cfg”

Sound config (Spree’s, multi/monsterkill, …):

include “etc/sound.cfg”

tcp interface

include “etc/tcp-interface.cfg”


(Adrian) #6

Now this is the

etadmin_mod.sh

#! /bin/sh

#######################################################################

CONFIG:

General note: If you specify more then one parameter or config files:

use brackets. e.g. “-r -e” or “1.cfg 2.cfg”

Choose your config file(s) (space seperated):

Remember: The last can overwrite parameters of the prior configs.

Useful for hoster to deactivate or fix parameters

Also see ADMIN_CONFIG for overwriting.

CONFIGS=“etc/etadmin.cfg”

This config is ALWAYS loaded after the CONFIGS have been loaded

(even after a !loadconfig or map configs).

ADMIN_CONFIG=""
#ADMIN_CONFIG=“etc/etadmin.cfg”

Further Options (space seperated):

-e to deactivate the including of a “external” section in map specific configs

-r to reset the external section on every new section block.

-d to completly deactivate the use of external programs (

-> ignores the [external] section in the config.

Note: for game hosters:

- To completly disable external commands, use -d and fix the tail binary in a second config.

- To define a preset of external commands to use for the user, use 2 configs

(one for the user and one for you) and define the [external] section in your config,

as well as the tail binary. Then use -r -e, so the user can’t reset, add or modify the commands.

OPTIONS=""

CHANGE THIS to the location of the extracted mod:

BASEDIR=/home/europa3/et/etadmin_mod

Set this to a unique string for every instanz of etadmin_mod

running on your server.

INSTANZ_NAME=base2

#######################################################################

You don’t need to change anything below this line

#######################################################################

cd $BASEDIR
PERL=type -p perl
PID=ps axw|grep etadmin_mod2.pl |grep "instanz_$INSTANZ_NAME" |grep -v grep | awk '{print $1}'

case “$1” in
start)
echo -n "Starting etadmin_mod: "

    # Adding admin config to the options
    if (test -n "$ADMIN_CONFIG") then
    	OPTIONS="$OPTIONS --admin-config=$ADMIN_CONFIG"
    fi 
    
if (test -z "$PID") then
	$PERL bin/etadmin_mod2.pl $OPTIONS instanz_$INSTANZ_NAME $CONFIGS &gt;&gt;log/etadmin.log 2&gt;&1 &
	sleep 1

	STATUS=`ps axw|grep "etadmin_mod2.pl" | grep "instanz_$INSTANZ_NAME" |grep -v grep `

	if (test -n "$STATUS") then	
		echo "OK! [$STATUS]"
	else
		echo "FAILED! [$STATUS] (See logfile log/etadmin.log for details!)"
	fi
else
	echo "FAILED! (etadmin_mod is already running)"
fi
    ;;
stop)
    echo -n "Stopping etadmin_mod: "
if (test -n "$PID") then

	# First determine tail pid
	PID_TAIL=`ps axw|grep tail |grep etconsole.log |grep " $PID " |awk '{print $2}'`

	# killing etadmin_mod
	kill $PID

	# Killing tail:
	if (test -n "$PID_TAIL") then
		kill $PID_TAIL
	fi
	echo "OK!"
else
	echo "FAILED! (etadmin_mod isn't running)"
fi
    ;;
reload)
    echo -n "Reloading etadmin_mod: "
if (test -n "$PID") then
	kill -HUP $PID	
	echo "OK! ($PID)"
else
	echo "FAILED! (etadmin_mod isn't running)"

fi
;;
status)
if (test -n "$PID") then
	echo "Status: running"
else
	echo "Status: not running"
fi
;;
restart)
    $0 stop
# Need to sleep here, because etadmin_mod needs some seconds to shutdown
sleep 2
    $0 start
    ;;
*)
    echo "Usage: $0 {start|stop|restart|reload|status}"
    exit 1

esac

Inform the caller not only verbosely and set an exit status.

exit 0


(Adrian) #7

etadmin.log

05/12/09 07:29:01 Starting up… etadmin_mod v0.29
05/12/09 07:29:01 Loading config_file etc/etadmin.cfg
05/12/09 07:29:01 Loading config_file etc/help.cfg
05/12/09 07:29:01 Loading config_file etc/sound.cfg
05/12/09 07:29:01 Loading config_file etc/tcp-interface.cfg
05/12/09 07:29:01 Loading: etc/etadmin.cfg
05/12/09 07:29:01 Post config check…
05/12/09 07:29:01 Post config check done.
05/12/09 07:29:01 Loading /home/europa3/et/etadmin_mod/etc/shrubbot.cfg
05/12/09 07:29:01 Loading protected-file
05/12/09 07:29:01 Loading birthdays…
05/12/09 07:29:01 Started… (Passed all config / logfile checks).


(ailmanki) #8

http://et.d1p.de/wiki/index.php/ETAdmin_mod_FAQ

How do i find the right etconsole.log ?

There are more then one way to locate the right etconsole.log

* it should be in the "homedirectory" of the server or the user, with which the ET server runs. Usually 

~/.etwolf/etmain/etconsole.log (or etpro/shrubet/etpub, depends on the mod you use)

* check the FS_HOMEPATH of the etded command line. 

For example:

./etded +set fs_basepath /home/ET +set fs_homepath 27960 +exec server.cfg

creates a subfolder 27960 in your et folder, where all the runtime data is stored (also the etconsole.log). See Enemy Territory Advanced Server Guide - Server Startup for some good examples.

* you can try to locate etconsole.log as well
* if you are still unsure, where your etconsole.log is located, try his: 

lsof |grep etconsole.log |grep etded.x86

That should display something like this:

etded.x86 24749 games 12w REG 3,3 7081 4554806 /var/games/.etwolf/etpro/etconsole.log

-> there you are. The etconsole.log is located at /var/games/.etwolf/etpro/etconsole.log in this case.

just note that lsof is 3rd party utility, some linux dists doesn’t have it.


(Adrian) #9

IT works mate thanks i just got mixed up :slight_smile: Thanks for help Close this ^^