Mods working with multiple versions of RimWorld

Started by Nightinggale, November 12, 2017, 09:31:06 AM

Previous topic - Next topic

Nightinggale

Now that A18 unstable is out, mods are being released as A17 and A18. In some cases (like my own mod ModCheck), the difference is only About.xml. If that file could say both 17 and 18, mod releasing would be a whole lot simpler. While the ship has sailed for A17, adding this ability in A18 will solve the problem once A19 shows up.
ModCheck - boost your patch loading times and include patchmods in your main mod.

BlackSmokeDMax

My guess is A19 will not have the same compatibility. Saw ison remark on a bug thread that some bug was fixed, but will not be for A18. My guess is that bug fix will be for a newer alpha that will break saves once again. All a guess though!

Nightinggale

This is not about savegame compatibility, but rather if the mod can be used without changing the actual files. In my case the mod extends the base class in patch operations, meaning it will most likely just work with every single version of RimWorld, which has that class. To go one step further, if supporting two versions is possible, it would be valid to assume a patch operation, which checks the version of RimWorld itself, allowing minor patching if needed.

If a mod can support multiple versions, it will be possible to just update the mod on steam instead of releasing a new mod, which all users would then have to subscribe to. It will be a lot easier for users too if the mods they already subscribe to will update automatically and just work. Sure sometimes a mod requires a lot of work to work on a new version of RimWorld, but I'm talking about all the cases where no or minor work is needed.

Savegame compatibility is easily broken as it relies on all the data from the entire game, which makes it into the savegame. Mods on the other hand tend to rely on a tiny part of the entire game, making it much more likely that it will just work with multiple versions of RimWorld.
ModCheck - boost your patch loading times and include patchmods in your main mod.

BlackSmokeDMax

#3
Quote from: Nightinggale on November 13, 2017, 09:43:19 AM
This is not about savegame compatibility, but rather if the mod can be used without changing the actual files. In my case the mod extends the base class in patch operations, meaning it will most likely just work with every single version of RimWorld, which has that class. To go one step further, if supporting two versions is possible, it would be valid to assume a patch operation, which checks the version of RimWorld itself, allowing minor patching if needed.

If a mod can support multiple versions, it will be possible to just update the mod on steam instead of releasing a new mod, which all users would then have to subscribe to. It will be a lot easier for users too if the mods they already subscribe to will update automatically and just work. Sure sometimes a mod requires a lot of work to work on a new version of RimWorld, but I'm talking about all the cases where no or minor work is needed.

Savegame compatibility is easily broken as it relies on all the data from the entire game, which makes it into the savegame. Mods on the other hand tend to rely on a tiny part of the entire game, making it much more likely that it will just work with multiple versions of RimWorld.

I think you still have to check every version anyway. My very basic mod of changing cost of flagstone flooring from 4 blocks to either 2 or 3 did not work at all due to them changing case of some variables going from A17 to A18.

Take your main point though and agree it would be a good plan for the future. There have been many mods through more than a few updates that just need the target version changed and they work.

Nightinggale

Quote from: BlackSmokeDMax on November 13, 2017, 01:26:56 PMI think you still have to check every version anyway.
I think you miss what I'm saying here. I propose adding a list or similar where new versions of RimWorld can be added. This is an active action done by the mod creator AFTER said creator has checked that the mod will work. Right now there is a whole lot of double work in addition to testing on both versions.
ModCheck - boost your patch loading times and include patchmods in your main mod.

BlackSmokeDMax

Quote from: Nightinggale on November 13, 2017, 01:46:26 PM
Quote from: BlackSmokeDMax on November 13, 2017, 01:26:56 PMI think you still have to check every version anyway.
I think you miss what I'm saying here. I propose adding a list or similar where new versions of RimWorld can be added. This is an active action done by the mod creator AFTER said creator has checked that the mod will work. Right now there is a whole lot of double work in addition to testing on both versions.

Yeah, was agreeing with you in my second paragraph that it is a good idea. I don't think I phrased well though in that first paragraph. But you are correct, as long as you make sure it is working for multiple alphas it would be great to have one mod version that works with those multiple alphas without any messing around other than adding a new version to a list in the about.xml file.