Conan Exiles Dedicated Server Launcher (Official Version: 1.0.44 / Beta: ----)

Maybe a DxDiag report file could tell us what’s wrong?

So basically just a simple edit field with comma separated list of steamids that then get downloaded and updated through SteamCMD would be enough?

Is there a practical way to get the steamids so they can be presented in some easy-to-use selector, or are you just fine with the list of numbers :slight_smile: ?

Could you provide the router model, ISP name and firmware version? That would probably help diagnose the problem. (And if you can, the actual settings you modified)
Thanks.

A new version of the app has been released! The current version is 1.0.6. New to this version is a Mod Manager!

Download 1.0.6 Here

How this works:

A new UI element has been added, allowing the user to enter a list of mods they want to run on the server.

The “Mod List” entry accepts two types of values

  • An actual numerical value like ‘860241645’ or ‘1422434062’ (which are the workshop identifiers on steam for ‘PauseOnEsc.pak’ and ‘ServerCore_hades.pak’)
  • A full path pointing to a PAK file present on the user computer

Note: For convenience, the edit field has been tricked out to detect when the user pastes a link from the Steam Community page: If for example the user pastes ‘https://steamcommunity.com/sharedfiles/filedetails/?id=1382120864’ the edit field will only copy the ‘1382120864’ part of the link.

Note: The “light” bulbs is not 100% fool proof, but if it turns red there’s definitely an issue, possibly the path to the PAK file cannot be accessed, or you have non numerical entries.

When you are done adding the mods, remember to press Save Changes.

When starting the server, the system will as usual run SteamCMD to check for any updates, but it will also try to update any of the numerical ids mods (it will skip any of the local ones referenced by path), and when the update is done a brand new “modlist.txt” will be generated in the ‘conanexilesdedicatedserver\ConanSandbox\Mods’ subfolder.

You can validate that the mods are correctly found by the server by looking at the top of the servers logs where you should see something similar to this:

The DedicatedServerLauncher stores the information about which mods to install in the ServerSettings.ini file in a new ‘DedicatedServerLauncherModList’ entry:

OP is updated with this information.

Thanks @AndyB for updating the post! :+1:

So, this is the version 1.0.6, hopefully the changes are usable enough to make it possible to deal with mods. At some point I’ll see if I can get something more advanced, but it’s all I could do in one day.

Tomorrow I’ll try to see if I can make it possible to change the ports used by the server, as well as the MultiHome parameter, hopefully with these two fixes that would be enough to have you guys be able to use the program during the summer break.

Please report any critical issue as soon as possible so I get a chance to address them :slight_smile:

Also, design wise, if you think there are things that really are not working well or you think should have been done differently, don’t hesitate to tell about, all feedback is good as long as it’s constructive.

1 Like

Virgin is the ISP.
Firmware version: SG9F11000C
I couldn’t tell you the model, but Virgin calls the modem/router “Steve”

The only settings in the router I modified was adding the Steam ports

I’m not sure which one is steve, but try to see if you can find something related to Port Forwarding.
This site has some information about other Virgin modems, not sure if yours is there (under another name):
https://portforward.com/virgin-media/hub-3.0/

Basically there are two things:

  • Open the ports so the outside world can talk to your local network
  • Inform the router about which machine in your local network should receive the outside connections

This second part is the “port forwarding”, you have to make sure that the port point to the correct local IP on your network, specially important if your router give a different IP to the local machine each time it connects or get rebooted (in which case you need to set a fixed IP locally instead of relying on the DHCP (the system that automatically attributes an IP to the various machines on our network)…

Yes, A simple field with mod ids,(I assume you meant mod ids and not steam ids)

There really isn’t a practically way, that i know of of getting a mod id other then just looking at the mod in the work shop. Most authors add the ID into the description and the id is in the url

filedetails/?id=1367404881

also you can see the id is also listed in the url.

Do you use the steamapi to get the mods? if so Can I suggest a setting to input a users own steamapi key?

edit I didn’t not know steamcmd would download workshop items, I learned something today.

conantest

Any chance this can be changed. I was wanting to test the new version with a new install of the test server but because I am already running a server I can not do so.

Yeah, I found out yesterday, documentation was not super clear, but I ended up with a generated command line that looks like that:

+login anonymous +force_install_dir “E:\ConanDedicatedServerLauncher2\ConanExilesDedicatedServer” +app_update 443030 -beta default +workshop_download_item 440900 860241645 +quit

Any chance this can be changed. I was wanting to test the new version with a new install of the test server but because I am already running a server I can not do so.

That can be changed, but that’s not a 5 minute fix: Basically I built the tool using our already available codebase functions, and the “find process” function that I use to find if the server is already running is not able to filter by a specific folder.

I’ll add that to the todo list, but it’s lower priority than allowing for different server ports.

Hope that makes sense :slight_smile:

A new version of the Dedicated Server Launcher has been released.

Download 1.0.7 Here

Moving forward, the launcher app will have a different filename for each version just in case something goes wrong with a publish.

New in 1.0.7:

  • The two main game ports (default 7777 and 27015) can now be modified and saved.
  • The server can now optionally be started in MULTIHOME mode using the IP address specified in the currently selected adapter.
  • The launcher now only scan for running server processes in its own sub-directory - this means you can run multiple servers on multiple ports - as long as they are in distinct folders

How this works:

  • The “Game Client Port” and the “Steam Query Port” are now editable, and their content get saved in the Engine.ini:

    [URL]
    Port=7777
    [OnlineSubsystemSteam]
    GameServerQueryPort=27015

  • A new “multihome” checkbox has been added. When disabled, the server launcher behaves as before, but when enabled it copies the IP of the currently selected adapter in the network list and uses it as a command line parameter when launching the server (eg: -MULTIHOME=195.410.28.64)


This information has been added under the Server Settings section of the OP.

If you try the version 1.0.7, the issue should be fixed.
If I did not totally fumbled, you should be able to run multiple servers at the same time, with multiple DedicateServerLauncher (one per folder) each only looking at it’s own installed version of SteamCMD and server program.

The latest version now support that, you can edit the default ports to use default values, and you can also select a different network adapter and use it to setup the “multihome” commandline parameter.

1 Like

Couple things right off (sorry) version 1.0.7

How do you test if the ports are open? It says my are closed but i know for a fact they are open as I have people join my servers all the time and the servers show in the steam/game browser.

EDIT: You can ignore everything about the ports above. My issue has something to do with how the asus firmware handles Nat hair pinning and since its bake in I can’t really do much about it.

Multiple ips. Can you make it if a link/adapter has more then one ip , the ip can be selectable? I am sure I am probably one of the few people that has my home network setup this way, (asus router) its makes it easier to run multiple servers.

Can I suggest you get rid of server console in the launcher and just launch the server in a cmd prompt window like if I was using a bat file. Just seems redundant and I dont like the little window still being open. :slight_smile: Plus the server console shows much more info at once and the color coding, don’t forget about the colors :slight_smile:

The mod download works pretty well,

My Server Region never saves always reverts back to Europe.

2 Likes

No need to be sorry, it’s still very much in development, else it would have beeen a 1.0.x version, not a 1.0.x :slight_smile:
As long as the feedback is useful, I don’t mind!

I can still answer the question:

  • For each of the ports I use a UDP socket initialized to either INADDR_ANY or whatever IP the multihome field is showing
  • I set the timeout to 1.5 second and then bind the socket
  • I start a thread to call a URL that triggers a server side script to try to send a packet to the UDP socket and then quit
  • The main thread just reads whattever comes on the socket
  • If we receive the expected packet, the green turns right, else we get the connection time-out

It’s probably not 100% correct, but it seems to have work in most cases.

Damn, I thought I covered it all with the adapter selection, I did not think that some adapters had multiple ips as well.
That’s the kind of thing that is hard to do without an actual way to reproduce it, hmm… will have to ask our network operations guy.
Thanks.

It’s what I originally had, the problem is how to close the server cleanly.
This window was originally added by one of the server coders guys to ensure a clean shutdown, because if you just close the main window during for example… a database save, bad things happen ™

I’ll see if I can do something about that.

Pfiuuu, dodged a bullet there :smiley:

I actually found what happened… and it makes no sense.
Basically my tool handled all the parameters in the ini files as case sensitive, so it was looking for and writting to “ServerRegion”.
If you change the region, save, quit the tool, restart the tool, the region is correctly handled.
Then you start the server, and tada! It got rewritten to “serverRegion” with a lower case “s”…

I did a code change to the tool to handle variables case insensitive… this does solve the problem, but it makes no sense that the server does that just for this particular entry.

I’ll try to see if I can do a proper fix, but I will also poke the server guys to understand what’s happening there: If it happened with the server region it may also be a deeper issue that corrupts other settings.

Thanks for the report.

1 Like

WOW! Thanks for Multihome option. It works great. Finally, I could set the dedicated server and play the game. I moved the game.db file from single player/co-op mode to this dedicated server. It perfectly worked without any error. Though the app shows Server Region as Europe all the time, after I changed to North America and pushed the save button, it correctly shows in the server list in the game.

3 Likes

A new version has been released!

Download 1.0.8 Here

  • Fixed the problem with the server region value not initializing correctly in the UI (for some reason the parameter is called “serverRegion” instead of “ServerRegion” and failed to be found by a case sensitive search)
  • Modified the network settings part of the UI to allow for multiple network adapters having multiple IP each.
  • Removed the DHCP and Gateway information - it’s mostly useless for this tool, and at best, confusing for the users.

How this works:

  • The network adapter selector now shows the list of all available IPs accross all adapters.
  • After selecting the IP you wish to use, you need to click the “Select” button to copy it to the “Multihome” edit field (that automatically activates it as well)
  • In the ini file, the multihome ip and the fact multihome is enabled has now been split in two different variables:
    [OnlineSubsystem]
	DedicatedServerLauncherMultihomeEnabled=True
	DedicatedServerLauncherMultihomeIP=195.410.28.65 
2 Likes

Glad you like it :slight_smile:

Version 1.0.8 should normally fix the issue with the serverRegion not being correctly saved, and @Munra will also be hopefully be happy with the change I made to the multihome now handling all his network cards and multiple ips (power user!).

That being said, this is going to be the last version for about three weeks, I’m leaving for summer vacations, but feel free to comment on the post, I will go through all the feedback when I’m back, and fix whatever seem important.

I’m probably going to do a pass on the log-view part if only because some colleagues asked the same thing for another tool we are using internally, so who knows, there’s a chance you get and upgrade with a resizable log panel, colored output.

If we decide to go farther in term of what the tool can do, I guess I’ll have to switch to a tabbed user interface with configuration split in multiple option panels, but we are not there yet, it will depend of how many people are actually using the program.

Have fun, and see you in three weeks.

PS: If for some reason the new version is causing issues, just use the previous one.

1 Like

Anyone knows why it throws this error everytime it tries a connection:
The procedure entry point [email protected]@@QEBA_NXZ could not be located in the dynamic link library tier()_s64.dll.

Its strange, the .dll rests in its executable folder. Ive changed nothing.

I’ve set up the server folder in the D:/ driver, since my C:/ is nearly full.

Also while opening I get alot of error from server loading:
Ex:

Building:Warning: Data: ABuildableBase::LoadCDOItemData [Default__BP_PlaceableItemContainer_C] HasBuildingItem failed at: /Game/Systems/Building/Placeables/BP_PlaceableItemContainer.BP_PlaceableItemContainer_C

Items:Error: Data: [BP_interactable_clientside_567] missing lore item in table: 0

[2018.07.05-21.20.19:142][ 0]LogStreaming:Error: Couldn’t find file for package /Engine/EditorMeshes/MatineeCam_SM requested by async loading code. NameToLoad: /Engine/EditorMeshes/MatineeCam_SM

And many more from that style…

Help please :slight_smile:

Edit: so, for no confusion, removed my intro text here. A suggestion:

  • try installing the latest universal C(++) runtime from microsoft.

Better first wait for toolguy to give you an actual solution though :sweat_smile:

@Toolguy (sorry to ping you - again, I know nothing, but) closest I could come to an array of solutions for you, for now:
https://answers.unrealengine.com/questions/69663/runtime-plugin.html

Thanks for the try though. I already have the c++ installed. Its not that the .dll is missing but Idk if its the right version, if it wasnt linked, the .exe would crash and not start at all. But its missing an entry point, which means its looking a function that is not there… Thats what I believe it is

Fair enough, now I have searched for this as well and…you’ll have to read this maybe, but you understand things too I think: https://steamcommunity.com/app/440900/discussions/0/133256758572828702/