Why OIVs Really Suck
OIVs suck and why you should never use them. Read on.
The concept of the OIV is well-intentioned but falls short for so many reasons. OIV creators are selfish. Well not all of them. Half are, the other half mean well but are clueless.The OIV modder wants to make sure their Mod is properly installed, even at the expense of others, not taking into account that some of the files they include for installation will be much older than the files they might replace on your system.
In this post let's look at why OIVs suck and why you should learn how to manually install mods.
OIVs don't have uninstallers. Some do, but read on and you'll see why that doesn't make any sense. So good luck removing an OIV mod if you change your mind or if it conflicts with other mods, or worst case crashes your GTA5.
OIVs replace your dlclist.xml. Many if not most do this. You then lose all the addon mod entries you made into that dlclist yourself - your addons will no longer load until you add those lines back. Good luck. (Note: an OIV can be written to insert a line but most modders don't seem to know that). However OIVs thankfully will not delete the actual dlc.rpf addons.
OIVs replace your gameconfig.xml. Again not all do, but many or most will. The gameconfig.xml they install is highly unlikely to match an updated game version. So you will end up with an old gameconfig, almost certainly a crash, and if you did any customizations yourself, guess what, they are all gone.
OIVs overwrite your files. Aside from dlclist.xml and gameconfig.xml, an OIV can potentially overwrite many other files - creating conflicts or crashes with other mods. An OIV doesn't check for existing files nor file versions. Their file could be from 2013 whereas the current file (eg. gameconfig) is from 2022. So it doesn't care about the possibility of file conflicts. They can also do unwanted deletions.
OIVs can be poorly written. The average modder is hopefully very knowledgeable with 3D modelling but doesn't necessarily understand XML, the concept of paths, and the overall Window file system. This is evident when you look at the innards (assembly.xml) of some OIVs and notice the planned installation of files that are not even included in the OIV or paths that just don't make any sense.
An OIV, like any other app or program, could contain malicious instructions. That's another reason to exercise caution, particularly if the OIV mod isn't downloaded from this site. When in doubt, inspect the contents (see below) or don't install.
OIVs can write to game folders, not just the Mods folder, even when you tell OpenIV to install in the Mods folder. This is done by specifying another path in the OIV assembly.xml file. This means your game files could be overwritten or deleted.
Manual Installation
An OIV is an archive. Think a rar, or zip, or 7z. You can extract the contents just as you would a zip file and without even changing the extension if you use an app like the excellent freeware 7z.
Once extracted, you will notice files such as dlc.rpf, gameconfig.xml, dlclist.xml, etc, in a folder called Content. By inspecting those files you will know what will be installed and which of your files will be overwritten if you do an automatic rather than manual install.
But how do you know where to install those files? Look once more in the extracted files and you will see a text file called assembly.xml. Although not the easiest file to understand this file will tell you exactly where in your Mods folder to put the files contained in Content. With practice this will be easy although an OIV with dozens of files to be installed in dozens of paths will be a PITA. Remember you will need to update dlclist.xml yourself, if relevant, manually.
Warning: you need to be careful when reading the assembly.xml locations (paths) because the GTA file/folder structure has many folders, for example X64, that can exist in different paths.
Hot tip: do a backup of key files whether you choose a manual or automatic install. This holds true for all mods, not just OIVs. Also, if you inspect the Content folder of the OIV and don't see any issues (i.e. no gameconfig or dlclist.xml files that would replace yours) go ahead and do an automatic install.
Advanced Users
If you inspect the content of the archive and realize all is good except for some files, you can remove certain files (such as dlclist.xml) from the Content folder, you can also remove the instructions to install those files from assembly.xml, and repackage the OIV. You now have a modified OIV that can be installed automatically with OpenIV but without the offending files.
Insert line in Assembly.xml - an example
Here is an example of how a modder can insert a new dlc line for their mod without screwing up your whole system. Path reflects where I personally keep my dlc.
The example is specific to my own setup which uses comments as headers for organization, but the syntax is the same and the location can easily be the top or bottom of the dlclist.xml file (see last item in this post)
<archive path="update\update.rpf" createIfNotExist="False" type="RPF7">
<text path="common\data\dlclist.xml" createIfNotExist="False">
<insert where="After" line="*<!--CARS -->*" condition="Mask"><Item>./DLC/Cars/American/fairlane64/</Item></insert>
</text>
</archive>
As the last line in your dlclist.xml, just before the closing path tag.
<insert where="Before" line="*</Paths>*" condition="Mask"><Item>./DLC/Cars/American/fairlane64/</Item></insert>
output:
<Item>./DLC/Cars/American/fairlane64/</Item>
</Paths>
</SMandatoryPacksData>
Alternative way. Use "Append"
<add append="Last" xpath="/SMandatoryPacksData/Paths">
<Item>dlcpacks:/fairlane64/</Item>