Explaining the Version system used

Alright, Minecraft has been updated yet again, and eventually my mods will soon follow, so I’d like to just explain again how my version system works. This system has been implemented from Minecraft 1.6.X onwards (and is already in effect).

My mods normally have a 3-digit marker, A.B.C, for example, 2.0.5, where 2 represents A, 0 represents B, 5 represents C.

A is incremented every major Minecraft update that breaks obfuscation.

For example, Minecraft 1.6.X has a value of 2, while Minecraft 1.7.2 has a value of 3. At this time I’m unsure if Minecraft 1.7.9 will require this number to increment yet another time. That means, my mods that start with 2.X.X will be for Minecraft 1.6, while my mods that start with 3.X.X will be for Minecraft 1.7.2 and so on. The only exception to this rule is Morph, which has an A value of 0.


B is incremented every major mod update where the save files will not be compatible.

For example, in version 2.0.0, that’s the very basics of the mod with 2 blocks, in version 2.1.0, I add an item or I remove a block. As you can see, there’s a change in how the mod’s content will be saved, so because I suspect save files might break (occasionally including config files), or might not be compatible (in this case it’s obvious), both backwards or forwards, I will increment the B value for the mod. When the A value of the mod version is incremented, this value is reset to 0 (in the event of a Minecraft update). The only exception to this rule is Morph, which B value will never reset, but instead increment every Minecraft/content/save breaking update.


C is incremented every minor mod update where saves will not be affected.

This value increments every time there is a simple tweak or a bug fix. These kind of changes generally will not break save files. If it does, I will change the B value instead. When the A or B value of the mod version is incremented, this value is reset to 0. Users with varying C value will normally be able to connect to servers while users with varying B value will not. EG: 2.0.1 and 2.0.4 can connect to a 2.0.2 server but not to a 2.1.0 server.


Hope this clears things up for some people.


Comments are closed.