1. When making a thread, please tag your thread accordingly using the menu to the left of the textfield where you name your thread where applicable. Server Advertisements and Mod Releases should be contained to their respective subforums.

Tutorial Windows Stand Alone Dedicated Server Setup( v. Enraged Koala )

Discussion in 'Multiplayer' started by Sven2157, Dec 31, 2013.

Thread Status:
Not open for further replies.
  1. Sven2157

    Sven2157 Space Penguin Leader

    Why is this better than other options?
    SteamCMD requires the Steam file structure and the game installed, to operate. This method, shows users how to extract JUST the files( from the Steam game( client ) install ) needed to run a server. The server is then run and maintained separate from Steam, altogether.

    What are the benefits over the other options?
    This allows one to run the game without Steam( or Steam Login ), on a separate, or the same, computer, completely independent of the hosting users game.

    Summary:
    This is a very detailed guide. However, the actual steps are outlined below:
    1. Copy ONLY the files needed to run a dedicated server( NO, All the files are not needed! ).
      • Use the provided BAT file to automate this. ** UPDATED v. ENRAGED KOALA
    2. Move to where you want the folder to stay, or another computer.
      • Optional - Create a Desktop Icon for the game.
      • Optional - Set the icon to always run as administrator.
    3. Run the starbound_server.exe as Admin.


    I asked a while ago about dedicated server binaries, over in the Steam Forums. No one could really answer. I just bought the game, and was looking through these forums, and found A TON for Linux, but not much for Windows hosting, or anything about running on a separate computer/server machine.

    So I wrote back a reply, and then figured I would share it here, as well.

    There is a dedicated server package, within the Steam install - sort of. What I mean by that is, dedicated server binaries usually don't need a product key, graphics, sound, etc, etc. They are solely there to transfer data between the players( clients ) and the world( server ). It was also asked, in my thread, over at the Steam Forums:
    I now have an answer: Yes there is!

    So here is how I set up my Windows Dedicated Server, on a second PC.

    First I need to define a couple things, so I don't have to type so much.
    • - Starbound Folder = the main folder located in your Steam hierarchy. Default:
      • "C:\Program Files (x86)\Steam\SteamApps\common\Starbound"
    • - Server Folder = the new folder you will create on the second PC for the dedicated server.

    Since this can be a daunting task, I created a simple batch( BAT ) file that one can run to copy all the needed files, automatically. It creates all needed folders on the User's Desktop, inside a folder named: StarboundServer
    • Follow this link: createStarboundServerFolder.txt - ** UPDATED v. ENRAGED KOALA
    • Press CTRL+S to save the page.
    • Save the file as: createStarboundServerFolder.bat.
    • Run the new BAT file, to create your Server Folder.
    This process, makes the following portion( spoiler ) of this guide, more of a list of files.

    To get started manually:
    • Create a new folder on your Desktop. This will be the new Server Folder.
      • Right click, then immediately hit W, then F
      • Name it something logical.
    • Navigate to your Starbound Folder. We need a few things from here:
      • Copy the entire ASSETS( ~710MB ) folder to the new Server Folder.
      • Copy the MODS( ~<1B ) folder to the new Server Folder.
      • In the new Server Folder, create a new folder called 'win32'.
      • Back in the Starbound folder, Open the win32 folder, and copy the following files ONLY to the new win32, in the new Server Folder:
        • bootstrap.config
        • cygogg-0.dll
        • cygvorbis-0.dll
        • lua52.dll
        • pcre3.dll
        • cygvorbisfile-3.dll
        • freetype6.dll
        • libpng12-0.dll
        • starbound_server.exe
        • zlib1.dll
      • In the Starbound Folder, copy the starbound.config and starbound.ico( if you want a nice Desktop launch icon for your server. ), to the new Server Folder.

    So let's get started:
    • Now you should have 3 folders, and 2 files in the new Server Folder. Copy the new Server Folder( ~1.11GB ) to your Server Machine.
    • Move this folder to where you want it to stay.
    • Navigate to the new location, go into the win32 folder.
    • Right click the starbound_server.exe.
    • Hover over 'Send to' in the right click context menu, and then choose 'Desktop (create shortcut)'.
    • Close Windows Explorer
    • Locate the new shortcut on your desktop, and right click it.
    • Windows Vista/7/8/8.1 users:
      • Choose properties, and then on the 'Shortcut' tab, click the Advanced... button.
      • Tick the box for 'Run as administrator'. Click OK.
    • If you chose to include the .ICO file, do the following:
      • Click the 'Change Icon...' button, close the warning if you receive one.
      • Click Browse, and navigate to your new Server Folder location.
      • Select the starbound.ico file( Penguin looking icon ), click Open, then OK, then Apply, then OK again. WheW!
    • On the general tab, rename this shortcut to something logical. ex: Starbound Server
    • Now navigate back to your new Server Folder.
    • Using a text editor, I highly recommend Notepad++, but I guess Windows Notepad will do, open the starbound.config file.
    • Somewhere around line 22, is a variable called: maxPlayers. By default this is set to 8, but you can change it to whatever you like.
      • Keep in mind that maxPlayers is directly proportional to your bandwidth. One should keep in mind specifically their OUTBOUND bandwidth, as this i usually the slower of both inbound and outbound. Allowing too many players, could result in serious network lag.
    • Somewhere around line 33( about 2/3 the way down ), you will see a variable called "serverName". You guessed it! Change it to the desired name of your server.
    • The next line is for server passwords. This is an array, and looks like this:
    • The first item is just 2 double-quotes( " ). You need to set this to a password, the public can use. If you don't want a password leave it as it is.
    • The second in the array is "duckies", and I believe this is a Moderator/Admin password? This NEEDS to be changed, to something different.
    • The third in the array is "swordfish", and I believe this is the SuperAdmin password? Again, change this, and ONLY give it to people you trust!
    • Save the file.
    • Close everything, and start your server.

    To start your server, just double click the new Starbound Server Icon on your desktop.

    The server executable also takes 3 parameters: -bootconfig, -log and -worldcoordinates. Advanced server admin can add these to the Shortcut if they want to run alternate files or starting points on their worlds. If anyone has anything to add, please post it: like why there is an array of passwords, and what they are for.

    Hope that helps! ;-)

    =170= Sven2157
     
    Last edited: Feb 20, 2014
  2. Sven2157

    Sven2157 Space Penguin Leader

    + ADDED New files to manual copy instructions.
    + Update BATCH script to include the two new DLL files - v. Furious Koala
    + Created BAT file, to simplify initial creation, updating needed stand alone server files.
    + Added updated/edit section for BAT file instructions, to tutorial.
    + Added clarification to what this thread is about.
     
    Last edited: Jan 31, 2014
    NiSiSuiinegEht likes this.
  3. ttrev001

    ttrev001 Tentacle Wrangler

    Thank YOU!!!!
    I really wanted to be able to have a separate server so i could have my single player universe separate from my friends mess. The instructions were very clear and easy to follow. I logged in, and it works. HAPPYNESS!:D

    Thank you again, you have no idea how much i needed this. I am having a Happy New Year! and hope you have a great one too!
     
    Sven2157 likes this.
  4. Sven2157

    Sven2157 Space Penguin Leader

    You are quite welcome! With comments like these, my year can only get better! Happy New Year! ;)
     
  5. Radish

    Radish Poptop Tamer

    Great, but...
    Have you a link with archive ? 'cause my connexion is really too slow for send 1,11Go on my server and I wont install steam on a virtual machine.
    Thx.
     
  6. Sven2157

    Sven2157 Space Penguin Leader

    I do not think I can provide one, and for several reasons. Mainly because I am almost certain that it will break Steam and Chucklefish Games EULA, and copyright laws, regarding ( re )distribution. There is also the ROOT KEY that is stored in several files, that I believe is the game's hashed product key; So sending out my archive, would also be sending out my game.

    Where is your server located? Is a thumb drive out of the question?

    You know:
    This will also work on the same PC as your game is installed. You could setup the server independent of the Steam install. This way if you need to restart your game, you could do so, without the need to shutdown the server.

    *** EDIT ***
    Let me see if I can get that size smaller. I got lazy on finding the EXACT files needed in the ASSETS folder. Like images, they are not needed, so that can be trimmed, etc, etc. Give me an hour or so....
     
    supernet2 likes this.
  7. Syntax42

    Syntax42 Pangalactic Porcupine

  8. Sven2157

    Sven2157 Space Penguin Leader

    How so? To copy ONLY the files needed to run a Stand Alone Dedicated Server?

    The whole point is to not have to use Steam at all. This then drops the need to have to login, etc, etc. Users already have all the files they need. And when the game updates on their computer through Steam, they just have to run the Batch file to copy the new files. Then over-write the ones on their server machine, or in the server folder.

    By the way, this is WAY less complex then the Linux Guides, I have seen.
     
  9. Sven2157

    Sven2157 Space Penguin Leader

    @Radish

    Alright... As I had stated before, this is not really a dedicated server. I managed to clean the assets folder - which is the majority of girth, in terms of size - and I got rid of all PNG, OGG and WAV files. This got the folder down to ~487MB. I then zipped it using 7-zip, into a ZIP file and this brought it down to ~99MB. I then tried to zip the folder using the 7Z format, and this brought it down to ~64MB. However, after I tried to start the server, it fatally error-ed, with a statement about "couldn't find asset <filename>.png", and then abruptly exited.

    Honestly, there is NO REASON in the world, why a server, with no client, needs to load audio and images. But since this is Beta, you can't fault Chucklefish Games, too much. So I am afraid until they release an actual Dedicated Server Binary Package, this will have to do. I believe if you zip the new ServerFolder, using the 7Z format, it gets it down to ~600-700MB.

    Sorry I couldn't be of more help!

    NOTE: If you would like to see the cleaned up BAT file: No Images / No Audio DOESN'T WORK! createStarboundServerFolder.bat
     
  10. Radish

    Radish Poptop Tamer

    Ok, i've install steam on server et download the game. I've separated the files but I can't to be teleported on earth.

    In the log, this is that it whrite :

    Error: World thread has died, removing world alpha:-65778275:-2956352:-5579105:5:2

    It doing this when I launch the server in the steam install or with your method...
    If you have a solution please. ^^

    PS: I understand is a beta and I don't crazy, and I'm not crazy with chucklefish, just I want to find
    a solution. ;)
     
  11. Sven2157

    Sven2157 Space Penguin Leader

    I would love to be able to help you, but I have no information about your server's environment, nor what steps you took to get to this point.

    However, based on this statement:
    ... I must ask: does the StarboundServer folder have READ & WRITE permissions? It sounds as though there is no permission to create, or write to, the UNIVERSE folder, when the server is first created.

    Do you have a single player game, that you started? Maybe you could transfer the UNIVERSE folder from your single player to the server. Then just overwrite the folder on the server. Try that, and the let me know.

    :ninja:
     
  12. Syntax42

    Syntax42 Pangalactic Porcupine

    SteamCMD is not the same as Steam. It is a minimal command-line executable which only needs to run when you need to update the game. You can even make a script and .bat file to simplify the process to a double-click for updating. The only downside, as you mention, is that the user needs to sign out of Steam on their gaming computer for the duration of updating through SteamCMD. I think the update process is simpler than manually copying files, plus it is easier to set up for remote execution if you are running a server but have to leave home for vacation or work.

    Most of the Linux guides include instructions for port forwarding and setting up the system's firewall, which yours doesn't include for Windows.

    For reference or the curious, here are the commands to put into a script for updating Starbound:
    Code:
    login email@address.com
    force_install_dir C:\starbound
    app_update 211820
    quit
    This script requires modification for your installation, of course. It also requires that you have logged in to SteamCMD by running it once before, manually performing the commands above. To run the script, save the text in a text file. Then, create a .bat which has "steamcmd +runscript update.txt".

    Please create a new thread for troubleshooting problems. It helps keep threads on the topic the OP made.
     
  13. Sven2157

    Sven2157 Space Penguin Leader

    @Syntax42
    You miss the whole point of this thread, and are now going off topic. This is a simple Guide, on how to use the provided BAT file, to create a Stand Alone server, on a Windows machine.

    Again, this is a guide on HOW TO CREATE A STAND ALONE SERVER ON WINDOWS. Port forwarding is not within the scope of the instructions, because there are 4 million other posts about how to port forward.

    This guide is a clear example of how to do this, WITHOUT modifying ANY files at all. It simply copies the bare minimum files needed to start the starbound_server.exe; which is all that is needed to run a Starbound Server on Windows.

    I was with you, in an intellectual debate, until this: Unless you are a forum Moderator or Admin, that is a bit nervy! Since you are the one who has come into my thread, declaring that my guide is, essentially, horrible.

    Your posts are borderline thread hijacking; Stating that it is too complex, complaining about the supposed lack of information and then providing alternate methods, which are clearly opposite of the scope of this post.

    Here is what I propose:
    • Have you even tried this method?
      • If not, then please post no further.
      • If you have tried it and have questions, within the scope of this thread, then please ask.
    • If you feel that this thread is offensive or against the forum Rules/ToS, then please report that to a Admin/Moderator.
    Otherwise, please move on.
     
  14. Syntax42

    Syntax42 Pangalactic Porcupine

    No need to get hostile. My posts were pointing out the complexity of your installation and update method. The little script for SteamCMD is a lot shorter than your long instructions and it does essentially the same thing - installs the server files on a computer.
     
  15. Sven2157

    Sven2157 Space Penguin Leader

    I was not getting hostile. SteamCMD does not do this. It downloads the whole game. This is not necessary. My installation is not complex at all. As noted by the people WHO HAVE ACTUALLY USED IT!

    Besides:
    Supported Servers
    This is the known list of servers that require steamcmd to install. Any listed extra command line options need to be before the app_update line.

    [​IMG] Bug:HLDS (appid 90) currently require multiple installs before the game's files are installed. Possible workaround for this problem available. [link http://wp.me/p2LXdp-FM]
    [​IMG] Bug:Some apps can only be downloaded when logged in as anonymous. (e.g. CS:S will not work with a normal Steam account)
    [​IMG] Note:The + and quotes in the extra command line options aren't needed when using automation as detailed in a later section.
    [​IMG] Note:Items marked as Beta below may require -beta beta as part of their app_update argument... ex. +app_update "90 -beta beta"

    Now, if you are not going to try this method, and ask or add to the scope of the post, PLEASE STOP POSTING!
     
    teihoo likes this.
  16. Syntax42

    Syntax42 Pangalactic Porcupine

    SteamCMD works just fine for downloading the game on the server, even though it isn't in that list.

    Maybe an explanation of why someone would want to go through all of your steps instead of using SteamCMD's simpler process to install the game would help.
     
  17. Sven2157

    Sven2157 Space Penguin Leader

    This is just harassment now. I have asked you a couple times to stop with this, as it is not within the scope of this post.
     
  18. Hey, just leave the guy alone and let him stick to his tutorial and please stop posting if he asked you to, I hope you'd understand =)
    Just let him do his thing.


    This is not harassment, he wasn't being rude or anything. He simply pointed out yet another way to get this done.
    Have a good day!
     
    Last edited by a moderator: Jan 10, 2014
  19. supernet2

    supernet2 Existential Complex

    Thanks a ton for this post not a fan of steam command AT ALL. You've made it easier for me to run a server on a windows platform. Thanks!
     
    Sven2157 likes this.
  20. Sven2157

    Sven2157 Space Penguin Leader

    You got it! :ninja:
     
    supernet2 likes this.
Thread Status:
Not open for further replies.

Share This Page