Enhance support down to 1.4 #82
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds support for MC 1.4.x and 1.5.x. This is achieved by expanding the coremod functionality of this mod.
To explain wtf is even going on in this PR, a quick history lesson of Forge and FML:
MC 1.4 and 1.5 used the Relauncher, a hack that hijacks the game launch early on, creates a new classloader and launches the game again inside the RelaunchClassLoader. Therefore, ASM transformers had to be done through
cpw.mods.fml.relauncher.IClassTransformer.With MC 1.6 the new launcher was released. This was called Launchwrapper and is also known as LegacyLauncher now. Since then, ASM transformers had to be registered to
net.minecraft.launchwrapper.IClassTransformer. This means that MC 1.6 has always been supported, we just never said so in our README.This PR lets the game deside what Class Transformer it needs by checking what transformer is available in the classpath.
I also added new patches to vulnerable mods:
classesToPatchI can update the documentation (README.md and mods.md) after this has been merged, but as mods.md contains links to the patches, I couldn't be asked to do this twice.