Warsow Server on OpenBSD
Hi guys,
i am really frustrated :(
i have worked a long time to get warsow running on openbsd. everything runs fine. people can join server and there is also a log output.
but if i run that server process as user instead of root, there is no log written :(
this can't be a rights problem, because if i quit server via pid, i get the following message:
thats the only stuff written in log file.
do u guys have any ideas? wont switch back to linux ;)
greetz,
gullash aka n00n
(updated 2012-07-02 22:27:06)
i am really frustrated :(
i have worked a long time to get warsow running on openbsd. everything runs fine. people can join server and there is also a log output.
but if i run that server process as user instead of root, there is no log written :(
this can't be a rights problem, because if i quit server via pid, i get the following message:
------- angel script initialization -------
Loading angelwrap module.
Initializing Angel Script
Initialization of angelwrap successful
------------------------------------
Couldn't load MOTD file: wswdedi_ica01.motd
Game running at 62 fps. Server transmit at 20 pps
Added new master server #0 at 64.22.107.125:27950
Added new master server #1 at 69.59.212.88:27950
Added new master server #2 at 92.62.40.73:27950
====== Warsow Initialized ======
EOF from stdin, console input disabled...
Opening UDP/IP socket: 78.47.14.99:48001
Opening UDP/IPv6 socket: *:44400
Error: Couldn't open UDP6 socket: socket: Unknown error
==== G_Init ====
------- Server Initialization -------
SpawnServer: bipbeta2
-------------------------------------
Initalizing 'ca' gametype
loading configs/server/gametypes/ca.cfg
ca.cfg executed
* Initializing gametype scripts
* Initializing Game module syntax
* Loaded script section 'progs/shared/constants.as'
* Loaded script section 'progs/shared/files.as'
* Loaded script section 'progs/gametypes/generic/playerclasses.as'
* Loaded script section 'progs/gametypes/generic/matchstates.as'
* Loaded script section 'progs/gametypes/generic/bots.as'
* Loaded script section 'progs/gametypes/ca.as'
* Loaded script section 'progs/gametypes/legacy/quake1.as'
Gametype 'Clan Arena' initialized
: AI FAILED to load navigation file.
-------------------------------------
^9n00^3n^7 connected
^9n00^3n^7 connected from 93.212.161.217:56319
^9n00^3n^7 entered the game
^9n00^3n^7 disconnected
Received signal 15, exiting...
==== G_Shutdown ====
thats the only stuff written in log file.
do u guys have any ideas? wont switch back to linux ;)
greetz,
gullash aka n00n
(updated 2012-07-02 22:27:06)
If it works as root but not as user it really should be a
permission issue. My first thought is that running the server as
root created the wsw log as root:root so user can't write to it.
But if you say it's not permission issues, then I'll trust you.
Could you post the important bits of your dedicated_autoexec.cfg?
Could you post the important bits of your dedicated_autoexec.cfg?
hi dude,
i dont have a dedicated_autoexec.cfg because i wanna run more servers on this host. i have a config file called "wswdedi_ica01.cfg"
content of this config:
i compared it with the default dedicated_autoexec.cfg and i cant see differences.
thats the content of my startscript:
you can trust me with that permission issues because if i kill the running server the above postet lines got written into the configfile.
maybe its a problem of the emulated linux binary but i cant believe because it runs.
maybe its better with 0.7 :D
if u need more information about scripts or someting else, ask me :D
greetz
(updated 2012-07-03 21:23:02)
i dont have a dedicated_autoexec.cfg because i wanna run more servers on this host. i have a config file called "wswdedi_ica01.cfg"
content of this config:
// warsow server config für ica01
set sv_hostname "^9nn^3. ^9>> ^3public ica 01 - bipbeta2 only - 4vs4^9 <<"
set sv_ip "78.47.14.99"
set sv_port "48001"
set sv_public "1"
set sv_maxclients "12"
set sv_skilllevel "2" // 0=easy, 1=normal, 2=hard
set sv_pure "1"
set sv_showInfoQueries "0"
set sv_uploads "1"
set sv_uploads_from_server "1"
set sv_uploads_baseurl ""
set sv_autoupdate "0"
set sv_iplimit "3"
set masterservers "64.22.107.125:27950 69.59.212.88:27950 92.62.40.73:27950"
//set sv_motd "1"
//set sv_motdfile "wswdedi_ica01.motd"
set logconsole "new_ica01.log"
set logconsole_append "1"
//
// server passwords
//
set password ""
set rcon_password "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
set g_operator_password "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
//
// global game settings
//
set g_gametype "ca"
set g_teams_maxplayers "4"
set g_teams_allow_uneven "0"
set g_numbots "0"
set g_instagib "1"
set g_instajump "1"
set g_instashield "1"
set sv_defaultmap "bipbeta2"
set g_maplist "" // maps in automatic rotation
set g_maprotation 0 // 0=same map, 1=in order, 2=random
set g_asGC_stats "0"
set g_asGC_interval "10"
//
// votes setup
//
set g_vote_allowed "1"
set g_voteable_gametypes ""
// gametype
set g_disable_vote_gametype "1"
set g_disable_opcall_gametype "1"
// map
set g_disable_vote_map "1"
set g_disable_opcall_map "1"
// restart
set g_disable_vote_restart "0"
set g_disable_opcall_restart "0"
// scorelimit
set g_disable_vote_scorelimit "0"
set g_disable_opcall_scorelimit "0"
// timelimit
set g_disable_vote_timelimit "0"
set g_disable_opcall_timelimit "0"
// numbots
set g_disable_vote_numbots "1"
set g_disable_opcall_numbots "1"
// warmup
set g_disable_vote_warmup "1"
set g_disable_opcall_warmup "1"
// timelimit
set g_disable_vote_warmup_timelimit "1"
set g_disable_opcall_warmup_timelimit "1"
// extended time
set g_disable_vote_extended_time "1"
set g_disable_opcall_extended_time "1"
// maxteams
set g_disable_vote_maxteams "1"
set g_disable_opcall_maxteams "1"
// maxteamplayers
set g_disable_vote_maxteamplayers "1"
set g_disable_opcall_maxteamplayers "1"
// lock
set g_disable_vote_lock "1"
set g_disable_opcall_lock "1"
// unlock
set g_disable_vote_unlock "1"
set g_disable_opcall_unlock "1"
// allow teamdamage
set g_disable_vote_allow_teamdamage "1"
set g_disable_opcall_allow_teamdamage "1"
// allow selfdamage
set g_disable_vote_allow_selfdamage "1"
set g_disable_opcall_allow_selfdamage "1"
// falldamage
set g_disable_vote_allow_falldamage "1"
set g_disable_opcall_allow_falldamage "1"
// allow uneven
set g_disable_vote_allow_uneven "1"
set g_disable_opcall_allow_uneven "1"
// maxtimeouts
set g_disable_vote_maxtimeouts "1"
set g_disable_opcall_maxtimeouts "1"
// timeout
set g_disable_vote_timeout "1"
set g_disable_opcall_timeout "1"
// timein
set g_disable_vote_timein "1"
set g_disable_opcall_timein "1"
// challengers queue
set g_disable_vote_challengers_queue "1"
set g_disable_opcall_challengers_queue "1"
// remove
set g_disable_vote_remove "0"
set g_disable_opcall_remove "0"
// kick
set g_disable_vote_kick "0"
set g_disable_opcall_kick "0"
// kickban
set g_disable_vote_kickban "1"
set g_disable_opcall_kickban "1"
// instajump
set g_disable_vote_instajump "1"
set g_disable_opcall_instajump "1"
// instashield
set g_disable_vote_instashield "1"
set g_disable_opcall_instashield "1"
i compared it with the default dedicated_autoexec.cfg and i cant see differences.
thats the content of my startscript:
#!/bin/ksh
./wsw_server.i386 +exec wswdedi_ica01.cfg &
you can trust me with that permission issues because if i kill the running server the above postet lines got written into the configfile.
maybe its a problem of the emulated linux binary but i cant believe because it runs.
maybe its better with 0.7 :D
if u need more information about scripts or someting else, ask me :D
greetz
(updated 2012-07-03 21:23:02)
Right now you're set to append to the logfile, so your logfile
should be growing each time you restart the server. Are you sure
the logfile isn't from your root run? And have you tried seeing if
logging works without appending? Not sure if it makes a difference,
but try settings logconsole_append 0
As a workaround and somewhat useful tip, you can always launch your server with dettachtty and use its dribble/log files instead. I really like dettachtty instead of screen/tmux for things like this and am pretty sure its available for freebsd.
As a workaround and somewhat useful tip, you can always launch your server with dettachtty and use its dribble/log files instead. I really like dettachtty instead of screen/tmux for things like this and am pretty sure its available for freebsd.
thanks for ur tips but i prefer sending processes back to a
subshell via the "&" operator ;)
but now i am really confused. i forgot to quit my server last night. some people played on it and the server wrote some logs :O but not all the time. last log entry was on 7:30pm and now its 8:30pm. i am really confused.
i am going to setup a linux system on an other server and try it with linux. i think openbsd's linux binary emulation has some problems with that stuff. maybe i have to edit login classes but at the moment i won't do that :D
gr33tz
-- EDIT --
now server logged again. every missing stuff was written to config file. it looks like that there is a periodical constant. last change before was on 7.30pm and this change now was on 8.30pm.
maybe someting with cronjobs or syslog. but dunno how :D
-- EDIT2 --
now server logged again. i am observing logfile with "tail -f" and after 30 minutes of the last post there was a edit again. but logfile is also fragmented
how u see on last line, the line wasnt complete posted.
crazy crazy :D
(updated 2012-07-04 22:04:33)
but now i am really confused. i forgot to quit my server last night. some people played on it and the server wrote some logs :O but not all the time. last log entry was on 7:30pm and now its 8:30pm. i am really confused.
i am going to setup a linux system on an other server and try it with linux. i think openbsd's linux binary emulation has some problems with that stuff. maybe i have to edit login classes but at the moment i won't do that :D
gr33tz
-- EDIT --
now server logged again. every missing stuff was written to config file. it looks like that there is a periodical constant. last change before was on 7.30pm and this change now was on 8.30pm.
maybe someting with cronjobs or syslog. but dunno how :D
-- EDIT2 --
now server logged again. i am observing logfile with "tail -f" and after 30 minutes of the last post there was a edit again. but logfile is also fragmented
(...)
Dorureni receives a '1v2! You're on your own!' award.
^3.'.^7 was instagibbed by ^9n00^3n^7's instabeam
^3.'.^2: gibs 9001?
^9'.'^2: :D
Dorureni^7 was instagibbed by ^9n00^3n^7's instabeam
^5Lyasar1488^7 connected
^5Lyasar1488^7 connected from 188.3
how u see on last line, the line wasnt complete posted.
crazy crazy :D
(updated 2012-07-04 22:04:33)
yah thats just weird Oo
for the record, you did compile the server from source right?
for the record, you did compile the server from source right?
it is good to see that you are thinking the same like me :D
no i didn't compile the server binaries from source. i downloaded the 0.61 unified zip and patched it to 0.62. i run the server via wsw_server.i386 binary. for the emulation i created my own linux path and filled it up with the needed libs from a debian 6.0 machine.
greetz
-- EDIT --
if u are interested in that emulation stuff u can have a look at this manpage
http://www.openbsd.org/cgi-bin/man.cgi?query=compat_linux&apropos=0&sektion=0&manpath=OpenBSD+Current&arch=i386&format=html
(updated 2012-07-05 18:07:39)
no i didn't compile the server binaries from source. i downloaded the 0.61 unified zip and patched it to 0.62. i run the server via wsw_server.i386 binary. for the emulation i created my own linux path and filled it up with the needed libs from a debian 6.0 machine.
greetz
-- EDIT --
if u are interested in that emulation stuff u can have a look at this manpage
http://www.openbsd.org/cgi-bin/man.cgi?query=compat_linux&apropos=0&sektion=0&manpath=OpenBSD+Current&arch=i386&format=html
(updated 2012-07-05 18:07:39)
If I ever start playing with bsd i'll keep this in mind, but I
think you should try compiling for bsd and skipping the emu layer
:D. IIRC all you need is 'make ded'
i am not sure if this would be enough. i need some linux depencies
which opensbd would not have. so i have to setup a complete linux
header environment and that is to much for me :D i am to lazy
:P
i gonna setup a linux server and setup my servers there. maybe 0.7 would be better. i gonna try it again with it.
btw, can u tell me what
means? :D
(updated 2012-07-05 20:48:34)
i gonna setup a linux server and setup my servers there. maybe 0.7 would be better. i gonna try it again with it.
btw, can u tell me what
set g_asGC_stats "0"
set g_asGC_interval "10"
means? :D
(updated 2012-07-05 20:48:34)
To compile the client has a lot of deps, but the server is pretty
light. ldd says: libdl libm libz libcurl libc, but there may be
more make deps. But i know nothing about bsd so idk.
And g_asGC are anglescript garbage collection vars, time interval in seconds and stats is whether to log the collections.
EDIT: I know a while ago macius had up a POGON server that was run on BSD (open/free dont remember). But I haven't seen him in a while.
(updated 2012-07-06 05:50:07)
And g_asGC are anglescript garbage collection vars, time interval in seconds and stats is whether to log the collections.
EDIT: I know a while ago macius had up a POGON server that was run on BSD (open/free dont remember). But I haven't seen him in a while.
(updated 2012-07-06 05:50:07)
Macius had a FreeBSD server but that shouldn't matter too much.
I worked with Macius to get racesow 0.6 running on his server. There were some missing includes and defines but nothing major, everything compiled fine and at least the server ran fine.
You can find the changes in the racesow github repo (You probably have to search a while to find them all. Sorry about that).
<shameless self promotion>
If you need some more help and maybe want to host a racesow server too you can find me and the rest of the racesow guys in #racenet on quakenet.org
</shameless self promotion>
Btw so far it seems that Warsow 0.7 should be compile able on *BSD out of the box. I haven't tried it though.
(updated 2012-07-06 16:37:01)
I worked with Macius to get racesow 0.6 running on his server. There were some missing includes and defines but nothing major, everything compiled fine and at least the server ran fine.
You can find the changes in the racesow github repo (You probably have to search a while to find them all. Sorry about that).
<shameless self promotion>
If you need some more help and maybe want to host a racesow server too you can find me and the rest of the racesow guys in #racenet on quakenet.org
</shameless self promotion>
Btw so far it seems that Warsow 0.7 should be compile able on *BSD out of the box. I haven't tried it though.
(updated 2012-07-06 16:37:01)
thx for the info k1ll. i am going to have a look at this tomorrow.
the server is running nice. the only problem is that crazy logging
:) dunno whats going on there. looks like a buffer problem or some
broken pipes.

