Don't Starve Together

Don't Starve Together

Shard Configuration Mod
myxal 5 Nov, 2017 @ 1:15am
Adding another world to existing cluster with this mod?
Hi all.
I'm thinking of using this mod to add an extra world to my existing cluster with forest+caves.
My intention is to remove 5 sinkholes from the forest, and use their matching stairs in caves as portals to the new world.
How should I do this so that the 5 remaining sinkholes + stairs remain paired the same way they are now?
< >
Showing 1-5 of 5 comments
Nuke  [developer] 6 Nov, 2017 @ 7:42am 
Connections made without my mod are random (at least i think). So I don't know if your remaining connections between your cave and forrest will stay the same. you can always backup your server and try it. Setup my mod so that your first caves have 5 connection to forrest and 5 to other caves.

Something like:
"cave 1 shard id" = { "forrest shard id", "forrest shard id", "forrest shard id", "forrest shard id", "forrest shard id", "cave 2 shard id", "cave 2 shard id", "cave 2 shard id", "cave 2 shard id", "cave 2 shard id" }
myxal 6 Nov, 2017 @ 10:09am 
Hi Nuke, thanks for replying.

As for configuration, I figured out as much from the sample cluster posted on klei forums, but it just doesn't work, even on an empty cluster, with worlds generated from scratch. Maybe the modoverrides example is not valid? I set up the modoverrides for a 3-world cluster in the "triangle" configuration - 6 portals in each world, each of the other worlds getting half of them, with deleting extra portals enabled. The mod didn't do anything - each world still has 10 portals, and whichever shard connected last, gets to connect all of them.
[00:00:00]: PersistRootStorage is now /home/dontstarve//clusters/Cluster_test/Shard 1/ [00:00:00]: Starting Up [00:00:00]: Version: 239925 [00:00:00]: Current time: Mon Nov 6 18:49:31 2017 [00:00:00]: System Name: Linux [00:00:00]: Host Name: esprimo [00:00:00]: Release(Kernel) Version: 4.8.0-59-generic [00:00:00]: Kernel Build Timestamp: #64-Ubuntu SMP Thu Jun 29 19:38:34 UTC 2017 [00:00:00]: Machine Arch: x86_64 [00:00:00]: Don't Starve Together: 239925 LINUX [00:00:00]: Build Date: 2937 [00:00:00]: Parsing command line [00:00:00]: Command Line Arguments: -persistent_storage_root /home/dontstarve -conf_dir clusters -cluster Cluster_test -shard Shard 1 [00:00:00]: Initializing distribution platform [00:00:00]: ....Done [00:00:00]: THREAD - started 'GAClient' (4132899648) [00:00:00]: CurlRequestManager::ClientThread::Main() [00:00:00]: ProfileIndex:4.86 [00:00:00]: [Connect] PendingConnection::Reset(true) [00:00:00]: Network tick rate: U=15(2), D=0 [00:00:00]: Network tick rate: U=15(2), D=0 [00:00:00]: OnLoadPermissionList: /home/dontstarve//clusters/Cluster_test/blocklist.txt (Failure) [00:00:00]: OnLoadPermissionList: /home/dontstarve//clusters/Cluster_test/adminlist.txt (Failure) [00:00:00]: OnLoadUserIdList: /home/dontstarve//clusters/Cluster_test/whitelist.txt (Failure) [00:00:00]: Token retrieved from: /home/dontstarve//clusters/Cluster_test/cluster_token.txt [00:00:00]: Token retrieved from: /home/dontstarve//clusters/Cluster_test/cluster_token.txt [00:00:00]: cGame::InitializeOnMainThread [00:00:00]: THREAD - started 'StreamInput' (4126145344) [00:00:00]: Renderer initialize: Okay [00:00:00]: AnimManager initialize: Okay [00:00:00]: Buffers initialize: Okay [00:00:00]: cDontStarveGame::DoGameSpecificInitialize() [00:00:00]: GameSpecific initialize: Okay [00:00:00]: cGame::StartPlaying [00:00:00]: LOADING LUA [00:00:00]: DoLuaFile scripts/main.lua [00:00:00]: DoLuaFile loading buffer scripts/main.lua [00:00:00]: running main.lua [00:00:00]: loaded modindex [00:00:00]: WARNING: icon paths for mod workshop-726432903 (Multi-World DST) are not valid. Got icon_atlas="modicon.xml" and icon="modicon.tex". Please ensure that these point to valid files in your mod folder, or else comment out those lines from your modinfo.lua. [00:00:00]: ModIndex: Beginning normal load sequence for dedicated server. [00:00:01]: DownloadMods(72) ... (snip) [00:00:30]: modoverrides.lua enabling workshop-595764362 [00:00:30]: ModIndex:GetModsToLoad inserting moddir, workshop-595764362 [00:00:30]: Could not load mod_config_data/modconfiguration_workshop-595764362_CLIENT [00:00:30]: applying configuration_options from modoverrides.lua to mod workshop-595764362 [00:00:30]: Overriding mod workshop-595764362's option DeleteUnused with value true [00:00:30]: Overriding mod workshop-595764362's option Connections with value table: 0xb101ff8 [00:00:30]: Overriding mod workshop-595764362's option SyncFromMaster with value true [00:00:30]: Loading mod: workshop-595764362 (Shard Configuration Mod) Version:2.0.3 [00:00:30]: Mod: workshop-595764362 (Shard Configuration Mod) Loading modworldgenmain.lua [00:00:30]: Mod: workshop-595764362 (Shard Configuration Mod) Mod had no modworldgenmain.lua. Skipping. [00:00:30]: Mod: workshop-595764362 (Shard Configuration Mod) Loading modmain.lua [00:00:31]: LOADING LUA SUCCESS [00:00:31]: PlayerDeaths could not load morgue [00:00:31]: PlayerHistory could not load player_history [00:00:31]: bloom_enabled false [00:00:31]: loaded saveindex [00:00:31]: OnFilesLoaded() [00:00:31]: OnUpdatePurchaseStateComplete [00:00:32]: Mod: workshop-595764362 (Shard Configuration Mod) Registering prefabs [00:00:32]: Mod: workshop-595764362 (Shard Configuration Mod) Registering default mod prefab [00:00:32]: Load FE [00:00:33]: Load FE: done [00:00:33]: ModIndex: Load sequence finished successfully. [00:00:33]: Reset() returning [00:00:34]: [200] Account Communication Success (6) [00:00:34]: Received (KU_xTGphA5C) from TokenPurpose [00:00:34]: Starting Dedicated Server Game [00:00:34]: Network tick rate: U=15(2), D=0 [00:00:34]: About to start a server with the following settings: [00:00:34]: Dedicated: true [00:00:34]: Online: true [00:00:34]: Passworded: true [00:00:34]: ServerPort: 11002 [00:00:34]: SteamAuthPort: 8768 [00:00:34]: SteamMasterServerPort: 27018 [00:00:34]: ClanID: false [00:00:34]: ClanOnly: false [00:00:34]: ClanAdmin: false [00:00:34]: LanOnly: false [00:00:34]: FriendsOnly: false [00:00:34]: EnableAutosaver: true [00:00:34]: EncodeUserPath: true [00:00:34]: PVP: false [00:00:34]: Event: false [00:00:34]: MaxPlayers: 4 [00:00:34]: GameMode: endless [00:00:34]: OverridenDNS: [00:00:34]: PauseWhenEmpty: true [00:00:34]: VoteEnabled: true [00:00:34]: InternetBroadcasting: true [00:00:34]: Intent: cooperative [00:00:34]: Online Server Started on port: 11002 [00:00:34]: unloading prefabs for mod MOD_workshop-595764362 [00:00:34]: Collecting garbage... [00:00:34]: lua_gc took 0.05 seconds [00:00:34]: ~ShardLuaProxy() [00:00:34]: ~ItemServerLuaProxy() [00:00:34]: ~InventoryLuaProxy() [00:00:34]: ~NetworkLuaProxy() [00:00:34]: ~SimLuaProxy() [00:00:34]: lua_close took 0.04 seconds [00:00:34]: ReleaseAll [00:00:34]: ReleaseAll Finished [00:00:34]: cGame::StartPlaying [00:00:34]: LOADING LUA [00:00:34]: DoLuaFile scripts/main.lua [00:00:34]: DoLuaFile loading buffer scripts/main.lua [00:00:34]: running main.lua [00:00:34]: loaded modindex [00:00:34]: WARNING: icon paths for mod workshop-726432903 (Multi-World DST) are not valid. Got icon_atlas="modicon.xml" and icon="modicon.tex". Please ensure that these point to valid files in your mod folder, or else comment out those lines from your modinfo.lua. [00:00:34]: ModIndex: Beginning normal load sequence for dedicated server. [00:00:34]: modoverrides.lua enabling workshop-595764362 [00:00:34]: ModIndex:GetModsToLoad inserting moddir, workshop-595764362 [00:00:34]: Could not load mod_config_data/modconfiguration_workshop-595764362 [00:00:34]: applying configuration_options from modoverrides.lua to mod workshop-595764362 [00:00:34]: Overriding mod workshop-595764362's option DeleteUnused with value true [00:00:34]: Overriding mod workshop-595764362's option Connections with value table: 0xb81b298 [00:00:34]: Overriding mod workshop-595764362's option SyncFromMaster with value true [00:00:34]: Loading mod: workshop-595764362 (Shard Configuration Mod) Version:2.0.3 [00:00:34]: Mod: workshop-595764362 (Shard Configuration Mod) Loading modworldgenmain.lua [00:00:34]: Mod: workshop-595764362 (Shard Configuration Mod) Mod had no modworldgenmain.lua. Skipping. [00:00:34]: Mod: workshop-595764362 (Shard Configuration Mod) Loading modmain.lua [00:00:34]: LOADING LUA SUCCESS [00:00:34]: PlayerDeaths could not load morgue [00:00:34]: PlayerHistory could not load player_history [00:00:34]: bloom_enabled false [00:00:34]: loaded saveindex [00:00:34]: OnFilesLoaded() [00:00:34]: OnUpdatePurchaseStateComplete [00:00:34]: Unload FE [00:00:34]: Unload FE done [00:00:35]: Mod: workshop-595764362 (Shard Configuration Mod) Registering prefabs [00:00:35]: Mod: workshop-595764362 (Shard Configuration Mod) Registering default mod prefab [00:00:35]: LOAD BE [00:00:38]: LOAD BE: done [00:00:38]: Loading world: session/41883C2908E98246/0000000003 [00:00:38]: Save file is at version 4.77 [00:00:38]: Begin Session: 41883C2908E98246 [00:00:38]: saving to server_temp/server_save [00:00:38]: MiniMapComponent::AddAtlas( minimap/minimap_data.xml ) [00:00:40]: Loading Nav Grid [00:00:40]: setting summerlength 15 [00:00:40]: setting isnightmaredawn false [00:00:40]: setting elapseddaysinseason 0 [00:00:40]: setting isfullmoon false [00:00:40]: setting moisture 0.033333335071802 [00:00:40]: setting springlength 20 [00:00:40]: setting isnightmarewild false [00:00:40]: setting moonphase new [00:00:40]: setting precipitationrate 0 [00:00:40]: setting iswet false [00:00:40]: setting isnewmoon false [00:00:40]: setting iswinter false [00:00:40]: setting israining false [00:00:40]: setting isnightmarewarn false [00:00:40]: setting precipitation none [00:00:40]: setting cavephase day [00:00:40]: setting moistureceil 721.39080810547 [00:00:40]: setting isday true [00:00:40]: setting iscaveday true [00:00:40]: setting season autumn [00:00:40]: setting timeinphase 0.000555674235026 [00:00:40]: setting temperature 30.035398095238 [00:00:40]: setting isnightmarecalm false [00:00:40]: setting isnight false [00:00:40]: setting isdusk false [00:00:40]: setting iscavedusk false [00:00:40]: setting isautumn true [00:00:40]: setting issnowing false [00:00:40]: setting iswaxingmoon true [00:00:40]: setting pop 4.6207041588654e-05 [00:00:40]: setting snowlevel 0 [00:00:40]: setting issnowcovered false [00:00:40]: setting autumnlength 20 [00:00:40]: setting phase day [00:00:40]: setting nightmaretime 0 [00:00:40]: setting winterlength 15 [00:00:40]: setting isspring false [00:00:40]: setting nightmarephase none [00:00:40]: setting remainingdaysinseason 20 [00:00:40]: setting cycles 0 [00:00:40]: setting iscavenight false [00:00:40]: setting nightmaretimeinphase 0 [00:00:40]: setting wetness 0 [00:00:40]: setting time 0.000277837117513 [00:00:40]: setting issummer false [00:00:49]: Reconstructing topology [00:00:49]: ...Sorting points [00:00:49]: ...Sorting edges [00:00:49]: ...Connecting nodes [00:00:49]: ...Validating connections [00:00:49]: ...Housekeeping [00:00:49]: ...Done! [00:00:49]: 1 uploads added to server. From server_temp [00:00:49]: About to start a shard with these settings: [00:00:49]: ShardName: [SHDMASTER] [00:00:49]: ShardID: 1 [00:00:49]: ShardRole: MASTER [00:00:49]: MasterHost: (null) [00:00:49]: MasterBind: 127.0.0.1 [00:00:49]: MasterPort: 10890 [00:00:49]: [Shard] Starting master server [00:00:49]: [Shard] Shard server started on port: 10890 [00:00:49]: Telling Client our new session identifier: 41883C2908E98246 [00:00:49]: ModIndex: Load sequence finished successfully. [00:00:49]: Reset() returning [00:00:49]: [Steam] SteamGameServer_Init(8768, 11002, 27018) [00:00:49]: [Steam] SteamGameServer_Init success [00:00:50]: Validating portal[10] <-> 2[10] (inactive) [00:00:50]: Validating portal[4] <-> 2[4] (inactive) [00:00:50]: Validating portal[2] <-> 2[2] (inactive) [00:00:50]: Validating portal[7] <-> 2[7] (inactive) [00:00:50]: Validating portal[9] <-> 2[9] (inactive) [00:00:50]: Validating portal[3] <-> 2[3] (inactive) [00:00:50]: Validating portal[5] <-> 2[5] (inactive) [00:00:50]: Validating portal[6] <-> 2[6] (inactive) [00:00:50]: Validating portal[1] <-> 2[1] (inactive) [00:00:50]: Validating portal[8] <-> 2[8] (inactive) [00:00:50]: Sim paused [00:00:52]: [Shard] Slave (2) connected: [LAN] 127.0.0.1 [00:00:54]: [Shard] Slave (2) ready! [00:00:54]: World 2 is now connected [00:00:54]: Validating portal[10] <-> 2[10] (disabled) [00:00:54]: Validating portal[4] <-> 2[4] (disabled) [00:00:54]: Validating portal[2] <-> 2[2] (disabled) [00:00:54]: Validating portal[7] <-> 2[7] (disabled) [00:00:54]: Validating portal[9] <-> 2[9] (disabled) [00:00:54]: Validating portal[3] <-> 2[3] (disabled) [00:00:54]: Validating portal[5] <-> 2[5] (disabled) [00:00:54]: Validating portal[6] <-> 2[6] (disabled) [00:00:54]: Validating portal[1] <-> 2[1] (disabled) [00:00:54]: Validating portal[8] <-> 2[8] (disabled) [00:00:55]: [Shard] Slave (3) connected: [LAN] 127.0.0.1 [00:00:57]: [Shard] Slave (3) ready! [00:00:57]: World 3 is now connected [00:00:57]: Validating portal[10] <-> 3[10] (disabled) [00:00:57]: Validating portal[4] <-> 3[4] (disabled) [00:00:57]: Validating portal[2] <-> 3[2] (disabled) [00:00:57]: Validating portal[7] <-> 3[7] (disabled) [00:00:57]: Validating portal[9] <-> 3[9] (disabled) [00:00:57]: Validating portal[3] <-> 3[3] (disabled) [00:00:57]: Validating portal[5] <-> 3[5] (disabled) [00:00:57]: Validating portal[6] <-> 3[6] (disabled) [00:00:57]: Validating portal[1] <-> 3[1] (disabled) [00:00:57]: Validating portal[8] <-> 3[8] (disabled) [00:10:25]: Serializing world: session/41883C2908E98246/0000000004 [00:10:25]: unloading prefabs for mod MOD_workshop-595764362 [00:10:26]: [Shard] Stopping shard mode [00:10:26]: Collecting garbage... [00:10:27]: lua_gc took 0.27 seconds [00:10:27]: ~ShardLuaProxy() [00:10:27]: ~ItemServerLuaProxy() [00:10:27]: ~InventoryLuaProxy() [00:10:27]: ~NetworkLuaProxy() [00:10:27]: ~SimLuaProxy() [00:10:27]: lua_close took 0.37 seconds [00:10:27]: Manager - ORPHANED UNKNOWN RESOURCES: [00:10:27]: shaders/ui_yuv.ksh - 1 [00:10:27]: CurlRequestManager::ClientThread::Main() complete [00:10:27]: HttpClient2 discarded 1 callbacks. [00:10:27]: Shutting down


Either way, I've also since found the Klei topic where devs provided a howto for manual configuration, which it seems I'll have to use anyway if I want to pick and choose which portals stay connected as they are, and which go to the new world. Hopefully, the info there still applies to current version of DST.

https://forums.kleientertainment.com/topic/59174-understanding-shards-and-migration-portals/
Nuke  [developer] 6 Nov, 2017 @ 10:14am 
My mod makes the connections right after first player connects. That is probably why it did nothing. But yeah, probably manual setting will be best for your example.
myxal 6 Nov, 2017 @ 11:08am 
Ahhh, so that's it. :) Yeah, after connecting, the links were reconfigured. The deleting of unused portals doesn't seem to work, though - even after restarting the server, there were still 10 (in fact, before connecting the 2nd time, I saw portal IDs go up to 12, before going down to 10), and going through some of them, I see some of them are cross-linked (2 different portals in one world both lead to the same portal in another world).

I'll remove the redundant connections from mod configuration and see if that fixes it...
myxal 6 Nov, 2017 @ 11:23am 
OK, yes and no... Removing redundant link specification from configuration does make the mod set the right number of portals (at least from casually looking at the server console). There is something weird though, as I went through one portal from one slave shard to the other, and the mod removed the cave entrance I just came out of! :steamfacepalm:

Oh well, since I'll be doing manual config anyway, I better start writing down what goes where. :D
Last edited by myxal; 6 Nov, 2017 @ 11:27am
< >
Showing 1-5 of 5 comments
Per page: 1530 50