Jump to content

Workshop Operation Change Required Please


Azzmunch

Recommended Posts

I have had a thought on the way the workshop works and think this may be a useful suggestion.

 

Whenever any mod releases an update, the client is forced to download the most recent version of the mod from the workshop but the server doesn't instruct the client which version it should have, so by default the most up to date version is forced upon the client.

 

This ultimately means that there are very regular intervals at which I and many others can't log into Zeeks, and while Zeek is awesome at keeping things up to date, he must be allowed to live and sleep, and as it currently operates, I feel it is unfair to everyone involved (players, server admins, devs, mod makers).

 

I propose a simple solution that can make it all work seamlessly. (forgive me for not understanding the level of work that'll probably be required to pull this off). Please give this some consideration.

 

Why not make it that the server tells the client which mod version to download rather than the workshop telling the client. Currently this is making it impossible to join due to mismatches in files after a new mod version release until the server restarts and updates. There are many benefits to not only the server and the servers players, but the game as a whole, because it's really annoying getting locked out every day or two because one of the mods gets an update (which happens all the time).

 

Please allow the server to dictate the mod version in play. I don't mean that the server's admin should be able to select the mod version it serves indefinitely, but only that the client not be forced to download the most recent mod update before the server has. i.e. the server should always be forced to apply the most recent mods upon restart and update, but this would allow for the server owner to schedule regular restarts at designated times that wouldn't interrupt server operation for more than a couple of minutes. Working like this the community could also know when the server is to restart. 

This change to the way workshop operates would ensure smooth reliable operation of the whole system and would allow everyone to enjoy all the great things the developers and modders have worked so hard on for us to enjoy.

 

BTW massive thanks to modders and games devs, too much guys, so awesome.  (clyde) 

 
Sincerely,

Azzmunch/Grumpy  :mad: 

Link to comment
Share on other sites

I'm honestly not sure if the steam workshop actually supports multiple versions per mod. I really don't think so, too.

One thing some server ops do in this case is merge the mods they want on their server into a collective new mod that is then deployed onto the workshop (with due respect to the mods licenses) and activated on the server.

Link to comment
Share on other sites

Blindcoder is smart :geek:  i like what you've suggested, perhaps you could connect us with someone who could help the server admins pull of such a spectacular feat? Or suggest a place to begin research? (asking on behalf of someone without their knowledge here  :???: ).

 

Thanks guys,  (clyde)

Link to comment
Share on other sites

Fair warning, Hydrocraft has already given a solid no on allowing multiple versions of his mod in the wild. Other mod makers may be the same way, thus your problem may not be solvable by making a mod pack. It'll depend on how the author of each mod feels about that.

And it should be noted that if people do just take someone's work without permission (note, any mod that does not have a permission listed is considered "credit where it's due" on the forums), we'll probably have to pull the offending server from the list, out of respect for the content creators.

http://theindiestone.com/forums/index.php/topic/2530-mod-permissions/?hl=%2Blockdown#entry36479

Link to comment
Share on other sites

There is another plausible solution I've been considering for a while, but I haven't had the time get real serious about it, yet. I believe it's entirely manageable, though.

I  understand that the PZ Steam server updates workshop mods while starting up, so a solution could be to check a server's workshop items for updates periodically and restart the server on changes.

This could be implemented using shell scripts (or a small application) that parses the server's configuration file and creates a list of Workshop IDs. Then at intervals, either by sleeping or a scheduled task/cron-job, it can test those IDs against the ISteamRemoteStorage/GetPublishedFileDetails method of the Steam Web API to retrieve the details for every relevant mod in a single request. For illustration, querying Hydrocraft's Workshop ID produces the following details:

"publishedfileid": "498441420","result": 1,"creator": "76561198030783658","creator_app_id": 108600,"consumer_app_id": 108600,"filename": "","file_size": 11927128,"file_url": "","hcontent_file": "8159595350093461476","preview_url": "http://images.akamai.steamusercontent.com/ugc/431570695393475814/131E2D763E58760CFCDF915DD2CD5FEA2C40AE24/","hcontent_preview": "431570695393475814","title": "Hydrocraft","description": "Hydrocraft is a mod based around crafting and filling in the empty world of zomboid with more stuff. It is inspired by survival crafting games like Haven and Hearth. It is very much a WIP and will be tweaked and added onto. Please try it out and let me know if you find any bugs or have any suggestions/ideas.\n\nFor more details go here ...\n\nhttp://theindiestone.com/forums/index.php/topic/11557-hydrocraft-mod/","time_created": 1439367179,"time_updated": 1443769385,"visibility": 0,"banned": 0,"ban_reason": "","subscriptions": 8690,"favorited": 233,"lifetime_subscriptions": 9039,"lifetime_favorited": 237,"views": 17349,"tags": [	{		"tag": "Mod"	}]

The shell scripts/application would record the "time_updated" field, and when it differs from the previous record, send commands to the server console or RCON to warn users that the server's about to go down for an update, then shut it down safely and reboot it.

 

This method does require an API key, though - so as per the API ToS each server would either have to acquire it's own API key, or a Steam API proxy server could be created to host a map of Workshop IDs/update timestamps for everyone.

I'm hoping to start playing with the idea this coming week, if time allows.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...