[2019-03-12 19:58:44.527] [TID:15892] DATAERROR: DedicatedServerLauncher - SendDiscordWebhookMessage: Failed sending the message 'Checking the status of the installed mods:
#880454836 ("Pippi - User & Server Management - v2.1.11")
- WorkshopTime: 2019.01.18 03.59.00
- InstalledTime: (?)
---> NEED UPDATE!
' to the Discord Webhook URL 'http://test'
it’s just for testing that the time stamp parsing is working
Implement the delayed restart (was a request from @MidnightFC) option
Change the “Don’t auto-update Server and Mods” checkbox to a combo with three choices: “Don’t auto-update on restart / Auto-update on restart / Check for updates while running and then restart”
Add the check (guess I can do a check every 5 minutes)
First time a new mod is detected as “not up to date”, post a message in Discord and RCon saying that a mod need to be updated and that the server will restart for updates in “n” minutes (with “n” being the actual delay selected for the first warning message) - Except if we were already in the restart phase, in which case the message is not really necessary.
Instead of the immediate restart button, could we get another one that starts the same countdown that regular restarts do (eg. 10, 5 and 2 minute warnings). (MidnightFC)
Second pass implementation of the mod update check
I have to admit that the code is becoming really messy… with timers and states and asynchronous checks all over the place.
Anyway, here is what it looks like:
At the top, the check box to disable SteamCMD has been replaced by a combo selector with three options:
Don’t run SteamCMD when starting the server
Run SteamCMD when starting the server
Run SteamCMD when starting the server and also check now and then if there are mods to updates in which case just restart
when this third option is selected, the small time selector on the right is activated, and you can put a delay in minutes.
The default value is 5 minutes, and you can’t go less than that because “bad things would happen” ™
At the bottom right, there is small new icon/button where “Restart” is located.
When you press this button, it turns “red” and if you look at the bottom, the “Restart in …” message is modified to indicated that the restart will happen very soon.
The actual delay is based on what you entered as values for the Warning Messages, picking up the longest delay as the restart delay.
If for some reason you decided that after all you don’t want to restart, just click the button again.
I implemented the mod restart by simulating a click on this button, so basically you can manually bypass a mod check by clicking on the hourglass icon.
Hopefully that works fine, but as usual I need your feedback: There are so many things that can go wrong, between the tool, windows updates, steam’s website, some random error in the ACF parser, etc…
I’ve been working on the Server update detection today, I tried first to use steamcmd’s “+app_info_update 1 +app_info_print 443030” parameters, but I got some very unreliable results…
There is a Steam Web API that can do that, but it is limited to 200 queries per period of 5 minutes max (associated to an API key), so there’s a definite risk of going over the limit, which means that we would somewhat need to get our own server caching the information. (Obviously we (Funcom) know when we push a new version to Steam, but we have zero control on WHEN the version is actually available on Steam, so we can’t really use this information.)
If some of you have any experience in getting SteamCMD to reliably report the last change information for an application, please tell!
Currently having a bit of an issue regarding VAC parameters. The game client does in fact claim that VAC protection is disabled, but when looking at the server stats through Steam itself it shows as the server has been loaded Secure.
I’ve been trying my best with my friend who runs the server on his own PC to get this VAC situation settled so I can play with him again, as this has been the only server I played on.
I guess based on your report, the server does correctly report if it’s VAC enabled, but for some reason the client does not? Where do you see that? Could it just be some UI issue, with VAC being enabled but not actually shown?