Digiex's UT 2004 Server

Discussion in 'Gaming Hangout' started by InsaneNutter, Jan 27, 2008.

  1. Panetta

    Panetta Member

    Joined:
    Dec 15, 2009
    Messages:
    20
    Likes Received:
    0
    Location:
    Paris, France
    Erf, seems down again.

    I can still access other game servers fine, so the problem seems to be on the Digiex end.

    Any theories as to what could be causing these shutdowns? I'm not much of a technician so I can't offer any ideas of my own, sorry. :-$

    I don't want to spam the forum with these requests. From now on, I'll just send a PM to the admins ... unless they prefer that I post such notices here?

    Btw Gorge, I'm keen to try out your modified AtomicSands map. Fewer tank spawns should definitely change the battle dynamics. Did you make any other changes?
     
  2. human

    human Well-Known Member

    Joined:
    Jan 19, 2009
    Messages:
    53
    Likes Received:
    0
    erk - still down
     
  3. Gorge

    Gorge Resident

    Joined:
    Apr 25, 2009
    Messages:
    134
    Likes Received:
    35
    Location:
    Paris, France
    Hello,

    not exactly 'again'. Not a server loop, server is now offline.

    @ Panetta
    Changes for AtomicsSands:
    - more time before tanks respawning (as Satin wanted)
    - 2 jump pads added, for flag carrier escape
    - 'glitch' fixed

    Gorge
     
  4. techguyone

    techguyone Elite Member

    Joined:
    Jan 1, 2009
    Messages:
    79
    Likes Received:
    0
    that sounds interesting, I'll have to try Atomic Sands now.
    BTW the server is offline (I think) now, has been since last night, when performance badly degraded even with only 2 human players on. I couldn't explain why.
     
  5. Gorge

    Gorge Resident

    Joined:
    Apr 25, 2009
    Messages:
    134
    Likes Received:
    35
    Location:
    Paris, France
    Script for Server

    Hello,

    here a script to restart server. It is an infinite loop and it runs the game each loop. Modify the GAMEPATH = / path/to/where/you/installed/ut2004 / to point to the folder of your server and the game (VCTF) and muts.


    1- Type touch start-service
    2- Type chmod +x start-service
    3- Then open start-service in a text editor and copy and paste the following text:

    #!/bin/sh
    GAMEPATH=/path/to/where/you/installed/ut2004/

    while true
    do
    ${GAMEPATH}./ucc-bin server blablabla.ut2 -nohomedir
    echo "Server crashed on " >> ${GAMEPATH}/crash.log
    echo `date +%Y-%m-%d_%H.%M` >> ${GAMEPATH}/crash.log
    done



    4- Change the GAMEPATH= part to match where you installed ut2004
    5- Save this file and exit the editor program.
    6- Then type sh ./start-service to start the server.

    Gorge
     
  6. Gorge

    Gorge Resident

    Joined:
    Apr 25, 2009
    Messages:
    134
    Likes Received:
    35
    Location:
    Paris, France
    Script

    Hello,

    with Ubuntu 8.04 LiveCD, I wrote the script (with Gedit).
    See FTP. Name is 'start-service', with no extension.

    You have to edit it (with a Linux text editor).See my post above. If you don't have, try a Linux LiveCD.

    Gorge
     
  7. techguyone

    techguyone Elite Member

    Joined:
    Jan 1, 2009
    Messages:
    79
    Likes Received:
    0
    Servers still down (Or it appears to be to me)
     
  8. InsaneNutter

    InsaneNutter Resident Nutter Staff Member

    Joined:
    Jun 1, 2007
    Messages:
    11,247
    Likes Received:
    3,344
    Location:
    Yorkshire, England
    Gorge, thanks for your script.

    At the moment we are using the script below to start, stop, and check the server is running.

    The end result is we can just ssh in to the server and type ./ut2004server start to set it running again. or check to check the status of it and stop to stop it.

    I believe we need to get the script to run as a cron job (system service) under Linux, then it can check the server is running say every 5 mins and re start it if it has failed.

    I dont really have a lot of time at the moment, got two assignments in next week sadly and Linux is not really my strongest point. If anyone has experience in setting up a cron job that would be a great help, i have looked at a few guides but as you can probably guess Ive not been successful in doing so.... yet!

    Code:
    #!/bin/bash
    #
    # Universal start/stop script 
    # - small modifications made for Ut2k4
    # ! IF you want to use it for other games REMOVE these lines
    # -> cd ${basedir}/System
    # NOT THESE cd ${basedir}
    #
    # Script Version: 0.3
    #
    # ! awk needs to be installed !
    # 
    # !! WARNING !!
    # I am not responsible for damage caused by misconfigurations  
    # to your installation or any other damage that may occure.
    #
    # Info:
    # This script is made by SkuLLy <info@dominating.nl>
    #
    # Support:
    # sign up on the dominating.nl forums
    # http://www.dominating.nl/forum
    #
    # Read the INSTALL file for more info about this script and ways
    # to install it in crontab.
    #
    # Script is universal for different linux distro's
    # this is done on purpose to make it easy to use 
    # and portable. We are NOT using start/stop daemon
    # tools written for each distro e.g. start-stop-daemon
    # on Debian.
    #
    # Vars
    # basedir = game install directory without trailing slash!
    # gamebin = name of the server executable
    # gameopt = commandline options
    # gamepid = process id file. Dont change it when not needed.
    # gamelog = name and path of the logfile
    #
    # !! ONLY USE THIS WHEN YOU KNOW WHAT YOU ARE DOING !!
    # s_enable = make use of screen when 1
    # s_name = screen session name.
    #
    # Use different names for each session for easy use.
    #
    # Tested on:
    # Debian
    # CentOS 4.4
    # Ubuntu
    #
    ###################################################
    #
    #Config these setting according to your setup.
    basedir="/digiex/ut2004"
    gamename="Ut2k4"
    gamebin="System/ucc-bin"
    gamepid="${basedir}/ut2k4.pid"
    gamelog="ut2k4.log"
    gameopt="server VCTF-FaceClassic-SE-V2A?game=XGame.xVehicleCTFGame?mutator=XWeapons.MutNoSuperWeapon -multihome=93.127.227.61 ini=UT2004.ini log=UT2004.log -nohomedir &"
    #
    
    #Screen config
    #
    #ONLY USE SCREEN IF YOU KNOW HOW IT WORKS AND WANT IT.
    #MAKE SURE SCREEN IS INSTALLED!!
    s_enable=0
    s_name="ut2k4_1"
    ##################################################
    # NO CHANGES BELOW. ELSE ITS ON YOUR OWN RISK
    #
    #Checking the stuff
    if [ ${s_enable} == 1 ] ; then
    	screen=`which screen`
    fi
    if [ -f "${basedir}/${gamebin}" ]; then
    	if [ ! -x "${basedir}/${gamebin}" ]; then
    		echo -e "${gamebin} file is not executable"
    		echo -e "Please fix this and try again"
    		exit 2
    	fi
    else
    	echo "cannot find ${gamebin}!"
    	echo "If this is not correct edit the start script"
    	exit 2
    fi
    
    case "$1" in 
    	start)
    	echo -n "Starting $gamename dedicated server: "
    	cd ${basedir}/System
    	if ps -ef |grep ${basedir}/${gamebin}|awk -F" " -v game=${basedir}/${gamebin} 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
    		echo -e "already active"
    		exit 3	
    	else
    		if [ ${s_enable} == 1 ] ; then
    			cd ${basedir}
    			cp ${gamelog} ${gamelog}.crash
    			cd ${basedir}/System
    			${screen} -d -m -L -S ${s_name} $0 debug 
    		else
    			cd ${basedir}
    			cp ${gamelog} ${gamelog}.crash
    			cd ${basedir}/System
    			if ${basedir}/${gamebin} ${gameopt} >> ${basedir}/${gamelog} & sleep 1 ; then
    				pid=`ps -ef |grep ${basedir}/${gamebin}|awk -F" " -v game=${basedir}/${gamebin} 'BEGIN {status=1} ; $8 == game { print $2 } ; END {exit status}'`
    			  echo ${pid} > ${gamepid}
    				if [ -f "${gamepid}" ] && ps h `cat "${gamepid}"` >/dev/null; then
             		echo -e "....Started!"
    					exit 0	
          		else
          		   echo -e "....Failed to start. Check logfile or run in debug!"
          		   exit 1
          		fi
    			else
    				echo -e "Failed"
    			fi
    		fi
    	fi
    	;;
    	stop)
    	echo -n "Stopping $gamename dedicated server: "
    	if ! ps -ef |grep ${basedir}/${gamebin}|awk -F" " -v game=${basedir}/${gamebin} 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
    		echo -e "server not running or crashed."	
    	else
    			pid=`ps -ef |grep ${basedir}/${gamebin}|awk -F" " -v game=${basedir}/${gamebin} 'BEGIN {status=1} ; $8 == game { print $2 } ; END {exit status}'`
    			echo ${pid} > ${gamepid}
    			kill -9 `cat ${gamepid}`
    			if ! ps -ef |grep ${basedir}/${gamebin}|awk -F" " -v game=${basedir}/${gamebin} 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
    				echo -e "stopped"
    				exit 0
    			else
    				echo -e "unable to stop server or server crashed"
    			fi
    	fi	
    	;;
    	status)
    	echo -n "`date +"%Y-%m-%d %H:%M:%S"` Checking $gamename dedicated server status: "
    	if ! ps -ef |grep ${basedir}/${gamebin}|awk -F" " -v game=${basedir}/${gamebin} 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
    		echo -e "server not running or crashed... Restarting"	
    		if [ ${s_enable} == 1 ] ; then
    			cd ${basedir}
    			${screen} -d -m -L -S ${s_name} $0 debug
    		else
    			$0 start
    		fi
    	else
    		echo -e "Server still running."
    	fi
    	;;	
    	check)
            echo -n "Checking $gamename dedicated server status: "
            if ! ps -ef |grep ${basedir}/${gamebin}|awk -F" " -v game=${basedir}/${gamebin} 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
                    echo -e "offline"
            else
                    echo -e "online"
            fi
            ;;
    	restart)
    	echo -e "Restarting $gamename dedicated server... "
    	$0 stop && $0 start
    	;;
    	debug)
    	echo -n "Starting debug mode for $gamename dedicated server: "
       	cd ${basedir}
       	if ps -ef |grep ${basedir}/${gamebin}|awk -F" " -v game=${basedir}/${gamebin} 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
       		echo -e "already active"
    		exit 3	
    	 else
    		echo "--DEBUG will appear on screen!"
       		echo "--Hit CTRL+C to kill the server!"
       		cd ${basedir}
    		cp ${gamelog} ${gamelog}.crash
    		cd ${basedir}/System
    		${basedir}/${gamebin} ${gameopt}
       fi
    	;;
    	*)
       echo "Usage: $0 {start|stop|restart|status|check|debug}"
       exit 1
    esac
    
    Im gonna speak to our host as the server seems to be down everytime i come on here now, the logs dont show anything as to why the server could have crashed.
     
  9. Gorge

    Gorge Resident

    Joined:
    Apr 25, 2009
    Messages:
    134
    Likes Received:
    35
    Location:
    Paris, France
    Hello,

    the script that I proposed just restarts automatically the server if it crashes. It is used to start the server : just type start-service.

    But infortunatly, it doesn't do other things that your script does.

    If you wish, I'd like to have an idea of the log contents (not all, of course).

    Gorge
     
  10. InsaneNutter

    InsaneNutter Resident Nutter Staff Member

    Joined:
    Jun 1, 2007
    Messages:
    11,247
    Likes Received:
    3,344
    Location:
    Yorkshire, England
    Our host is performing scheduled maintenance on there network and machines from 11pm to 1am GMT tonight, the UT 2004 server will be offline during that time however Digiex its self and any other services will remain online.
     
  11. Raf-<Maf

    Raf-<Maf Member

    Joined:
    Dec 7, 2009
    Messages:
    13
    Likes Received:
    0
    The lag is very very annoying!!
     
  12. techguyone

    techguyone Elite Member

    Joined:
    Jan 1, 2009
    Messages:
    79
    Likes Received:
    0
    MCMDX is being accused of using an aim-bot by Scrappy.DLL, I don't know if its true or not, but even at high lag he almost never misses, is there a way to verify/have a chat with him
     
  13. Gorge

    Gorge Resident

    Joined:
    Apr 25, 2009
    Messages:
    134
    Likes Received:
    35
    Location:
    Paris, France
    Hello techguyone,

    It's strange :
    You don't say Leecher is a cheater, with his efficiency. And you accuse MCMDX, who plays less well.

    Just because for Scrappy, ALL players better than him are cheaters.
    Even if AntiTCC prevents cheating.

    MCMDX is not and definetly not a cheater.

    Before accusing someone, check who is the accuser.

    My advice to Scrappy : learn to play.

    Gorge
     
  14. BabaJaga

    BabaJaga Member

    Joined:
    Feb 7, 2010
    Messages:
    16
    Likes Received:
    0
    I do 8o|

    Some of us found out last year that this guy was cheating (aimbot AND wallhack). It's making me angry if someone uses cheats to compensate his own weakness. But that is not the point. (Well, I leave when he joins.)



    At first, hi everyone.

    I just had a crazy situation.
    While a bot catches the flag, he often doesn't finish his run back to our base. He starts to run around just in front of our flag. Somtimes he takes a vehicle and than he tries to get to our base instead of run. *-)

    I also think, we don't need maps like RedSands. For instagib those maps are too big.

    In MistyGlen tanks spoil the gameplay. They're turrets, jeeps and scorpions. There is no more space for IMBA tanks imo. :D

    Thanks and bye!
     
  15. Slaz

    Slaz Addict

    Joined:
    Aug 17, 2008
    Messages:
    328
    Likes Received:
    16
    Location:
    Netherlands
    Many times I can recognize AIMBot shots between the real ones, so I may check in the server soon.. :P
     
  16. Gorge

    Gorge Resident

    Joined:
    Apr 25, 2009
    Messages:
    134
    Likes Received:
    35
    Location:
    Paris, France
    Hello BabaJaga,


    Yes, it's problem, but no solution. This is due to bots artificial intelligence.
    When I debug a map, I can see the bots decisions (see screenshots) based on circumstances : ' attack or not, take the path on left or right, lift, etc.' There are algorithms for the choices.
    In VCTF mod, the bots are programmed to take vehicles in priority.

    I can change that : no tanks, or more time before respawning, or an other vehicle.
    But only if an admin wants first.

    Gorge
     

    Attached Files:

    • 001.jpg
      001.jpg
      File size:
      755 KB
      Views:
      486
    • 002.jpg
      002.jpg
      File size:
      666.1 KB
      Views:
      499
  17. BabaJaga

    BabaJaga Member

    Joined:
    Feb 7, 2010
    Messages:
    16
    Likes Received:
    0
    Hi again,

    if there is a possibility, ingame speech-channel should be switched off! Some guys just use it to play music or to talk bullshit. That is so annoying! There is no need for ingame speech. If someone needs it, he/she can use Teamspeak or whatever.

    Thanks!

    (*back to game*) :D
     
  18. Gorge

    Gorge Resident

    Joined:
    Apr 25, 2009
    Messages:
    134
    Likes Received:
    35
    Location:
    Paris, France
    Hello BabaJaga

    Just disable 'Voice Chat'.

    Gorge
     

    Attached Files:

    • 001.png
      001.png
      File size:
      140.6 KB
      Views:
      549
  19. BabaJaga

    BabaJaga Member

    Joined:
    Feb 7, 2010
    Messages:
    16
    Likes Received:
    0
    :P:P

    lol!

    :P:P

    omg, should have found it by myself! Thanks anyway <:o)<:o)
     
  20. Gorge

    Gorge Resident

    Joined:
    Apr 25, 2009
    Messages:
    134
    Likes Received:
    35
    Location:
    Paris, France
    Hello

    Really ?
    And you were still annoyed ?
    Tsst,tsst

    Gorge
     

Share This Page