Jump to content

Small tip for maintaining multiple mod versions


felinoid
 Share

Recommended Posts

Suppose you have a mod for 1.15.x, which you're about to update to 1.16.x (or any other two versions, really), and after you update you intend to keep adding new features to 1.16.x while back porting them to 1.15.x. And presumably you're using git branches for the different versions, or a similar version control system. Then just after you update the mod to 1.16 but before you add anything new, merge the 1.16 branch back into the 1.15 branch and overwrite all the files with the previous 1.15 versions. That way in the future when you merge new features from 1.16, git will have at least some respect for the version differences instead of treating it as a fast forward. You'll still need to modify any new code, but at least you shouldn't have to undo all the 1.16 compatibility changes from existing code too. Maybe this should have been obvious, but if I missed it for so long others might have as well.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. 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.   Restore formatting

  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.

 Share



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Hello, is there some way to completely disable some dimensions for them to not load while server startup? Some event i can cancel or some setting?
    • [01:12:23] [01:12:23] [main/INFO]: ModLauncher running: args [--username, ytjasonsas, --version, release minecraft modde, --gameDir, C:\Users\jason\AppData\Roaming\.minecraft\versions\release minecraft modde, --assetsDir, C:\Users\jason\AppData\Roaming\.minecraft\assets, --assetIndex, 1.16, --uuid, 281b40fd-958f-11eb-90a8-d45d64bce613, --accessToken, ????????, --userType, mojang, --versionType, release, --width, 925, --height, 530, --launchTarget, fmlclient, --fml.forgeVersion, 36.2.39, --fml.mcVersion, 1.16.5, --fml.forgeGroup, net.minecraftforge, --fml.mcpVersion, 20210115.111550] [main/INFO]: ModLauncher 8.1.3+8.1.3+main-8.1.x.c94d18ec starting: java version 1.8.0_51 by Oracle Corporation [01:12:23] [main/WARN]: LEGACY JDK DETECTED, SECURED JAR HANDLING DISABLED [01:12:23] [main/INFO]: Added Lets Encrypt root certificates as additional trust [01:12:23] [main/INFO]: SpongePowered MIXIN Subsystem Version=0.8.4 Source=file:/C:/Users/jason/AppData/Roaming/.minecraft/libraries/org/spongepowered/mixin/0.8.4/mixin-0.8.4.jar Service=ModLauncher Env=CLIENT [01:12:25] [main/INFO]: Launching target 'fmlclient' with arguments [--version, release minecraft modde, --gameDir, C:\Users\jason\AppData\Roaming\.minecraft\versions\release minecraft modde, --assetsDir, C:\Users\jason\AppData\Roaming\.minecraft\assets, --uuid, 281b40fd-958f-11eb-90a8-d45d64bce613, --username, ytjasonsas, --assetIndex, 1.16, --accessToken, ????????, --userType, mojang, --versionType, release, --width, 925, --height, 530] [01:12:30] [main/INFO]: Environment: authHost='https://authserver.mojang.com', accountsHost='https://api.mojang.com', sessionHost='https://sessionserver.mojang.com', servicesHost='https://api.minecraftservices.com', name='PROD' [01:12:30] [main/INFO]: Setting user: ytjasonsas [01:12:31] [main/INFO]: Backend library: LWJGL version 3.2.2 build 10 [01:12:32] [main/FATAL]: Error during pre-loading phase net.minecraftforge.fml.ModLoadingException: fml.modloading.dupedmod     at net.minecraftforge.fml.ModLoadingException.lambda$fromEarlyException$0(ModLoadingException.java:50) ~[?:?]     at net.minecraftforge.fml.ModLoadingException$$Lambda$2937/1237743088.apply(Unknown Source) ~[?:?]     at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[?:1.8.0_51]     at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374) ~[?:1.8.0_51]     at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512) ~[?:1.8.0_51]     at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502) ~[?:1.8.0_51]     at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) ~[?:1.8.0_51]     at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) ~[?:1.8.0_51]     at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:1.8.0_51]     at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418) ~[?:1.8.0_51]     at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:270) ~[?:1.8.0_51]     at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374) ~[?:1.8.0_51]     at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512) ~[?:1.8.0_51]     at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502) ~[?:1.8.0_51]     at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) ~[?:1.8.0_51]     at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:1.8.0_51]     at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) ~[?:1.8.0_51]     at net.minecraftforge.fml.ModLoader.<init>(ModLoader.java:106) ~[?:?]     at net.minecraftforge.fml.ModLoader.get(ModLoader.java:140) [?:?]     at net.minecraftforge.fml.client.ClientModLoader.lambda$begin$1(ClientModLoader.java:89) [?:?]     at net.minecraftforge.fml.client.ClientModLoader$$Lambda$2934/873769155.run(Unknown Source) [?:?]     at net.minecraftforge.fml.client.ClientModLoader.lambda$createRunnableWithCatch$4(ClientModLoader.java:109) [?:?]     at net.minecraftforge.fml.client.ClientModLoader$$Lambda$2935/919376773.run(Unknown Source) [?:?]     at net.minecraftforge.fml.client.ClientModLoader.begin(ClientModLoader.java:89) [?:?]     at net.minecraft.client.Minecraft.<init>(Minecraft.java:437) [?:?]     at net.minecraft.client.main.Main.main(Main.java:149) [?:?]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51]     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51]     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51]     at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51]     at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:37) [forge-1.16.5-36.2.39.jar:36.2]     at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$416/1445758842.call(Unknown Source) [forge-1.16.5-36.2.39.jar:36.2]     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.1.3.jar:?]     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.1.3.jar:?]     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.1.3.jar:?]     at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.1.3.jar:?]     at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.1.3.jar:?] [01:12:32] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.sound.SoundLoadEvent to a broken mod state [01:12:32] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.ColorHandlerEvent$Block to a broken mod state [01:12:32] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.ColorHandlerEvent$Item to a broken mod state [01:12:34] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.ParticleFactoryRegisterEvent to a broken mod state [01:12:34] [main/INFO]: Narrator library for x64 successfully loaded [01:12:34] [main/INFO]: Reloading ResourceManager: Default [01:12:34] [Worker-Main-8/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [01:12:34] [Worker-Main-9/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [01:12:34] [Worker-Main-12/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.ModelRegistryEvent to a broken mod state [01:12:34] [Worker-Main-10/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [01:12:37] [Worker-Main-12/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [01:12:38] [Worker-Main-12/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [01:12:38] [Worker-Main-12/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [01:12:38] [Worker-Main-12/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [01:12:38] [Worker-Main-12/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [01:12:38] [Worker-Main-12/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [01:12:38] [Worker-Main-12/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [01:12:38] [main/INFO]: OpenAL initialized. [01:12:38] [main/INFO]: Sound engine started [01:12:39] [main/INFO]: Created: 1024x512x4 minecraft:textures/atlas/blocks.png-atlas [01:12:39] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [01:12:39] [main/INFO]: Created: 256x128x4 minecraft:textures/atlas/signs.png-atlas [01:12:39] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [01:12:39] [main/INFO]: Created: 512x512x4 minecraft:textures/atlas/banner_patterns.png-atlas [01:12:39] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [01:12:39] [main/INFO]: Created: 512x512x4 minecraft:textures/atlas/shield_patterns.png-atlas [01:12:39] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [01:12:39] [main/INFO]: Created: 256x256x4 minecraft:textures/atlas/chest.png-atlas [01:12:39] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [01:12:39] [main/INFO]: Created: 512x256x4 minecraft:textures/atlas/beds.png-atlas [01:12:39] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [01:12:39] [main/INFO]: Created: 512x256x4 minecraft:textures/atlas/shulker_boxes.png-atlas [01:12:39] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [01:12:40] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.ModelBakeEvent to a broken mod state [01:12:40] [main/INFO]: Created: 256x256x0 minecraft:textures/atlas/particles.png-atlas [01:12:40] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [01:12:40] [main/INFO]: Created: 256x256x0 minecraft:textures/atlas/paintings.png-atlas [01:12:40] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [01:12:40] [main/INFO]: Created: 128x128x0 minecraft:textures/atlas/mob_effects.png-atlas [01:12:40] [main/ERROR]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [01:12:40] [main/INFO]: [net.minecraft.crash.CrashReport:func_85057_a:196]: Negative index in crash report handler (23/26) [01:12:40] [main/FATAL]: Crash report saved to C:\Users\jason\AppData\Roaming\.minecraft\versions\release minecraft modde\crash-reports\crash-2022-12-09_01.12.40-fml.txt
    • Change your max fps to be larger than 0, either in the options menu or the options.txt
    • Solved, didn't see the inventoryTick method before writing this.
    • Problem solved . The mods need to be updated to the 1.19.3 version and rightly . The mods citadel, better animal plus , journey map all works fine . Only architectury doesn’t work even after the update . I sent them a message to make them aware of the situation . 
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.