Native Linux server available



  • I am getting better results with the Amazon Linux AMI (based on RedHat/Fedora), the server process actually starts up, but it’s not listening on the port specified in the command I’m using to start the server:

    ./UDKGameServer-Linux AOCFFA-Arena3_p?steamsockets?port=7000 -queryport=7500 -seekfreeloadingserver

    Netstat shows that it’s not listening on port 7000 or 7500:

    -bash-4.1$ netstat -l
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address Foreign Address Stat e
    tcp 0 0 *:ssh : LIST EN
    tcp 0 0 *:27960 : LIST EN
    tcp 0 0 localhost:smtp : LIST EN
    tcp 0 0 *:ssh : LIST EN
    udp 0 0 *:afs3-fileserver :
    udp 0 0 *:afs3-callback :
    udp 0 0 *:bootpc :

    -bash-4.1$ telnet localhost 7000
    Trying 127.0.0.1…
    telnet: connect to address 127.0.0.1: Connection refused

    Any suggestions for resolving this issue?


  • Developer

    @Wormius:

    I am getting better results with the Amazon Linux AMI (based on RedHat/Fedora), the server process actually starts up, but it’s not listening on the port specified in the command I’m using to start the server:

    ./UDKGameServer-Linux AOCFFA-Arena3_p?steamsockets?port=7000 -queryport=7500 -seekfreeloadingserver

    Netstat shows that it’s not listening on port 7000 or 7500:

    -bash-4.1$ netstat -l
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address Foreign Address Stat e
    tcp 0 0 *:ssh : LIST EN
    tcp 0 0 *:27960 : LIST EN
    tcp 0 0 localhost:smtp : LIST EN
    tcp 0 0 *:ssh : LIST EN
    udp 0 0 *:afs3-fileserver :
    udp 0 0 *:afs3-callback :
    udp 0 0 *:bootpc :

    -bash-4.1$ telnet localhost 7000
    Trying 127.0.0.1…
    telnet: connect to address 127.0.0.1: Connection refused

    Any suggestions for resolving this issue?

    If it’s on the command line, QueryPort should be specified like the port is (as a URL parameter). And things might not work right if the working directory isn’t set to the Binaries/Linux directory. I have a quick and dirty Upstart script for each of the servers on an ec2 instance that just starts them like:

    chdir /home/ec2-user/Steam/steamapps/common/chivalry_ded_server/Binaries/Linux
    exec /home/ec2-user/Steam/steamapps/common/chivalry_ded_server/Binaries/Linux/UDKGameServer-Linux AOCTO-Belmez-CM_p?steamsockets?Port=7080?QueryPort=7090 -seekfreeloadingserver -configsubdir=to2

    (you can omit the -configsubdir unless you’re actually using that feature; we use it to run multiple game servers from the same install directory)

    Other than that? I can’t think of anything right now. Is this a completely stock Amazon Linux AMI? I tested using Mint and Fedora locally, and using the normal Amazon Linux AMI on a c3.large; didn’t see any networking issues on any of them. Amazon Linux didn’t need any particular configuration other than installing i686 glibc and libstc++, and – outside the instance itself – setting up the security group to let through UDP traffic on the desired ports.



  • This is a recently updated stock Amazon Linux AMI , set up from scratch, and yes the security groups have been applied but the firewall doesn’t really come into play if I can’t even connect locally (telnetting to localhost).

    Running the command with the proper URL format made a little difference, but now when I run the following command (from the Binaries/Linux directory):

    sudo ./UDKGameServer-Linux AOCTO-Belmez-CM_p?steamsockets?Port=7080?QueryPort=7090 -seekfreeloadingserver

    Netstat shows that ports 7090 and 7081 (for some reason it’s not 7080) should be available:

    -bash-4.1$ netstat -l
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address Foreign Address State
    tcp 0 0 *:ssh : LISTEN
    tcp 0 0 *:27960 : LISTEN
    tcp 0 0 localhost:smtp : LISTEN
    tcp 0 0 *:ssh : LISTEN
    udp 0 0 *:empowerid :
    udp 0 0 *:7081 :
    udp 0 0 *:7090 :

    However, I still cannot telnet to localhost on ports 7090, 7081, or 7080.

    Do I need to modify a config file to point to the Chivalry game directory (and do I even need to download the actual Chivalry game to start the server)?



  • Hm. I had it all working fine on CentOS 6 for a couple days, then I updated chiv_ded_server through steamcmd and now my server does not show up in the browser.
    Running with:
    UDKGameServer-Linux AOCFFA-Moor_p?steamsockets?Port=7080?QueryPort=7090 -seekfreeloadingserver

    And a buncha -sdkfileids on the end of course.

    Here’s what I see with netstat -tulpn:
    Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
    tcp 0 0 0.0.0.0:60000 0.0.0.0:* LISTEN 347/sshd
    tcp 0 0 0.0.0.0:27960 0.0.0.0:* LISTEN 450/./UDKGameServer
    tcp 0 0 :::60000 :::* LISTEN 347/sshd
    udp 0 0 0.0.0.0:7080 0.0.0.0:* 450/./UDKGameServer



  • I’ve followed the instructions in this thread, I’m attempting to install on a dedicated Ubuntu 12.04 box.

    However, as soon as I run the server I get this:

    root@Server:~/Steam/SteamApps/common/chivalry_ded_server/Binaries/Linux# ./UDKGameServer-Linux AOCFFA-Arena3_p?steamsockets -Port=7000 -seekfreeloadingserver
    
    [S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
    Segmentation fault (core dumped)
    

    That’s all it prints.

    Any ideas?

    Also, I think putting a firm dependency list together would really help out. Can we get one of those?



  • You shouldn’t run anything as root, always as your user (but it should work as root, just you shouldn’t do it)



  • I’m attempting to run a server on Ubuntu 14.04

    Everything seems to be working fairly well, except when I try to join the server (via console) it gives me the error “Server failed to redirect to Steam sockets URL”.

    My startup script is this:

    cd ~/Steam/steamapps/common/chivalry_ded_server/Binaries/Linux
    ./UDKGameServer-Linux AOCFFA-Moor_p\?steamsockets\?Port=7777\?QueryPort=27015 -seekfreeloadingserver
    
    

    If I get rid of the ?steamsockets bit, I can join the server fine but it doesn’t show up on the server list.

    Oh, also, when I run the script, I get this output:

    [S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
    Loading library: libPhysXCooking.so
    Result of loading library libPhysXCooking.so: 0xbda9000
    Loading library: PhysXUpdateLoader.so
    ERROR: PhysXUpdateLoader.so: cannot open shared object file: No such file or directory
    Result of loading library PhysXUpdateLoader.so: 0x0
    Loading library: libPhysXCore.so
    Result of loading library libPhysXCore.so: 0xbde1c80
    [S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
    
    

    I used to get something about a .so file but I followed the directions earlier in the thread and that went away.



  • Right. If that’s what was afflicting my server…
    Took me and Crusty ages to figure that out… turns out for whatever reason I was simply missing a “steam_appid.txt” file in my Binaries/Linux folder. The contents of the file should just be:
    219640

    Bam. Worked fine after that. Really annoying because I was dicking around with it for like 2 days trying to figure out WTF was wrong with my ports/steamsockets. :P



  • Woo, it worked! Thank you so much!



  • Welp, now it seems as though the server has completely stopped reading from the ini files. Changes I make won’t update the server. It still has its old name (which was from the ini file) even though I’ve changed it! I don’t even know where it’s storing that shit.



  • Lol okay, it seems that it only reads the configuration once… I changed it to read from a subdirectory named “alice” and copied all my files there and it worked, but then when I tried to change the subdirectory files the changes didn’t apply.

    So I renamed the subdirectory to alice2, set -configsubdir=alice2 and the changes applied.

    Then I wanted to change some more things, so I changed em, renamed the subdirectory back to alice - but here’s the kicker, it kept the settings from the first time I had used the subdirectory name “alice.” In other words, the changes didn’t apply, it reverted.

    So, I guess I have to use a unique subdirectory name every time I want to change the config.



  • @Yazuak:

    Lol okay, it seems that it only reads the configuration once… I changed it to read from a subdirectory named “alice” and copied all my files there and it worked, but then when I tried to change the subdirectory files the changes didn’t apply.

    So I renamed the subdirectory to alice2, set -configsubdir=alice2 and the changes applied.

    Then I wanted to change some more things, so I changed em, renamed the subdirectory back to alice - but here’s the kicker, it kept the settings from the first time I had used the subdirectory name “alice.” In other words, the changes didn’t apply, it reverted.

    So, I guess I have to use a unique subdirectory name every time I want to change the config.

    Same issue here…
    anyway, my server is working fine :D
    running ubuntu server 14.04 64 bit

    I’m able to see it in the ingame server browser and connect to it.

    only thing that bothers me is the fact that i am getting some errors about the server missing a certain physx library:

    
    ERROR: PhysXUpdateLoader.so: cannot open shared object file: No such file or directory
    Result of loading library PhysXUpdateLoader.so: 0x0
    
    

    Also, is it possible to make the server console log more things?
    i’d like to see when someone connects or if the map changes and stuff…



  • Hi guys. I’d appreciate any help.

    I’m busy trying to set up a server and I’ve run into 1 or 2 small issue. Like Dudeface said, I added a “steam_appid.txt” file in my Binaries/Linux folder and I also copied the steamclient.so file from the Linux64 folder to the Linux/lib folder.

    [S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
    dlopen failed trying to load:
    steamclient.so
    with error:
    steamclient.so: wrong ELF class: ELFCLASS64
    [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.so.



  • Huh. It appears that whatever is trying to load steamclient.so is 32-bit, not 64-bit. Is there a 32-bit steamclient.so?



  • I’ll need to check. Wouldn’t it have automatically downloaded the 64 bit version?



  • This server don’t work after all, I don’t get how you guys made id. I always get this message when I try to execute:

    ./UDKGameServer-Linux AOCFFA-Arena3_P\?steamsockets\?adminpassword=changeme\?port=7000\?queryport=7010 -seekfreeloadingserver
    

    I always get:

    [S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
    Setting breakpad minidump AppID = 219640
    Segmentation fault
    
    

    Tried almost any distro in the linux world, always get this message.



  • Well I giveup
    this:

    [S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.Setting breakpad minidump AppID = 220070
    Segmentation fault
    

    :(



  • It says on the steam wiki that I must link these files with this command:

    ln -s steamcmd/linux32/steamclient.so ~/.steam/sdk32/steamclient.so

    But I can’t seem to find any steam folder with sdk32 in it. Where is that suppose to be?



  • Hmmm, I installed a 32bit linux distro and now I get less errors. Yay!

    Anyone have any idea what would cause this?

    vps@srv1:~$ /home/vps/Steam/steamapps/common/chivalry_ded_server/Binaries/Linux/UDKGameServer-Linux aocffa-moor_p/?steamsockets/?adminpassword=changeme/?port=7000/?queryport=7010 -seekfreeloadingserver
    [S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
    Setting breakpad minidump AppID = 219640
    Loading library: libPhysXCooking.so
    Result of loading library libPhysXCooking.so: 0xb898780
    Loading library: PhysXUpdateLoader.so
    ERROR: PhysXUpdateLoader.so: cannot open shared object file: No such file or directory
    Result of loading library PhysXUpdateLoader.so: 0x0
    Loading library: libPhysXCore.so
    Result of loading library libPhysXCore.so: 0xb898500
    Aborted (core dumped)



  • @Charly:

    It says on the steam wiki that I must link these files with this command:

    ln -s steamcmd/linux32/steamclient.so ~/.steam/sdk32/steamclient.so

    But I can’t seem to find any steam folder with sdk32 in it. Where is that suppose to be?

    This instruction don’t work, just copy steamclient.so from steamcmd/linux32 to /Steam/steamapps/common/chivalry_ded_server/Binaries/Linux/lib


Log in to reply