U3DS suggestions

(Linux if it’s important)
These are a few, not super important changes, but still something:

By the looks of it, the server process just need to open these files with ‘R’, not ‘RW’:

steam_appid.txt
Maps/*/Environment/Bounds.dat
Maps/*/Environment/Flags_Data.dat
Maps/*/Environment/Roads.dat
Maps/*/Environment/Paths.dat
Maps/*/Environment/Nodes.dat
Maps/*/Environment/Navigation_*.dat
Maps/*/Level/Objects.dat
Maps/*/Level/Buildables.dat
Maps/*/Terrain/Resources.dat
Maps/*/Terrain/Trees.dat
Maps/*/Spawns/Jars.dat
Maps/*/Spawns/Players.dat
Maps/*/Spawns/Animals.dat
Maps/*/Spawns/Vehicles.dat
Maps/*/Spawns/Fauna.dat

ServerHelper.sh:

# instead of copying, which cause other servers running in same installation to crash;
# move instead? In some way

 if [[ -f $steamcmd_steamclient ]]
 then
  mv $steamcmd_steamclient $unturned_steamclient
 else
  mv $redist_steamclient $unturned_steamclient
 fi

# and also perhaps use exec?
exec ./Unturned_Headless.x86_64 -batchmode -nographics "$@"

What changes do you guys think is most worth doing? Any changes?
I personally think the top is most worth doing since that’s the part you “can’t do yourself”

steam_appid.txt is super useful. It contains the app ID that Steamworks API should initialize the app as. Steamworks API will not initialize if it does not know the app ID. This is fine if you exclusively launch the app from your Steam library, but this file is necessary when launching a relevant app from anywhere else.

U3DS cannot be launched from your Steam Library – it just won’t function as intended. Additionally, it’s important that the Steamworks API is initializing the Unturned app ID, rather than the U3DS app ID, which it tries to do by default.

1 Like

yes when will we get unturned on Nintendo ds

Do you have an older .sh? Current one is: cp -f $redist_steamclient $unturned_steamclient

What does exec do differently?

Do you mean that the game should open them in read mode, or should only need read permission? For the benefit of zero trust system setup?

1 Like
  1. mv was an example of moving steamclient only when new update available, so that it only does it once or twice per steamclient update. It could obviously be changed to something better.
    Because when
    you write to $unturned_steamclient
    all servers using that $unturned_steamclient
    will crash.

  2. exec don’t change much but it basically runs the created process (Unturned_Headless) in the parent process (shell) ish, those were just examples of changes though. And I don’t know if this could break on some systems.

  3. Well yes, because the server saves map stuff to “u3ds/Servers/<server>/Level/” anyway, right?
    I don’t know what actually happens to those global map files though, but does not feel like servers need to write to them :thinking:

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.