Tyrsis / SE-Community-Mod-API

Space Engineers Community Modding API
GNU Lesser General Public License v3.0
23 stars 11 forks source link

Workshop mods fail to load #29

Open Ragonz2 opened 9 years ago

Ragonz2 commented 9 years ago

Apparently Github does not like long messages so had to post this on our forums to properly explain. Please see issue here http://pingperfect.com/phpbb/viewtopic.php?f=64&t=646

Tyrsis commented 9 years ago

Extender has 0 control over mod download. It's all done through steam. I've seen this issue before and it's steam related (steam was down, or intermittent availability). Ask them to try again later and if it still happens, then I'm nto entirely sure what to tell you, as there is 0 reference for me to try to fix this as at that point in loading extender has done nothing except launch the game.

Ragonz2 commented 9 years ago

Wow fast reply :)

Those logs are minutes apart, no issues with steam and this is a consistent issue across all our boxes in several different countries. It's defiantly somthing that sese is doing/changing but as to what, I'm not sure

Tyrsis commented 9 years ago

I see the logs, the issue is I've had it where it wouldn't work 4 times out of 5, but then the 5th time it worked. Like I said, there is literally nothing I can do about this problem as at this point in extender, all it's done is run the dedicated server itself.

Tyrsis commented 9 years ago

The only thing I can think of is for some reason these are loading two different .cfg files. The .cfg is where the mods are. (well both the sandbox and the .cfg)

McyD commented 9 years ago

I have been having issues with this for the last 2-3 weeks. Server shows connection to steam fine, but mods fail to download. If nothing can be done, can a check be added that if mods exist they do not fail, if so force another restart.

Loading a server where the mods fail, mean that the server is unreachable and no one can join, even if it is running. This currently results in an automated restart causing a server to load to which no one can access.

dodexahedron commented 9 years ago

Can you provide an example Sandbox.sbc and SpaceEngineers-Dedicated.cfg for a world that has this problem? I've never been able to reproduce this behavior, and we've got ~40 steam workshop mods on our server.

McyD commented 9 years ago

https://www.dropbox.com/sh/nmc9a92p52x9or2/AADV9pEIQlKmm4juffZAmsava?dl=0

I agree with Tyrsis, it is more of a steam issue, of which the workshop servers have been having issues lately. This an be seen in the workshop return no search results, yet hitting reload brings up the results, and in players getting the failed to download mods randomly in their clients on map load.

However, some sort of check/force restart on mod failed to download needs to be added to SE to provide a workaround solution.

Tyrsis commented 9 years ago

I would agree McyD, the problem is, it's the dedicated server itself who decides to just give up, not extender. I'm not sure I can work around that limitation. But I can certainly take a look.

McyD commented 9 years ago

I don't know if you can capture it or not, but the log does show "Mods failed to download". Thought it might be possible to detect that and force a restart if it is found during the last start-up.

dodexahedron commented 9 years ago

Here's an idea that would help this: Automatic workshop content updating.

It would work like this: On a scheduled interval, SESE checks for updated workshop mods from the list of mods it is already aware of. If any are in need of updating, the server could do a graceful save and restart. This could be customized by allowing the admin to specify which mods the updating behavior is allowed for (maybe you don't care if the skybox is out of date, but you REALLY want that arc reactor pack to keep working or whatever). Allowing the admin to specify the update schedule would keep it from being (too much of) a nuisance to users, and would ensure that missed mod updates get pulled in on a schedule that admins consider to be acceptable.

Note that, if you already have scheduled restarts, this is somewhat redundant, but if you are more concerned with mods staying up to date, then this would be immensely useful.

That being said, a lot of the work to implement this is already done, since restarts are already something Essentials can do.

McyD commented 9 years ago

Hmm, doesn't the client always download the latest version of the mods from steam when connecting? Or does the client downgrade the mod version to match the servers version in-case of a newer version on steam? Guessing matches the server since I have never had an issue that a client can't connect due to an out of date mod.

I have a restart set for every 6 hours so this would not help me anyway, though I can see it being useful to others. Really, this should be a separate issue I think. Especially, since the mod failed to download issue with steam would still effect an auto-updating mod system.

Just to clarify the "mod failed to download" issue, is not an mod updating issue per say. It just means the connection to the steam workshop failed, even though the connection to steam was successful, and the server cannot even check if the mods are up to date or not. When this happens the mods on the server are not loaded, the server is not listed in the servers list, and no one can join; even though the map successfully loads and the server is up.

dodexahedron commented 9 years ago

Right. The point being that an "auto-updater" would not bother with needless restarts of the server until steam is working properly. But how is your server loading up without mods at all? Is this a widespread issue? I've not seen that behavior, and it doesn't make logical sense to me that it would behave that way without a positive response from the workshop. If it's doing that, it really should be taken up with Keen.

McyD commented 9 years ago

Granted, but it would not fix the issue of the workshop failing during normal restarts... which was the point on this issue.

If the server cannot check the workshop during startup, though it is connected to steam, then the server just posts "failed to download mods" and continues its normal startup... as I have stated before, thus the issue for a check to be implemented.