Using Mod Organizer 2 for Fallout 2 modding

MO2 for Fallout 2?

  • Useful

    Votes: 14 87.5%
  • Hm...

    Votes: 1 6.3%
  • Useless

    Votes: 1 6.3%

  • Total voters
    16

phobos2077

Vault Dweller
Modder
So I tried to see how feasible it is to use MO2 for Fallout 2. For those who don't know, it's a very popular software that allows to complex mod setups with ease, adding, removing, merging mods, etc. It's what people use to play modded New Vegas nowadays, as well as many other games. Basically a better alternative to complicated installers and repacks, if supplemented with a proper guide and mods.

The coolest feature (the one I wanted) is it's virtual file system. It does some kind of file IO hook trickery that I don't quite understand yet that fools programs into thinking the files are where they aren't. Like symbolic links but more powerful. You can merge mods based on folders with loose files easily. It also shows all conflicts. You can enable/disable mods with just one click.

But unfortunately the current MO2 doesn't have a plugin to support Fallout 2, and you can't just use it with any game out of the box. Luckily, it comes with a guide on adding basic support for any game by a simple python script:
https://github.com/ModOrganizer2/modorganizer-basic_games

So I copy-pasted script from another game, changed some fields and it seems to work. Set up folders and several executables. The ordinary way of installing mods via archives didn't work for me (I want them to be linked directly to github), so I created folders in mods folder manually and wired some symlinks.

Here's how it looks:
fo2_mo2a.png


As result, I can use Mapper, f2wedit and game itself where it loads everything from virtual data folder, but actual mods remain separated on disk. When f2wedit makes a change to proto file, it gets updated in separate mod folder.

It might already be useful in this form, but it's very basic. I don't know how to deal with DAT files yet. I want to be able to see conflicts and this setup requires to unpack all dat files into folders and delete them from "mods" folder. This is because I'm using RPU and it is distributed with a bunch of dat files.

What do you guys think? Would you want to use this kind of set up for mod development or modded gameplay? Or do you think it's useless for this game? If so, why?

If you want to try it yourself:
- Download and Install MO2 v2.4.4
- Take py file from this gist and copy it to your <MO2 Install Folder>\plugins\basic_games\games\
- Restart MO2
- Create a new Instance, point it to a folder with Fallout2 and sfall installed.
 
Last edited:
This is awesome! If you'd ever manage to make DATs work with this would be a game changer. Either way this would be super useful for testing mods too.
 
This is very interesting especially for people that still enjoy the game. Kudos.
 
After using this set up for several days, I can't imagine modding without it. I keep stuff from my mod always separated. This way I don't see too much files when editing stuff or when managing git repo. And I can easily turn certain mods on or off to test/compare stuff.

Might be useful for users as well, regardless of what kinds of mods they are using. If the mod is more than just 2 files in the mods folder, it's easy to install/uninstall to try out without risk breaking something. The only issue is ddraw.ini. I could see a way for mods to non-destructibly modify ddraw.ini upon launching the game, but it needs to be implemented into the plugin. Basically what you could do is: before the game is run, copy the "real" ddraw.ini from root folder, apply ini changes based on a special ini file provided by the mod, make sure the game reads this modified ddraw.ini is if it were in the root. I think it should be possible. This way your real ini never updated by mod, and you can freely change settings, while mods can override stuff they want.
 
I like MO2 a lot so I gave it a try with Fallout 2.
What I like is you can select which mod to activate without overwriting any file in the game folder. You can of course choose the load order, which is convenient.
First of all the game wouldn't launch till I write full paths in fallout2.cfg for critter and master.
Unfortunately I'm unable to procede to the main menu, since the game crash before this.

I have uploaded the error (check the two popup) and my file system :
mo2_initialization.png
mo2_file_system.png
 
So I went to MO2 Discord for some advice and looks like it should be fairly easy to write a plugin that will be able to:

- Unpack/process mods upon installing the via MO2
- Package mods in dat files (if we so choose) for performance reasons
- Generate mods_order.txt to instruct game to load dat files in the order of mods they come from (it's a new thing we added to sfall 4.*)
- Add/change ddraw.ini options that mods require (based on some mod.ini file that comes with the mod zip)

This will allow to easily install/uninstall mods, use all vanilla FO tools (including Mapper2) without changes (they will just see combined "data" folder), while still getting performance of dat files when running game with sfall.

Still needs at least several days of work to do but at least the path is somewhat clear and benefits are obvious. Some people might prefer the simplicity of mods folder, so the mods_order.txt option will still exist for them.
 
Back
Top