Closed BoiseComputer closed 6 years ago
add this to your Instance config. serverMap="ScorchedEarth_P"
/usr/local/bin/arkmanager: line 802: 17760 Segmentation fault (core dumped) "$arkserverroot/$arkserverexec" "$arkserveropts" "${arkextraopts[@]}" 2016-09-01 22:27:52: Bad PID ''; expected '17760' 2016-09-01 22:27:52: exited with status 0 2016-09-01 22:27:52: restarting server 2016-09-01 22:27:52: Running /home/PVE/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland\?RCONEnabled=True\?RCONPort=27030\?SessionName=ARK-FRANCE.FR\ -\ PvE\ x5\ The\ Island\?Port=7776\?QueryPort=27015\?ServerPassword\?ServerAdminPassword=\?MaxPlayers=60\?GameModIds=684959100\,558079412\,534838287\,704420972\,572277026\,670764308\,564895376\,600015460\,680798000\,566887000\,543859212\,729352919\,566885854\?AllowRaidDinoFeeding=true\?PreventTribeAlliances=false\?ForceAllStructureLocking=true\?FastDecayUnsnappedCoreStructures=true\?OnlyAutoDestroyCoreStructures=true\?listen -log -newsaveformat -server -server -UseBattlEye 2016-09-01 22:27:52: Server PID: 19154 [S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed. Setting breakpad minidump AppID = 346110
crash for me on the island
@ryan1161 you have two configfile_TheCenter
lines in your arkmanager.cfg
, and so the instance TheCenter
would be using your last one (your ScorchedEarth
instance config file).
configfile_TheIsland="/etc/arkmanager/instances/TheIsland.cfg"
configfile_TheCenter="/etc/arkmanager/instances/TheCenter.cfg"
configfile_TheCenter="/etc/arkmanager/instances/ScorchedEarth.cfg"
You should not need those configfile
lines when your instance configs are in /etc/arkmanager/instances
or $HOME/.config/arkmanager/instances
.
@arkfrance it looks like you have two arkflag_server=something
lines in your instance config. Also check that it isn't a mod causing the crash.
i'm trying to check mod by mod ...
still crashing whithout any mods
@arkfrance Does it still crash if you remove everything from the Mods
directory? Some mods will crash the server if they're installed but not enabled.
Also, what is the full log from when the server starts to when the server crashes and is restarted?
I was wondering is there away to just have all 3 of my instance to have one folder for running the maps cause it would save me some disk space. Like right now I have all 3 being update by steam and it has to restart the download again per-instance on downloading the update. If so could you explain or point me in the right direction.
@ryan1161 Setting the same staging directory for all 3 instances and then performing an update should reduce the disk space taken up by the instances.
I am not aware of any option to the ARK server that would change the directory in which the configuration files (i.e. GameUserSettings.ini
, Game.ini
, etc) are stored. Without such an option, it isn't possible for multiple instances to run from the same directory, as they would each write their own settings to GameUserSettings.ini
Well I was thinking having one Ark folder and having that run all my maps instead of having 3 folder with ark installed in that. Like I was wanting to point the instances to the saved maps files and point it to the executable file for starting ark for that instance.
Example: First instance: arksavedgamedir="Ark/ShooterGame/Saved/TheCenter" then have instead of SavedArks folder have it point to the name of a custom folder like TheCenter. Then repeat for instance two and three.
Executable: arkexecutable="Ark/ShooterGame/Binaries/Linux/ShooterGameServer" Put that in all the instances to just point to one executable to run out of the one installed Ark directory.
There is an option to ShooterGameServer to configure the Saved Arks directory - AltSaveDirectoryName
(configured by the ark_AltSaveDirectoryName
option in your arkmanager instance config). In your example it would be set to TheCenter
I know of no option to configure Unreal Engine 4 (and by extension the game server) to change the saved config directory to something other than [ProjectDir]/Saved/Config/[Platform]
(where [ProjectDir]
is ShooterGame
and [Platform]
is Linux
In that case, with the example settings, one would have TheIsland containing:
serverMap=TheIsland
ark_AltSaveDirectoryName="Save2"
ark_SessionName="MySession2"
arkflag_NoTransferFromFiltering=true
arkopt_clusterid=mycluster123
ScorchedEarth containing:
serverMap=ScorchedEarth_P
ark_AltSaveDirectoryName="Save1"
ark_SessionName="MySession1"
arkflag_NoTransferFromFiltering=true
arkopt_clusterid=mycluster123
We will need to make arkmanager cluster aware in order for this to work, as it was assumed that bad things would happen if two servers ran from the same directory. It also means that we need some form of server identification other than its path.
So with the fact that the arkmanager is not aware of the cluster make this not work right now?
That is correct, arkmanager will not currently allow multiple servers to run from the same directory.
I have not got super deep into your code. Is this going to be a super big deal to change?
ok so server is working with mods folder changed to mods1, so it should be a mod but don't know which one
@caindrac Some things we would need to do are:
getSetverPid
function to use a per-instance PID filedoRun
function to write to per-instance PID filesdoRun
function to read config settings from both a cluster config file and an instance config file doUpdate
function to start and stop all instances within the cluster when updatingdoWarn
function to send the warning to a list of instances in order to support sending the warning to all instances in the cluster and to monitor all instances in the cluster for connected players.@arkfrance Please move your conversation to a new issue.
It would be awesome if someone could get this to work. Ill get a look at the code tomorrow
Hi all, I might have a work-around until clustering instances are supported by ark-server-tools. I've used symbolic links to allow arkmanager to continue to launch separate instances from separate directories, but effectively work from the same game files. As far as I can tell at the moment, it appears to work; I have two servers concurrently running launched via arkmanager with separate instance configs and with separate backup and save directories. I can transfer characters and tames between servers (albeit losing items, but that may be related to the current patch).
server1.cfg:
arkserverroot="<path to server1 game files>"
arkbackupdir="<path to server1 backup dir>"
ark_AltSaveDirectoryName="SavedArks1"
arkflag_NoTransferFromFiltering=true
arkopt_clusterid=Cluster1
server2.cfg:
arkserverroot="<path to server2 game files>"
arkbackupdir="<path to server2 backup dir>"
ark_AltSaveDirectoryName="SavedArks2"
arkflag_NoTransferFromFiltering=true
arkopt_clusterid=Cluster1
Server 1 game files are the original game directories and server 2 are the files symbollicaly linked to server 1. The only changes needed are separate SavedArk? directories for each of the servers (in my case parallel to the original SavedArks directory in ShooterGame/Saved). That way both instances use the same game files but separate save directories.
It might be worthwhile trying to get each server working independently first just to make sure each config is set up correctly (separate ports, etc.). I had this going before trying to shift the one server to the symbolic link.
Hope that helps.
I did implement the linked directory and it is working. Thanks for the suggestion.
Thanx for those meswrex ... saved me hours of headaches.
Hi there, Thats awesome that meswrex's method is working but I feel like a total noob! I can't seem to figure it out. I have two seperate servers working, the center and scorched earth, I tried to setup the arkopt_clusterid but when i go to the terminal on SE it doesn't give me the option to upload anything, I'm certain the problem lies between keyboard and chair but any help someone could provide on this would be greatly appreciated as I would LOVE to get this working for my players so they could experience SE content on the center/the island. Thanks in advance, Mithrim.
So another option I had to change on both configs they don't mention is:
ark_noTributeDownloads=false
to do the dynamic link you need to run a command like:
ln -s /var/ark1 /var/ark2
In the script have one path be ark1
Script # 1: arkserverroot="/var/ark1"
Script # 2: arkserverroot="/var/ark2"
This will make it so that the script sees it as two folders, but, it is really the same.
Here is the config inside of the script.
ark_PreventDownloadSurvivors=False
ark_PreventDownloadItems=False
ark_PreventDownloadDinos=False
ark_PreventUploadSurvivors=False
ark_PreventUploadItems=False
ark_PreventUploadDinos=False
arkflag_NoTransferFromFiltering=true
arkflag_clusterid=customclusteridhere
ark_AltSaveDirectoryName="customsavefolderpergame"
This should be the main changes. Let me know if it still doesn't work.
Note: You might have to change the folder owner and possibly permissions of any folder you create for the save game locations. Keep that in mind.
@MithrimTAoW That's odd; even on a sole-server map I have the option to upload my upload/download my character/tames, albeit to the same server (when I finally spot the 'transmit data' button - for some reason I find the menu layout for this a little obscured). Anyway, if anything, the problem I would expect to see is to be given the option to upload/download, but for the list to be empty on the second server after doing so on the first (i.e. the separate server save files are not linked). Probably not the fastest path, but I would try to revert back to separate servers to check the option is at least available in this state, just to be sure the problem is occurring when you try to cluster them. Hope you sort it out.
ark_PreventDownloadSurvivors=False
ark_PreventDownloadItems=False
ark_PreventDownloadDinos=False
ark_PreventUploadSurvivors=False
ark_PreventUploadItems=False
ark_PreventUploadDinos=False
ark_noTributeDownloads=false
put those in your gameusersettings.ini (minus the ark_)
http://steamcommunity.com/sharedfiles/filedetails/?id=758608778
very usefull !=
@meswrex and @BoiseComputer thanks but this was a little still to hard for me to figure especially the symbolic links were not working the way you said to do, so I created another way and it works great now. What I did steps:
TheIsland.cfg:
arkserverroot="/home/mc/ARK/TheIsland" arkbackupdir="/mnt/Backups/Ark/TheIsland" ark_AltSaveDirectoryName="Saved-TheIsland" arkflag_NoTransferFromFiltering=true arkopt_clusterid=Cluster1
TheCenter.cfg:
arkserverroot="/home/mc/ARK/TheCenter" arkbackupdir="/mnt/Backups/Ark/TheCenter" ark_AltSaveDirectoryName="Saved-TheCenter" arkflag_NoTransferFromFiltering=true arkopt_clusterid=Cluster1
ScorchedEarth.cfg:
arkserverroot="/home/mc/ARK/ScorchedEarth" arkbackupdir="/mnt/Backups/Ark/ScorchedEarth" ark_AltSaveDirectoryName="Saved-ScorchedEarth" arkflag_NoTransferFromFiltering=true arkopt_clusterid=Cluster1
Once you get all the configs done now it's time to start symbolic link the files/folders. TheIsland is our master folder with all the files we will point to for the other directory. Example:
ln -s /home/mc/ARK/TheIsland/ /home/mc/ARK/TheCenter/ ln -s /home/mc/ARK/TheIsland/ShooterGame/ /home/mc/ARK/TheCenter/ShooterGame/ ln -s /home/mc/ARK/TheIsland/ShooterGame/Saved/ /home/mc/ARK/TheCenter/ShooterGame/Saved/
ln -s /home/mc/ARK/TheIsland/ /home/mc/ARK/ScorchedEarth/ ln -s /home/mc/ARK/TheIsland/ShooterGame/ /home/mc/ARK/ScorchedEarth/ShooterGame/ ln -s /home/mc/ARK/TheIsland/ShooterGame/Saved/ /home/mc/ARK/ScorchedEarth/ShooterGame/Saved/
Saved Games Folder: If you leave these off it will build files under TheIsland or Master directory Saved folder.
ln -s /home/mc/ARK/TheCenter/ShooterGame/Saved/Saved-TheCenter/ /home/mc/ARK/TheIsland/ShooterGame/Saved/
ln -s /home/mc/ARK/ScorchedEarth/ShooterGame/Saved/Saved-ScorchedEarth/ /home/mc/ARK/TheIsland/ShooterGame/Saved/
Other Options: ark_PreventDownloadSurvivors=False ark_PreventDownloadItems=False ark_PreventDownloadDinos=False ark_PreventUploadSurvivors=False ark_PreventUploadItems=False ark_PreventUploadDinos=False ark_noTributeDownloads=False
Then in gameusersettings.ini under [ServerSettings]: PreventDownloadSurvivors=False PreventDownloadItems=False PreventDownloadDinos=False PreventUploadSurvivors=False PreventUploadItems=False PreventUploadDinos=False noTributeDownloads=False
Problems with auto updating....
Currently if I auto-update instance1, everything goes fine. But when I run the update against the second instance, it reports the server is up to date (as its just been installed) but the instance is a version behind.
Is it possible to force a restart on instance2 IF instance1 has shutdown due to the update ?
Or check if version running matches installed version and restart if a mismatch ?
Or listen in to instance1 for the broadcast, bring down instance2 and then restart it after instance1 is back up and running ?
I know you guys are probably hard thrashing out an update for this awesome tool... hoping for a work around until then.
Cheers
3dc8ef1 should restart the server if it was updated behind its back.
Thanx Klightspeed.
Does this check the mods too ? sorry for being a pita
One question is there away to only allow these settings to only apply to my server so other can't transfer from another server. I want player's to only be aloud to transfer around there stuff when they play on my server not bring it in from other unofficial servers. I'm trying to make it only my server as a hive not other servers out there.
PreventDownloadSurvivors=False PreventDownloadItems=False PreventDownloadDinos=False PreventUploadSurvivors=False PreventUploadItems=False PreventUploadDinos=False noTributeDownloads=False
I thing I found a error when I do arkmanger status command it showing players that where in there hours ago it never goes back to zero this started happening when I did my setup above this comment. Problem Images.zip
Once you get all the configs done now it's time to start symbolic link the files/folders. TheIsland is our master folder with all the files we will point to for the other directory. Example:
ln -s /home/mc/ARK/TheIsland/* /home/mc/ARK/TheCenter/ ln -s /home/mc/ARK/TheIsland/ShooterGame/* /home/mc/ARK/TheCenter/ShooterGame/ ln -s /home/mc/ARK/TheIsland/ShooterGame/Saved/* /home/mc/ARK/TheCenter/ShooterGame/Saved/
ln -s /home/mc/ARK/TheIsland/* /home/mc/ARK/ScorchedEarth/ ln -s /home/mc/ARK/TheIsland/ShooterGame/* /home/mc/ARK/ScorchedEarth/ShooterGame/ ln -s /home/mc/ARK/TheIsland/ShooterGame/Saved/* /home/mc/ARK/ScorchedEarth/ShooterGame/Saved/
Then I run the very first command - it links all the subfolders. Even when I try to create the saved folders the same way you have, says "File exists" and doesn't let me create it...
Why do you put a star '*' at the end of the first path of the symbolic link command. This is the issue as it match possibly several items Do you understand what is the goal of the "ln -s" command ? It like a shortcut. So it is an 1<->1 relation.
I figured as much - so should we not use the * option?
You should only need to:
ln -s /home/mc/ARK/TheIsland /home/mc/ARK/TheCenter
ln -s /home/mc/ARK/TheIsland /home/mc/ARK/ScorchedEarth
Also add arkautorestartfile=ShooterGame/Saved/.autostart-<name>
to your instance config where <name>
is your instance name.
well in my case I installed my ark to just /ARK/ not /ARK/TheIsland/ so I'm symlinking out of /home/arkuser/ARK/ShooterGame/ essentially.
@ryan1161 from what I read - if you have the -cluster specified, it locks transfers ONLY to the servers you have setup clustering for as it stores the arktribute data on the server itself.
Using symbolic links as seen above does not seem to be working for me.
I did the following:
ln -s center/* scorched/
which was successful.scorched.cfg
with it's own ark_AltSaveDirectoryName
, arkopt_clusterid
, ark_SessionName
, and arkautorestartfile
and set arkflag_NoTransferFromFiltering
to true
.arkmanager start @scorched
and I get the following error(s):
Running command 'start' for instance 'scorched'
[ WARN ] Your ARK server exec could not be found.
mkdir: cannot create directory ‘/home/steam/servers/arkonia_server/scorched/ShooterGame’: File exists
[ ERROR ] The ARK SavedArks directory is not writable, and saveworld will fail
The server is starting...
The server is now running, and should be up within 10 minutes
which in turn does not actually start the server.
My Center server still starts with no issues which is where my Scorched server is symlinked from.
Any suggestions? Afraid I'm going to have to start my servers without ark-server-tools for the time being as I'm currently doing a freshwipe to setup ARK travels. :cry:
Waiting eagerly for a fix or update to ark-server-tools to support ARK instances.
@Log1x you were using relative symlinks, so it was looking in scorched/center/ShooterGame instead of where you expected.
I would suggest:
rm -rf scorched # Remove the scorched directory
ln -s center scorched # Create a symbolic link pointing scorched at center
If you really want to symlink the contents of the directory instead:
cd scorched
rm * # remove the bad links
ln -s ../center/* .
Thank you @klightspeed. I thought I tried ln -s center scorched
but apparently I had a trailing slash when I attempted it.
Now I am running into the following issue:
steam@dev:~/servers/arkonia_server$ arkmanager start @scorched
Running command 'start' for instance 'scorched'
The server is starting...
The server is now running, and should be up within 10 minutes
steam@dev:~/servers/arkonia_server$ arkmanager start @center
Running command 'start' for instance 'center'
The server is already running
2016-09-17 17:31:07: Start aborted due to server already running
What is the output of ps -ef | grep 'ShooterGameServer'
What is arkserverroot
set to in your instance configs?
What are the configfile_
lines in arkmanager.cfg?
Will grab the output of ps -ef
for you when my mods finish updating, but I checked htop
before I stopped it to update mods and only the Scorched server was running out of of its set arkserverroot
scorched.cfg
arkserverroot="/home/steam/servers/arkonia_server/scorched"
arkautorestartfile="ShooterGame/Saved/.autorestart-scorched"
center.cfg
arkserverroot="/home/steam/servers/arkonia_server/center"
arkautorestartfile="ShooterGame/Saved/.autorestart-center"
.arkmanager.cfg
configfile_center="/home/steam/servers/arkonia_server/center.cfg"
configfile_scorched="/home/steam/servers/arkonia_server/scorched.cfg"
This should be better behaved in the latest version.
In fact, the latest version should no longer require the directory linking workaround.
Is the latest pushed to 1.6-dev? I updated it last night but looks like you just did a commit. Will try it in a moment, thank you very much in advance. :)
The latest is now on the master branch.
Looks to be working! Thanks a ton @klightspeed. :heart:
@klightspeed to clarify - we won't need the "arkserverroot" anymore and can remove the symlinks?
If this is true to remove symlinks how should one go about setting this up?
Yup, there is no longer a need for symlinks.
I have both my Center server and Scorched Earth server running out of /home/steam/servers/arkonia_server/pvp
To do this I have a center.cfg
and scorched.cfg
.
scorched.cfg
arkserverroot="/home/steam/servers/arkonia_server/pvp"
arkbackupdir="/backup/steam/servers/arkonia_server/scorched"
arkStagingDir="/home/steam/servers/arkonia_server/pvp/.staging"
logdir="/home/steam/servers/arkonia_server/pvp/.logs"
arkautorestartfile="ShooterGame/Saved/.autorestart-scorched"
center.cfg
arkserverroot="/home/steam/servers/arkonia_server/pvp"
arkbackupdir="/backup/steam/servers/arkonia_server/center"
arkStagingDir="/home/steam/servers/arkonia_server/pvp/.staging"
logdir="/home/steam/servers/arkonia_server/pvp/.logs"
arkautorestartfile="ShooterGame/Saved/.autorestart-center"
and then of course setting ark_AltSaveDirectoryName
to for example ark_AltSaveDirectoryName="SavedArksCenter"
as well as your ark_SessionName
, ark_MultiHome
, etc.
No additional configuration is needed.
Does anyone know the method for implementing the scorched earth expansion on a private server?