Comprehensive step-by-step for getting and installing mods

Sorry if this is a repeat of previous posts on this topic.

I recently did some research about installing mods in general, and then with the help of others in this forum, figured out how to get Conan mods from the Steam workshop for a non-Steam install. For the benefit of those in my Discord channel, I collated the instructions into a comprehensive solution that can be accessed from beginning to end, all in one place, and put them into a discussion thread.

Here is the text of that thread:

Default path for Mods folder for Epic Games Store install: C:\Program Files(x86)\EpicGames\Conan Exiles\WindowsNoEditor\ConanSandbox\Mods\

Default path for Mods folder for Microsoft Store install: C:\XboxGames\Conan Exiles\Content\WindowsNoEditor\ConanSandbox\Mods

(It’s possible the Mods folder may have to be created. At least for the Microsoft Store install, it was very picky about user permissions. Make sure you’re logged in as Admin before trying to add folders to \ConanSandbox).

General method (not for Steam Workshop):

  1. find mods online (ex.: Mods at Conan Exiles Nexus - Mods and Community)
  2. download .pak file
  3. copy .pak file to Mods folder (see above for default paths)
  4. Start Conan Exiles, choose Mods from the main menu, and move the mods you want from “available” to “active” or whatever the columns are called in that screen.
  5. Restart Conan Exiles to load the selected mods.
    (There is a .txt file in the Mods folder that will update as you activate mods in the game. Don’t edit or delete it, or the mods you’ve chosen will not load.)

Downloading from Steam Workshop:

Determine the path for your Mods folder (see above for default paths)

Download this batch script: WorkshopDownloader - Google Drive

Extract the folder wherever you want, I guess. I extracted it to C:\ just because I figured that would be the least complicated place to put it.

Download SteamCMD: SteamCMD - Valve Developer Community

Put SteamCMD in the same folder as the batch script.

Find the Steam Workshop mods you want to install at Conan Exiles

For each mod that you want to install, copy the file ID.
For instance, in the link: Steam Workshop::GlowingEssence, you want to copy the 2972994246.

Paste the file IDs, one per line, into the ModIDs.txt file, and save the changes. The ModIDs.txt file is in the same folder as the batch script.

Run the batch script(Run.bat). The first time you run it, it will download files that SteamCMD needs to run properly. After it does that, it will download the mods you pasted file IDs for into the ModIDs.txt file. It is a good idea to leave the file IDs inside the ModIDs.txt file, as SteamCMD checks them all for the latest version and replaces any outdated versions.

After the script has terminated, open a File Explorer window for the following path:
(Wherever you extracted WorkshopDownloader to) \WorkshopDownloadScript\Steam\steamapps\workshop\content\440900.

There should be a number of subfolders in there, matching the fileIDs you pasted into ModIDs.txt. Leave them as they are, as SteamCMD will check them in the future for updates when you run the batch script in the future.

In the File Explorer window, do a search for *.pak. This will return a list of all the .pak files sitting in the subfolders. Select All and Copy, then paste to your mods folder.

I guess you can cut instead of copying, but that will mean every time you run the batch script it will re-download all those files, even if it otherwise wouldn’t have to because they are the same version as before. I guess in the case where storage is limited and the .pak file is 1gb+, you might want to delete the originals after pasting to your Mods folder. You want to keep the file IDs in the ModIDs.txt file for as long as you want to keep the mod, because that is how the batch script knows to check each mod for updates.

I will continue to try to figure out a way to automate the copy/paste operation, but until then, this method works just fine.

I would also suggest putting a shortcut to Run.bat somewhere easily accessible, so you can periodically run it to check your installed mods for updates. Since it will be updating to the subfolders in 440900, you’ll have to do the search *.pak, Select All, Copy, Paste to Mods each time you find updates or get new mods.

3 Likes

Thanks, this is very helpful information! I’m going to use this to add non-Steam support to BUGLE.

1 Like

If you figure out how to modify the batch script to copy the .pak files out of all the subfolders of 440900 and paste them into whatever Mods folder the user specifies, I would really appreciate having it. It seems like such a simple task, and yet my attempts so far have been fruitless.

This is my latest and greatest effort, but apparently not good enough. It uses xcopy.exe with the /y parameter because of the wonky permissions settings for dest and its parent folders. I’m not very good at writing batch scripts so there may be some glaring error here that I’m missing.

@ echo on

set src=C:\WorkshopDownloadScript\Steam\steamapps\workshop\content\440900
set dest=C:\XboxGames\Conan Exiles\Content\WindowsNoEditor\ConanSandbox\Mods

for /r %f in (%src%*.pak) do (

set parent_dir=%~dpf

set file_name=%~nxpf

xcopy /y “%parent_dir%%file_name%” “%dest%”

)

pause

It is possible to add games that you installed at your computer in Steam. Is this method not allowing direct access to the workshop?

A couple of clarifications

Generally a horrible idea as over 95% of Conan mods are on the Steam workshop, so going to Nexus almost guarantees you’ll end up with severely outdated mods that will cause all sorts of crashes.
There are a very tiny handful of Conan modders who still update a few on Nexus here and there and while I like Nexus for other games, it’s just a bad source for Conan.

The advice isn’t the best one here as the modlist.txt is the primary source of information regarding activated mods for the game… so by all means, editing it with a simple notepad is just fine as it simply contains a path and filename to each mod per line.
In fact… it can solve your other problem!

Very simple… instead of actually copying the files to your game’s Mods folder… simply edit that modlist.txt and put the full path for each mod to their SteamCMD download locations…

This way all you ever have to do is use your mod updater batch file and your game will automatically use the latest mods without you having to copy any files, since your modlist is directly set to them.

SteamCMD allows anonymous access to the Workshop, so it doesn’t matter if the game is activated on Steam or through some other store. The only difference between any of the store apps is where the .pak files are accessed from, so as long as they get to the right Mods folder eventually, they will function.

1 Like

I am not making recommendations or passing judgement on where others get their mods from. I am only trying to make the instructions as general as possible so whoever wants to follow them can grab their mods from wherever they happen to find them, regardless of where that may be. Nexus is given as an example because it was the first result besides the Steam Workshop to appear in a search. For all I know, whoever reads these instructions is getting their mods from Nexus, or maybe grabbing them from a Drive folder or an email attachment, or maybe getting them from a file send in a chat. The instructions are designed so that particular detail doesn’t have to be important. For the purpose of these instructions, a .pak file is a .pak file, and all that matters is that it finally land in the correct location.

The advice is there so anyone who gets into modlist.txt and deletes entries, or deletes the file itself, won’t be surprised the next time they go into the game and have to reload mods for the deleted entries. Once again, covering all the bases for anyone regardless of technical prowess to be able to follow the instructions easily and successfully. I’ve seen plenty of people throughout my life do things like clear Windows folders that they didn’t think important and then wonder the next time they go to boot up why they’re getting all kinds of boot-time errors. Beyond that, IMO reloading mods and then quitting/restarting is a pain, so I’m also trying to help others avoid having to do that.

This seems to me like more work than simply copy/pasting the files from the 440900 subfolders to Mods whenever 440900 is updated. It’s not like it has to be updated every time somebody plays.

If there were a way to change the folder CE is looking for mods in (and whoever was following these instructions felt like doing that,) that would be the best solution and there would be no need for this discussion. As far as I know though, changing the Mods folder for the install is not possible (unless it’s an option during installation? I wasn’t watching). If it is possible that way, then reinstalling or reconfiguring the app would be a requirement. Once again, does the user want to go to that trouble?

So, assuming no possible/simple way to change the Mod folder for the CE installation (i.e., the path to the Mods folder is hardcoded,) and under normal circumstances (i.e., nobody is going into modlist.txt and manually changing file paths for each entry,) in order for a mod to be seen by CE so it can be activated in-game, it has to already be sitting in the Mods folder designated by the particular install (Steam, Windows Store, or Epic Games Store). As far as modlist.txt goes, under those conditions no entry is made to it until CE has found the mod in its install’s particular Mods folder, displayed it in the Available column of the Mods screen, and the user has activated it from that screen.

If you skip the in-game activation process by manually typing in an entry to modlist.txt every time you add and/or want to activate a mod, and manually deleting an entry whenever you remove and/or want to deactivate a mod, I guess that could work if you don’t mind going to the trouble. Once again though, it seems like way too much work, and I intended these instructions for anyone to be able to easily implement without having to do nitpicky things like reinstall the app or manually edit modlist.txt.

As for myself, I’ve already got a search saved in DoubleCommander to pull all the .pak files out of the subfolders of 440900 and copy them to Mods. It’s only a couple of clicks, but it’s only slightly more efficient than opening a File Explorer window for the 440900 folder, typing *.pak into the search bar, selecting all the files in the search result, and pasting them into the Mods folder. The modlist.txt file updates itself when you click the mod over from the left column to the middle column of the Mods screen, no typing necessary :slight_smile:

Neither was I… as one of the mod creators for Conan, I was merely informing you that starting off by recommending Nexus to people will cause both us creators and also mod users more trouble than good.

As such I pointed out that, in my opinion, at the very least it needs some caveats mentioned like the fact that a majority of them are on steam and the nexus ones are outdated and whoever chooses to install from there should triple-check the update date of said mod (this ofc applies to steam too, the difference being that the majority available on the nexus are already outdated).

So yea, I think in this context if you were actually trying to make a useful guide, then it is definitely very useful info. :man_shrugging:

And once again if the scope of this guide is to teach people how to download and use / load mods, then the modlist is one of the most important parts of that process and imo. you cannot skip over explaining it.

Which is why I pointed out that it’s not the best approach… There will be plenty of times when people need to diagnose / manipulate load orders… Eliminate mods 50% at a time… etc. and doing so by manipulating the modlist text file is simply the best method by far. It’s far easier to select half of a text file… press Cut and paste it in another file temporarily, than going to the menu and moving them to the disabled section.

A very simple mention of what this file is and what it contains goes a very long way instead of “Don’t touch it”.

You were literally looking for a solution so you don’t have to copy the files all the time when you update and I gave you one…

Setting your modlist txt to directly point at the downloaded SteamCMD pak files will ensure that you never have to copy the files ever again… you press your Run batch file to update them when you have to and launch the game. :man_shrugging:

That’s literally what the above method is doing… supplying a direct path in the modlist will change the folder where CE is looking to that one…
Here’s an example of a modlist.txt

D:\Steam Games\steamapps\workshop\content\440900\2874346399/Inventory_compactor.pak
D:\Steam Games\steamapps\workshop\content\440900\2875171748/ArmorStats_in_Bench.pak
D:\Steam Games\steamapps\workshop\content\440900\2890891645/DamageNumber.pak
D:\Steam Games\steamapps\workshop\content\440900\2898150544/Simple_Minimap.pak
D:\Steam Games\steamapps\workshop\content\440900\2914950133/Frequent_meteors.pak

Wrong-ish (technically not wrong, but it’s not a requirement is what I mean). You can even manually create the text file as shown above and Conan will detect and enable / load those pak files from those locations on the first start, without ever having to bother with the mods menu. (on some platforms the mods menu ingame is not even available btw unless you do some tricks with symlinks, but the text file editing works even there)

As far as I can tell, as long as the files are sitting in subfolders of 440900, each .pak file would need a separate manual entry, and that entry would need to be deleted whenever the user wanted to disable the mod, and re-entered whenever they wanted to enable it. As my install has a Mod screen on the main menu, it did not occur to me that other platforms don’t. My intended audience was anyone who wants to quickly and easily get the mods from wherever they find it on the internet and into their game with a minimum of hassle. Considering the needs of that audience, so far batch copying the files across a couple file explorer windows is a lot more intuitive and requires a lot less effort than messing with the modlist.txt file. For all its deficiencies it is probably the solution that that audience would prefer.

Also, the entries in my modlist.txt file aren’t quite so clean as the ones you pasted into your reply. Mine look like this:

C:/Program Files/WindowsApps/FuncomOsloAS.ConanExiles_00000.00.0000.0_x64__zzzzzzzzzzzzz/WindowsNoEditor/ConanSandbox/Mods/Pythagoras_Support_Beams.pak
C:/Program Files/WindowsApps/FuncomOsloAS.ConanExiles_00000.00.0000.0_x64__zzzzzzzzzzzzz/WindowsNoEditor/ConanSandbox/Mods/SandAndStone.pak

the path beyond Program Files is hidden, and I wasn’t able to make it visible by showing hidden items in Program Files. I’m guessing it belongs to a user called FuncomOsloAS.ConanExiles_00000.00.0000.0_x64__zzzzzzzzzzzzz that showed up in my user list after installing the game. I haven’t yet tried deleting those entries and replacing them with the paths to the 440900 subfolders, but I imagine most non-technical people would not be confident doing so. I’m not equipped to explain to anyone what that user is or why the .pak files are being copied to a hidden directory that probably belongs to it as part of the in-game process for enabling them, and I imagine any thorough coverage of what modlist.txt is would have to include that explanation. I’m a little dubious as to why I’m allowing that user to exist on my OS without being able to access its permissions, but I figure it must be benign enough and as my virus scans don’t have any problem with it, I’m doing my best not to either.

Oh! That’s actually the reason you DO have a Mods entry btw :slight_smile:
You installed the game on your Windows drive, which seems to be a hardcoded requirement for the gamepass version to display the Mods option.
That’s exactly what other users can fix by making a symlink into the above mentioned folder that points to the actual drive where the game is installed

Here you go, here’s a link to a post explaining the process for those who installed it on a different drive and have no Mods menu

2 Likes

The weird thing is, the files it launches from and uses are in C:\XboxGames\Conan Exiles\Content\WindowsNoEditor\ConanSandbox. As part of the in-game process for enabling the mods, it is copying the .pak files from the Mods folder and pasting a second copy of them to that other path that I can’t access or even see. I was trusting that the app was doing the right thing, even though I’m not comfortable with that other user entry in my OS, or the invisible path.

That’s most likely not a user on your OS though, but rather the user under which Funcom can access the windows app store, so it’s just recreating their folder structure.

1 Like

That’s probably why Windows called it a corrupt user profile and urged me to delete it when I was first looking at it the other day.

I mean it does look ugly as hell :smiley: Never used the gamepass version so I was just as surprised to see that, but I think that’s what it is… just the way it’s been uploaded by them to the store.

Yeah, it’s not pretty. I 0’d and z’d all the actual numbers and letters just in case it was unique to my install.

So rewriting the paths in the modlist.txt file without enabling them from the in-game menu won’t confuse the game? The only reason I’m asking is because I’ve got a couple hours invested into a save that I’d rather not have to delete if changing the paths to the .pak files bricks it.

No it doesn’t, you can freely change that provided that each line points to a valid .pak file
Quite often people will use multiple copies of the text file for playing on different modded servers and just rename the text file containing the configuration they want to play on to be the actual modlist.txt before launching the game. This way they don’t have to restart the game as the proper mods will already be loaded.

This is all great to know, and I appreciate you handing down the knowledge, but I still hold that there are probably a lot of people out there who just want to use mods in their non-Steam CE app but aren’t keen to take their efforts into this territory. Downloading the necessary resources, running the batch script, and copying the files from one folder to another is probably as far as they would want to go. A lot of the gamers from my immediate friends circles wouldn’t even want to do that. I imagine they would probably just ask me to do it for them. Either that or they would throw up their hands, delete their non-Steam install, and re-purchase/reinstall it via Steam.

Well, sure, normally that would be the case, however like you just pointed out, they’re already doing much more advanced stuff and editing other text files :slight_smile:
Like making that list of workshop IDs for the downloader to go through, so at that point where there doing most of the things manually anyway, one more text file isn’t going to hurt them, but it’s a very powerful tool and can save a lot of time so it’s worth knowing about imo.

And yes lol, I’ve seen people who re-bought the game on steam just for the convenience of installing mods, despite finding out about this manual installation method :man_shrugging:

1 Like

I wrote this in Java because it’s easier for me to follow than a batch script. I’ll try the batch script again now that I’ve moved the downloader out of C:\ and into my own user folder. I think having it in C:\ was making the contents inaccessible to the script. Anyway, this one works although in its present form it’s not really useful to anyone not running a Java IDE (I’m using Eclipse). It traverses the subdirectories of 440900 and gets the path names for their contents, and then writes them to steamModList.txt in whatever Mods folder the install is using. I figure the user can copy the entries out of steamModList.txt into modlist.txt as they need. It also preserves their existing (possibly from non-Steam sources) modlist.txt entries from being overwritten since this script creates a new file each time and only reads the Steam entries.

This would go into a java class file called PopulateSteamModList.java:

import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

public class PopulateSteamModList {

public static void main(String[] args) throws IOException {
    File srcDirectory = new File("C:\\ExtractionFolder\\WorkshopDownloadScript\\Steam\\steamapps\\workshop\\content\\440900");
    File destFile = new File("C:\\XboxGames\\Conan Exiles\\Content\\WindowsNoEditor\\ConanSandbox\\Mods\\steamModList.txt");

    List<String> filePaths = new ArrayList<>();
    for (File file : srcDirectory.listFiles()) {
        if (file.isDirectory()) {
            filePaths.addAll(getFilePaths(file));
        } else {
            filePaths.add(file.getAbsolutePath());
        }
    }

    try (PrintWriter writer = new PrintWriter(destFile)) {
        for (String filePath : filePaths) {
            writer.println(filePath);
        }
    }
}

public static List<String> getFilePaths(File directory) {
    List<String> filePaths = new ArrayList<>();
    for (File file : directory.listFiles()) {
        if (file.isDirectory()) {
            filePaths.addAll(getFilePaths(file));
        } else {
            filePaths.add(file.getAbsolutePath());
        }
    }
    return filePaths;
}

}

1 Like

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