Jump to content

Mod installation routine - the good, the bad and the correct one


AL|EN

Recommended Posts

I would like to get your feedback, thoughts, and experience regarding the installation routine of WeiDU mods.

Assume that we have a mod called "MurphyLaw" , version "1.1.1" with the description of "Anything that can possibly go wrong, does."
Most players have this mod installed with version "1.1.1". After a long time, there was an update to "v2.0.0". Players want to update the mod.

For every possible case that might exist, what would be the safest and least error-prone workflow in order to have a successful mod update?

Case A - Single mod or the mod that was installed as the last one

A1 - What players do:

  1. Extract new 'MurphyLaw v2.0.0' version into the game directory, overwriting old 'MurphyLaw' files
  2. Re-install the same components by launching Setup-MurphyLaw and selecting "Re-install" for every component
    (WeiDU will then reinstall updated MurphyLaw)

A2 - Proposed workflow:

  1. Keep the names of the currently installed components
  2. Uninstall the old version of the 'MurphyLaw' by launching Setup-MurphyLaw --uninstall
  3. Remove old 'MurphyLaw v1.1.1' directory from the game directory
  4. Extract 'MurphyLaw v2.0.0' version into the game directory
  5. Install the same components again by their names

Case B - Updating and reinstalling mod that was installed between other mods:

B1 - What players do:

  1. Extract new mod version into game directory overwriting old 'MurphyLaw' files
  2. Re-install the same components by launching Setup-MurphyLaw and selecting "Re-install" for every component
    (WeiDU will then reinstall updated MurphyLaw and all mods installed after)

B2 - Proposed workflow:

  1. Keep the names of the currently installed components for the  'MurphyLaw v1.1.1' and for all other mods installed after
  2. Uninstall all mods after the updated mod by launching Setup-MyMod --uninstall in reverse order from WeiDU.log
  3. Uninstall the 'MurphyLaw v1.1.1' by launching Setup-MurphyLaw --uninstall
  4. Remove 'MurphyLaw v1.1.1' mod directory from the game directory
  5. Extract 'MurphyLaw v2.0.0' into the game directory
  6. Install 'MurphyLaw v2.0.0' using the same components
  7. Install all remaining mods that were installed after updated mod

Explanation:

Why uninstallation and removal is required instead of simply overwriting the mod files?

The first reason would the way how WeiDU handles reinstalling mod components.
WeiDU keeps 'uninstall information' inside sub-folder name of component index number or mod DESIGNATED number if exist.
"MurphyLaw v1.1.1" comes with 3 components: "Weapons", "Armors", "Shields". 

WeiDU.log contains the following:

~MURPHYLAW/MURPHYLAW.TP2~ #0 #0 // Weapons: v1.1.1
~MURPHYLAW/MURPHYLAW.TP2~ #0 #1 // Armors: v1.1.1
~MURPHYLAW/MURPHYLAW.TP2~ #0 #2 // Shields: v1.1.1

"MurphyLaw v2.0.0" comes with 6 components components: "Armors: Mail", "Armors: Plate", "Shields: Large", "Shields: Medium", "Weapons: Sling", "Weapons: Spear".
The indexes of those components are 0,1,2,3,4,5.

So If you do 'Extract> Overwrite and Reinstall' you would actually install completely different components of "MurphyLaw v2.0.0": "Armors: Leather", "Armors: Plate", "Shields: Large"

The next thing would be the code loops.
Mods often contain code that has some sort of loops: for (every file inside MurphyLaw/ITM directory) COPY file TO override directory.
If the author of "MurphyLaw v2.0.0" removes some files from the MurphyLaw/ITM directory and the user simply extract the new version into game folder, the old files won't be removed.
Mod re-installation via weidu will still copy old files that should no longer exist. This also can lead to problems and false bug reports.

Questions:

Assuming that even if I A2 and B2 workflows are complicated and manually preforming those steps require multiple actions and is time consuming:

  1. Do you think that those are correct or there are some missing steps that I should include?
  2. Do you think such A2 and B2 workflows should be the default and forced when the players re-install mods to achieve safest and least error-prone mod updates?

@Wisp Could you provide insights?

Edited by AL|EN
typo
Link to comment

A2/B2 is what I do now since I shot myself in the foot multiple times using A1/B1 while testing my own changes.  Then I went 'Aha!  That's why they have that little blurb in their read-me!'.  LOL  And I just use WeiDU manually (command line prompt)- I don't bother with the executables.  WeiDU does the uninstall/reinstall of other mods, but if I want them in a particular order, it's better to not use the default WeiDU behavior.

Anyway, this was the long way of saying 'I can't think of any way to improve upon that method'.  Yes, to questions 1 and 2.

Edited by Lauriel
Link to comment

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...