Jump to content

What is UGC?


Recommended Posts

I'm trying to debug a dedicated server issue.  It was working fine this morning. 

Several of the conversations seem to be around v1, v2 and something called UGC mods.  

 example.

Is UGC v1 mods?  What's the difference?  Is there a summary somewhere?

How can I determine which mods are v1, v2 or UGC?

 

Thanks!

Edited by CornCheeseDog
more detail
Link to comment
Share on other sites

I'm not sure what a UGC mod is (I assume UGC is User Generated Content), but as for telling whether a mod is v1 or v2:

If a mod was last updated before March 11th, it's v1. If it was updated after/on March 11th, it's v2.

March 11th is when the QoL update came out, and also when mods could start using the new v2 system. To get onto the new v2 system, a mod just has to release an update.

 

Edited by penguin0616
  • Like 1
Link to comment
Share on other sites

I myself am not very familiar with the terminology, but here's what I gathered from various posts:

  • UGC == v2 mods
  • When QoL update was released, it was accompanied by an updated version of DS/DST mod Uploader.
  • Any (DST) mods uploaded (or updated) with this new mod uploader become "UGC" or "v2", everything else on the workshop remains "v1"
  • As far as mod development is concerned, v1 vs v2 changes nothing - that depends solely on the uploader tool. (Some things were changed with the QoL update - check the release notes - but this is separate from the v1/v2 change.)
  • v2 mods reside in their own directory (this is what is entered as the -ugc_directory parameter) which has a slightly more complicated structure. The GUI version of the game keeps the UGC directory completely outside of the game's directory - for me it's <steam library folder>/SteamApps/workshop/content/322330. I'm not actually sure if there's a default for dedicated server - the scripts within the dedicated server package - launch_server_easy_config_{caves,forest}.sh were not updated. I haven't checked the MyDedi...zip package provided by the Klei portal (it seems down/broken for me).
6 hours ago, CornCheeseDog said:

I'm trying to debug a dedicated server issue.

I'd say it's easier when starting with a clean slate - at the very least, delete/move all downloaded mods (both the old mods folder and the new UGC directory), run app_update with validation (this resets dedicated_server_mod_setup.lua)  and check every step of bootstrapping the server:

  1. Check/populate the dedicated_server_mod_setup.lua file appropriately. Here, nothing has changed regarding the v1/v2 split.
  2. Start only the master shard to download mods. (AFAICT, the information on Cluster/Shard should not even be needed in this step, but cluster-agnostic downloading is currently broken, so this is a workaround)
    ./dontstarve_dedicated_server_nullrenderer -only_update_server_mods -ugc_directory ../ugc_mods -cluster Cluster_DSTU_1 -shard Master

    This is executed from the directory with the binary, and puts the new UGC directory adjacent to the old mods directory
    Pain points I've encountered here:

    1. Downloading v2 mods requires Steam API being initialised correctly. You should see SteamGameServer_Init success in the server log/console. Earlier QoL builds had the problem that if none of the attempted game ports (270xx, check your logs) were open, the server would crash. I think this is fixed now - if not, you need to open the ports on the router.

    2. At least on the Mac, dedicated server installed via steamcmd is unable to locate steamcmd's steamclient.dylib. No idea how this is supposed to work. My workaround - use a full steam client. I had it logged in under another account, not sure if that's strictly necessary. Always watch the console, don't rely on server log - the error output is not merged into the file.

    3. I keep my server mods in a collection - I have an old one that has collected a lot of mods. The dedicated server would just skip over some of the mods during this phase. No idea why/can't see a pattern. Check the UGC directory - it should also contain folders for v1 mods, which will contain a zip file (renamed to .bin) for the mod's files. If you see mods missing, add them individually to modsetup, maybe even disable the collection reference.

  3. AFAICT, nothing changes in modoverrides.lua - even v2 mods, which now reside in directories simply named by the id, and not workshop-<id>, should work when referred to as workshop-<id> in modoverrides. At least that's how the main game works.
  4. Now run the cluster without checking for mod updates:
    ./dontstarve_dedicated_server_nullrenderer -skip_update_server_mods -cluster Cluster_DSTU_1 -shard Master
    ./dontstarve_dedicated_server_nullrenderer -skip_update_server_mods -cluster Cluster_DSTU_1 -shard Caves

    Pain points:

    1. The mac dedicated server is not loading v2 mods from the UGC directory. If you're not starting with a clean slate, this will manifest itself as the cluster possibly starting up fine, but using old versions of the mods, which were still v1 and aren't deleted from the v1 mods directory. Check the server log for modoverrides.lua enabling workshop-<...> and compare it with the list of mods you expect.

Edited by myxal
Link to comment
Share on other sites

Brilliant @myxal !  It's going to take me a little to get through all of this, but I see a lot in there that will help.  I now suspect that if v2/UGC mods are going to another location that may be a major culprit in what I'm seeing, and it'll get worse as more mods upload.  I'm running servers inside docker which means they have very limited disk space, except where I've mapped it to real storage.  My bet is that the v2s are ending up in the container and I need to map them some real storage. 

I've also been seeing

```

[----] Verifying installation...
[  0%] Downloading update...
[  0%] !!! Fatal Error: Steamcmd needs 250MB of free disk space to update.

```

which indicates space is being eaten up.

 

Will post back if I get stuck or get a solution!  Thanks a ton!

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
 Share

×
  • Create New...