Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SteamCMD AutoUpdate need help #13

Open
Mannot74 opened this issue Feb 4, 2017 · 14 comments
Open

SteamCMD AutoUpdate need help #13

Mannot74 opened this issue Feb 4, 2017 · 14 comments

Comments

@Mannot74
Copy link

Mannot74 commented Feb 4, 2017

Hi !!

I tested your script from "steamcmd"
It seems to validate and download an update, but it does not stop and does not restart the server, it does not send a chat message, and there are some errors ..
I tested with a server "RUST" and a server "Conan Exile" ..
Can anyone help me?
If yes I could specify and post my settings .. (sorry for bad english)

I tried with login anonymous and login with ids

My settings :

`@ECHO OFF

::==============================::
:: SteamCMD Auto Updater 1.7 ::
:: Credits ::
:: C0nw0nk ::
::==============================::
:: https://github.com/C0nw0nk/SteamCMD-AutoUpdate-Any-Gameserver ::

:: This is the SteamDEV api key required for automatic updates ::
:: If you do not have one you may obtain your API key from here = http://steamcommunity.com/dev/apikey ::
set steamkey=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

:: This is the required login for SteamCMD to download updates ::
:: example = login=C0nw0nk Password ::
:: For most game servers you do not require this and can leave it as anonymous ::
:: Certain game servers you have to use a username and password to install them ::
set login=anonymous

:: This is the directory you wish to install and keep your server updated to ::
set install_directory=C:\ConanexileTEST

:: This is for the directory where you installed steamcmd ::
:: http://media.steampowered.com/installer/steamcmd.zip ::
set steamcmd_path=C:\steamCMD\steamcmd.exe

:: This is the path to the exe of the game server this allows us to close and run the server for and after a update ::
:: Other command line variables for srcds can be found here https://developer.valvesoftware.com/wiki/Command_Line_Options ::
:: Example ::
:: set exe_path=C:\game-servers\CSGO\srcds.exe -game csgo -console -nocrashdialog -port 27015 +clientport 27005 +map de_dust2 ::
set exe_path=C:\ConanexileTEST\ConanSandboxServer.exe -log -MULTIHOME=xxx.xxx.xxx.xxx?QueryPort=29016?ServerName="[EU/FR]-[PVP] System Of Gaming - The Cimmerian"?MaxPlayers=70

:: This is the title of your server this will help you know what server this auto updater is running for ::
set servername=[EU/FR]-[PVP] System Of Gaming - The Cimmerian

:: This is the app ID of the game server you are installing / running ::
set appid=443030

:: This is the app ID the url will check for updates on that game ::
:: Some games this is the same as the installation appid other games it is a different numeric value ::
:: if your latest-version.txt file is empty you need to make this value different to the installation appid, just go to the steam store page and get the appid from the end url ::
set update_appid=443030

:: Automatic Updating Interval (in seconds) this will set how often you check the steam servers for a new update ::
:: I recommend 5-10 mins maximum ::
:: Default value 60 seconds 1 minute ::
set interval=120

:: Suppress application error messages, Usualy when your game server crashes you get flagged the following error ::
:: "srcds.exe has stopped working. Windows can check online for a solution to the problem" ::
:: and even after disabling error reporting and the message above you will get the following message instead ::
:: "srcds.exe has stopped working. A problem caused the program to stop working correctly. Please close the program" ::
:: With the following setting the script will prevent all these errors and get your server back online as soon as a crash occurs ::
:: set to false to disable this feature ::
:: Use -nocrashdialog in exe_path to also help suppress server crashes ::
set suppress_errors=true

:: Don't edit anything past this point ::

:: I AM SERIOUS DO NOT TOUCH ::

:: DON'T MAKE ME HURT YOU! ::

:: il fite u ::

:: Do you realy want some! ::

:: Come on don't be a skrub! ::

:: Sorry did not mean anything I just said go ahead and edit below this point see if I care (seriously just don't touch anything below this)::

:: for the fact you have even scrolled down this far shows your persistence ::`

@Mannot74 Mannot74 changed the title Are you here ? lol SteamCMD AutoUpdate need help Feb 4, 2017
@C0nw0nk
Copy link
Owner

C0nw0nk commented Feb 4, 2017

Did you try using the CURL version of the script instead it tends to work better.

The steamcmd.cmd version needs a few updates and bug fixes I have not got around to yet the steamcmd.cmd script is a stripped out bare knuckle version of the steamcmd-curl.cmd it does not have requirements / rely on dependencies to run like Powershell, VBScript and the CURL program. The steamcmd.cmd script only relies on VBScript nothing else making it lighter.

Just use the CURL script and all should work fine they both function the same.

Also I can't tell maybe you did it for this public post but do make sure you acquire and input your Steam DEV API key into the batch file for the auto updater to communicate with the steam master servers.

@C0nw0nk
Copy link
Owner

C0nw0nk commented Feb 4, 2017

Another thing I noticed was this.

set exe_path=C:\ConanexileTEST\ConanSandboxServer.exe -log -MULTIHOME=xxx.xxx.xxx.xxx?QueryPort=29016?ServerName="[EU/FR]-[PVP] System Of Gaming - The Cimmerian"?MaxPlayers=70

I never did test when I made this how it would react to quotation marks but my understanding of command line scripting tells me you should be escaping those quotes.

set exe_path=C:\ConanexileTEST\ConanSandboxServer.exe -log -MULTIHOME=xxx.xxx.xxx.xxx?QueryPort=29016?ServerName=\"[EU/FR]-[PVP] System Of Gaming - The Cimmerian\"?MaxPlayers=70

Notice the \" escaping your quotes.

But maybe it will work without you needing to escape them but just in case you know what to do.

@Mannot74
Copy link
Author

Mannot74 commented Feb 5, 2017

Thanks for reply @C0nw0nk. I will try CURL etc and send you result.

@Mannot74
Copy link
Author

Mannot74 commented Feb 5, 2017

I tried with CURL, and it do the same.. No message, no reboot, no restart, only validating.

And the error :

- The specified file can not be found.
- FINDSTR: No search channels
- Error: The search filter is not recognized.
- Redirecting stderr to 'C \ steamcmd \ logs \ stderr.txt'
- Checking for available updates ...
- Steam console client c valve corporation
- Type quit to exit
- Loading Steam API ... ok
- Connecting anontmously to steam public logged in ok
- Waiting for license info .. ok
- Update state 0x5 validating, progress ..... (Until the end of the update, and repeats loop)

The log stderr :
Assert( Assertion Failed: Illegal termination of worker thread 'SocketThread' ):threadtools.cpp:3272

@C0nw0nk
Copy link
Owner

C0nw0nk commented Feb 5, 2017

Did you do what I said in this comment. Quotation marks could be the problem.

#13 (comment)

Perhaps remove ?ServerName="" from the command line surely you can set the servers name in a config file instead.

@Mannot74
Copy link
Author

Mannot74 commented Feb 5, 2017

Ok thanks for reply, I will try soon, quotation and ?ServerName= ""

@Mannot74
Copy link
Author

Mannot74 commented Feb 6, 2017

Same, error/checking/connect steam/validating/succes/repeats loop, but no message, no shutdown, no update?, no restart. i tried with CURL with these settings

set steamkey=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

set login=anonymous

set install_directory=C:\rustserver

set steamcmd_path=C:\steamCMD\steamcmd.exe

set exe_path=C:\rustserver\RustDedicated.exe -batchmode +server.ip xxx.xxx.xxx.xxx +server.port 28015 +server.worldsize 4000 +server.seed 666 +rcon.port 28016 +server.identity "my_server" +rcon.password "xxxxxxx"

set servername="[EU|FR]-[RUST BAD] ALL VANILLA wipe 02/02"

set appid=258550

set update_appid=258550

set interval=240

@Mannot74
Copy link
Author

Mannot74 commented Feb 6, 2017

Same, i tried without "" in exe_path :

set exe_path=C:\rustserver\RustDedicated.exe -batchmode +server.ip xxx.xxx.xxx.xxx +server.port 28015 +server.worldsize 4000 +server.seed 666 +rcon.port 28016 +server.identity my_server +rcon.password xxxx

set servername="[EU|FR]-[RUST BAD] ALL VANILLA wipe 02/02"

@Mannot74
Copy link
Author

Mannot74 commented Feb 6, 2017

i will try with clean install of a server "rust", and try a small exe_path without quote ""
And, there is a solution for send you logs of your script ?

@Mannot74
Copy link
Author

Mannot74 commented Feb 6, 2017

Same prob, i post the settings :

set steamkey=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

set login=anonymous

set install_directory=C:\RUSTTEST

set steamcmd_path=C:\steamCMD\steamcmd.exe

set exe_path=C:\RUSTTEST\RustDedicated.exe -batchmode +server.identity my_server -cfg server\my_server\cfg\server.cfg

set servername="[EU|FR]-[RUST BAD] ALL VANILLA wipe 02/02"

set appid=258550

set update_appid=258550

set interval=240

Always the same error at the beginning in the console, file not found ... but the script seems to launch the validation of the files :

- The specified file can not be found.
- FINDSTR: No search channels
- Error: The search filter is not recognized.
- Redirecting stderr to 'C \ steamcmd \ logs \ stderr.txt'
- Checking for available updates ...
- Steam console client c valve corporation
- Type quit to exit
- Loading Steam API ... ok
- Connecting anontmously to steam public logged in ok
- Waiting for license info .. ok
- Update state 0x5 validating, progress ..... (Until the end of the update, and repeats loop)

No message, no reboot, only validating, and repeats loop without timer

@Mannot74
Copy link
Author

Mannot74 commented Feb 6, 2017

Hello
OS windows server 2012, I would like to continue to do tests, with a server "Rust" and a server "Conan Exile"

Can you tell me if the error at startup of the script console is normal? (The text of the error on my console is in French, so I translated it)

- The specified file can not be found.
- FINDSTR: No search channels
- Error: The search filter is not recognized.
- Redirecting stderr to 'C \ steamcmd \ logs \ stderr.txt'

@Mannot74
Copy link
Author

Mannot74 commented Feb 7, 2017

up :)

@Mannot74
Copy link
Author

up

@johanwintgens
Copy link

Hey I just resolved this on my end. In the set exe_path, escape your quotes like so: \"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants