-
Posts
760 -
Joined
-
Last visited
-
Days Won
26
Posts posted by Paint_Ninja
-
-
Please share a link to your crash report on https://paste.ee, as explained in the FAQ
-
Forge version: 52.0.0
Minecraft version: 1.21.1Downloads:
Note that as this is the start of a new version, it is recommended that you check the downloads page and use the latest version to receive any bug fixes, as the first ever build of Forge for any MC version is usually buggy.
Intro:
The first build for Forge 1.21.1 has been released! It is based on 51.0.33 for 1.21.0.
We expect most existing 1.21.0 mods to work on 1.21.1 without needing any changes, as the only notable differences from Vanilla 1.21.0 -> 1.21.1 are a couple of new languages and a bugfix for an exploit that could be used to crash servers... as such, we strongly encourage all 1.21.0 players and mod developers to move to 1.21.1. From a mod dev perspective, BlockEntities now validate their block during construction - as long as that's fine you should be good to go.
1.21.0 has been moved to our minimal support tier, as explained in our tiered support policy - use 1.21.1 instead.
If you find any issues, please let us know on the Discord.
Sidenote:
I'm sorry for not making these release posts for Forge betas of the past few MC versions. While I forgot to make some posts, we still released Forge builds for newer MC. When in doubt, check the sidebar on the files site. Same-day ports of Forge to new MC versions are common.
-
First, the solution: use the mdk and don't touch anything in it before checking that it works. You seemed to have changed something that broke it. You're also targeting 1.20.0 - *don't use this!* - it is a known buggy and abandoned version that people dropped in favour of 1.20.1 which came out shortly after.
Next, a couple of things about your post:
1) you tagged it with "broken mod", which is commonly used to indicate that your issue has been solved and that the problem was that one of the mod's you installed was broken
2) please use code embeds. It's hard to interpret an arrow pointing to the issue in your error when the arrow doesn't line up properly
-
Please share a link to your crash report on https://paste.ee, as explained in the FAQ. Dumping it directly into the thread often triggers the anti-spam and makes it hard to read due to word wrapping
-
This is the Forge forums. We do not support NeoForge here - use Forge instead if you want help.
-
They were intended to be used on tutorial posts so that people could easily find tutorials based on their skill level, but instead the tags were abused for unrelated things that made the original intent useless... for example, people often posted crash reports with the "beginner" tag, so instead of finding tutorials for beginners, you got crash reports showing up in searches.
-
You can't mix mods for different MC versions.
-
Spark definitely has downloads available for Forge 1.20.1 on the CurseForge website.
47.0.35 is a very old beta version of Forge. You should be running 47.3.0
-
Please share your crash report or log, as explained in the FAQ
-
Forge version: 43.4.0
Minecraft version: 1.19.2Downloads:
Intro:
This fourth recommended build for 1.19.2 offers improved performance, a couple of bugfixes and a boatload of backports from newer MC versions.
As a reminder, the release policy for recommended builds has changed - we now aim to release new recommended builds for fully supported MC versions more frequently - as long as there's a reasonable amount of changes since last recommended build. This week, we've released new RBs for 5 different MC versions, proving a renewed, serious commitment for long-term support.
New:
-
Improve mod loading error message for errors inside mod constructors, backport of #9751 (#9709)
- No longer shows a vague error if the error happens inside a constructor - Forge now tells you the actual error
- Optimise path filter in mod loading, backport of #9710 (#9712)
-
Add a CrashReportAnalyser that tries to identify the mod that crashed the game
- This feature scans your crash report as it is being generated and lists suspected mods that could be the cause of the crash, accounting for coremodding as well.
- This makes it easier to find the culprit as it is often listed clearly in the crash report itself (e.g. "Suspected mods: buggymod")
- Improve mod description formatting in mods screen (#9771)
- Update to FG6 and Gradle 8, backport 1.20.1's MDK (#9754)
- Optimise ForgeConfigSpec and make Range public, backport of #9810 (#9827)
-
Make common DisplayTest registration tasks easier, backport of #9822 (#9838)
-
Before:
ModLoadingContext.get().registerExtensionPoint(IExtensionPoint.DisplayTest.class, () -> new IExtensionPoint.DisplayTest(() -> "ANY", (remote, isServer) -> true));
-
After:
ModLoadingContext.get().registerDisplayTest(IExtensionPoint.DisplayTest.IGNORE_ALL_VERSION);
- The old method still works for backwards-compatibility. The new method has also been backported to 1.20.1, 1.19.4 and 1.18.2.
-
Before:
- Add support for running with Java 22 and 23
-
Make common config screen registration tasks easier, backport of #9884 (#9914)
-
Before:
ModLoadingContext.get().registerExtensionPoint(ConfigScreenHandler.ConfigScreenFactory.class, () -> new ConfigScreenHandler.ConfigScreenFactory((mc, modsScreen) -> new MyConfigScreen(modsScreen));
-
After:
MinecraftForge.registerConfigScreen(modsScreen -> new MyConfigScreen(modsScreen));
- The old method still works for backwards-compatibility. The new method has also been backported to 1.20.1, 1.19.4 and 1.18.2.
-
Before:
- Optimise capabilities, backport of #9886 (#9918)
Fixed:
-
Improve mod loading error message for errors inside mod constructors, backport of #9751 (#9709)
-
Please share the full log or join our Discord server for help
-
Please share your Spark report. Instructions for troubleshooting lag and how to use Spark are in the FAQ
-
Try giving the game more ram in the launcher settings
-
The "essential" mod is broken. Try updating Forge or removing the mod
-
Forge version: 45.3.0
Minecraft version: 1.19.4Downloads:
Intro:
This third recommended build for MC 1.19.4 offers improved performance, bugfixes, new features and various backports from newer versions such as 1.20.1, 1.20.2, 1.20.4 and 1.20.6.
As a reminder, the release policy for recommended builds has changed - we now aim to release new recommended builds for fully supported MC versions more frequently - as long as there's a reasonable amount of changes since last recommended build.
New:
-
Improve mod loading error message for errors inside mod constructors, backport of #9751 (#9708)
- No longer shows a vague error if the error happens inside a constructor - Forge now tells you the actual error
- Optimise path filter in mod loading (#9711)
- Update to FG6 and Gradle 8, backport 1.20.1's MDK (#9753)
- Improve mod description formatting in mods screen (#9770)
-
Add a CrashReportAnalyser that tries to identify the mod that crashed the game
- This feature scans your crash report as it is being generated and lists suspected mods that could be the cause of the crash, accounting for coremodding as well.
- This makes it easier to find the culprit as it is often listed clearly in the crash report itself (e.g. "Suspected mods: buggymod")
- Optimise ForgeConfigSpec and make Range public, backport of #9810 (#9826)
-
Make common DisplayTest registration tasks easier, backport of #9822 (#9837)
-
Before:
ModLoadingContext.get().registerExtensionPoint(IExtensionPoint.DisplayTest.class, () -> new IExtensionPoint.DisplayTest(() -> "ANY", (remote, isServer) -> true));
-
After:
ModLoadingContext.get().registerDisplayTest(IExtensionPoint.DisplayTest.IGNORE_ALL_VERSION);
- The old method still works for backwards-compatibility. The new method has also been backported to 1.20.1, 1.19.2 and 1.18.2.
-
Before:
- Add support for running with Java 22 and 23
-
Make common config screen registration tasks easier, backport of #9884 (#9913)
-
Before:
ModLoadingContext.get().registerExtensionPoint(ConfigScreenHandler.ConfigScreenFactory.class, () -> new ConfigScreenHandler.ConfigScreenFactory((mc, modsScreen) -> new MyConfigScreen(modsScreen));
-
After:
MinecraftForge.registerConfigScreen(modsScreen -> new MyConfigScreen(modsScreen));
- The old method still works for backwards-compatibility. The new method has also been backported to 1.20.1, 1.19.2 and 1.18.2.
-
Before:
- Optimise capabilities, backport of #9886 (#9917)
Fixed:
- Fix Melon/Pumpkin stems having wrong plant type causing them to remain after trampling farmland.
- Fix NPE when acceptableValues in defineInList() does not allow nulls, backport of #9903 (#9908)
-
Improve mod loading error message for errors inside mod constructors, backport of #9751 (#9708)
-
Please share a link to your crash report on https://paste.ee, as explained in the FAQ
-
Forge version: 50.1.0
Minecraft version: 1.20.6Downloads:
Intro:
Continuing the strong cadence of solid improvements on 1.20.x versions, we focused especially on the developer experience for 1.20.6. We've delivered a new decompiler, unified official MojMap mappings everywhere, cleaned up more patches and worked with devs to make our networking APIs better support multiplatform mods and Vanilla's latest features.
The new decompiler has improved formatting and much better support for newer Java features. This took weeks worth of effort from multiple team members to redo all the patches to support this (albeit, we still did this much faster than the competition), but we believe it was worth it in the end. Additionally, by having the same official MojMap mappings everywhere, mod devs have less required steps to build their mods and troubleshooting crash reports in production is easier.
Setting 1.20.6 aside for a moment, we haven't forgotten about older versions! We continue to actively backport new features and make fixes for older versions where possible - meaning you can adopt some breaking changes incrementally instead of being forced to deal with all of them lumped in with an MC port, and you don't need to chase the latest MC or go out of your way to manually backport things yourself to take advantage of some of the things we're doing on newer versions. More than ever, Forge remains an excellent choice for devs who want to focus on their mods.
New:
-
New decompiler
- Supports newer Java features and has improved formatting
-
Runtime official mappings
- Better troubleshooting experience as logs and crash reports now have human-readable names in production
- No need to reobf your mod as a developer. Mixin refmaps are also unnecessary.
-
New AccessTransformers
- Much simpler implementation, no longer relies on ANTLR
- Significant performance improvements
- Add ModelLayers patch back (#9962)
-
Update SimpleChannel to make StreamCodecs easier (#9959)
- Rework networking so that RegistryFriendlyByteBuf is useable for modders
- Simple support for StreamCodec in SimpleChannel
- Codecify all Forge packets
- Make simpler builder pattern for SimpleChannel. Will eventually deprecate the old MessageBuilder as it's verbose and poorly written.
- Implement entity-aware armor model and texture hooks. Closes #9960
-
Remove ICustomPacket and add PayloadChannel. (#9972)
- New PayloadChannel that uses the vanilla payload Type for packet distinction
- Implement the minecraft:register/unregister channels using the new PayloadChannel
- New generic channel builder function allowing people to implement channels however they want.
- Add GatherComponentsEvent (#9944)
Fixed:
- Fix custom payloads not being handled on the server in the game state. Closes #9948
- Fix villagers not opening trade GUIs. Closes #9946
- Fix MDK by bumping FG and disabling reobf tasks
- Fix LAN server IPs being duplicated
- Fix connecting to vanilla servers due to misapplied patch.
- Fix canApplyAtEnchantingTable null pointer. Closes #9956
- Bump SecureModules for package info and multi-release jar fixes.
- Fix RenderTarget stencil patch location. Fixes #9965
- Fix shields not working correctly. Fixes #9966
- Filter paths discovered by ServiceProvider in ClasspathLocator. Closes #9899
- Fix Melons/Pumpkins not growing correctly.
- Fix potion brewing having arguments reversed. Closes #9970
- Fix canceling MobSpawnEvent.FinalizeSpawn causing a NPE. Closes #9971
- Ignore jar files in the mods folder that are not Forge mods. Closes #9968
- Make RegistryObject.getHolder lazy, should help cases where vanilla registries use holders from other vanilla registries. Closes #9961
- Fix finalizeSpawn's return value not being used correctly. Closes #9964
- Fix powered rails not propagating correctly.
- Fix screen layering and re-add the test. (#9978)
- Fix RenderHandEvent firing with incorrect hand and item for offhand items. (#9977)
- Fix NPE in HurtByTargetGoal when mods set targets to null. Closes #7853
- Fix crash when reloading a world that uses custom placed features. Closes #9979
- Add File.exists check to ConfigFileTypeHandler. Closes #9976
- Make OpenContainer and SpawnEntity packets process on main game thread.
- Move Creative Inventory page count to fix issue with partially transparent tooltips. Closes #9983
- Fix CustomizeGuiOverlayEvent.DebugText and CustomizeGuiOverlayEvent.Chat not being fired. (#9982)
Removed:
-
Remove deprecated compressLanIPv6Addresses config option (#9949)
- LAN IPv6 addresses are always compressed these days, so this config option is redundant
- Remove zombie chance config options (#9950)
- 1
-
New decompiler
-
Forge version: 49.1.0
Minecraft version: 1.20.4Downloads:
Intro:
We're pleased to announce the first recommended build for 1.20.4. Following the spirit of significant improvements from 1.20.2, we're continuing to iterate on improving performance, code quality, features and ease of use. 1.20.4 brings various enhancements, focused on improving user experience.
Some highlights:
We've brought back the option of executable server jar - just like the olden days. The run scripts remain an option for those who prefer it, and we've added Java version checks and a readme to make it easier to setup your own server. We also collaborated with various third-party server panels to ensure compatibility with our new setup.
Client-side-only mods crashing dedicated servers and mod devs needing to employ special care to avoid such has been solved by the new clientSideOnly switch in the mods.toml file. This feature results in better performance and makes it easier for mod devs to write client-side mods.
The config system has gotten some love, too. There's been a big clean-up to its internals, various optimisations and support for new data types - ByteValue, ShortValue and FloatValue. On the topic of clean-up and optimisation, the DisplayTest and ConfigScreen extension points now have simpler APIs and many parts of the mod loading process have seen optimisations along with improved error messages for non-Forge mods.
New:
-
Revive the option of executable jars for the dedicated server
- You're no longer forced to use the supplied run scripts!
- All existing JPMS features are preserved - you can have your cake and eat it too
- Add impl. of IModFileInfo#showAsDataPack (#9802)
-
Add clientSideOnly feature to mods.toml (#9804)
- Setting this to true in the root of your mods.toml will tell Forge to skip loading your mod on dedicated servers and set an appropriate DisplayTest for you
- This is recommended for all client-side-only mods, as it is a trivial and performance way to prevent your mod from crashing servers or causing it to incorrectly show up as incompatible on the multiplayer server list
- Optimise ForgeConfigSpec and make Range public (#9810)
- Support pack overlay system. Closes #9818
- Clean-up Explosion patch but keep bin compatibility by using asm hacks. Closes #9817
-
Make common DisplayTest registration tasks easier (#9822)
-
Before:
ModLoadingContext.get().registerExtensionPoint(IExtensionPoint.DisplayTest.class, () -> new IExtensionPoint.DisplayTest(() -> "ANY", (remote, isServer) -> true));
-
After:
ModLoadingContext.get().registerDisplayTest(IExtensionPoint.DisplayTest.IGNORE_ALL_VERSION);
- The old method still works for backwards-compatibility. The new method has also been backported to 1.20.1, 1.19.4, 1.19.2 and 1.18.2.
-
Before:
- Improve server panel compatibility (#9836)
- Criterion test mod + unit test (#9744)
- Show a more helpful error message when attempting to start the server with old Java
- Improve the UX of server setup and usage, add a readme with instructions, tips and advice
- Readded DatapackBuiltinEntriesProvider (#9848)
-
Add CPU usage config option to early window, hide it by default (#9866)
- New cleaner look, slightly improved client mod loading performance
-
Make common config screen registration tasks easier (#9884)
-
Before:
ModLoadingContext.get().registerExtensionPoint(ConfigScreenHandler.ConfigScreenFactory.class, () -> new ConfigScreenHandler.ConfigScreenFactory((mc, modsScreen) -> new MyConfigScreen(modsScreen));
-
After:
MinecraftForge.registerConfigScreen(modsScreen -> new MyConfigScreen(modsScreen));
- The old method still works for backwards-compatibility. The new method has also been backported to 1.20.1, 1.19.4, 1.19.2 and 1.18.2.
-
Before:
- Optimize capabilities (#9886)
- Add Leaves method to ModelProvider.java (#9887)
- Add ByteValue, ShortValue and FloatValue to ForgeConfigSpec, cleanup code (#9902)
- Add helper method to `OnDatapackSyncEvent` (#9901)
-
Prevent registering null tiers (#9895)
- Makes it easier to identify broken mods, as it moves the crash to when the broken mod in question registers the tier, rather than when any mod tries getting the tier.
- Improve mod loading errors (#9870)
- Add ClientPauseChangeEvent (#9905)
- Add config option for optionally disabling non-Forge mods.toml detection (#9943)
Fixed:
- Fix java version check in bootstrap shim
- Fix Server bundle
- Bump SecureModules to fix conflict between AccessTransformers and Mixins, Closes #9820
-
Only add sorted/deduplicated mods to the classpath.
- Fixes some mods causing the Forge error displays to break. Closes #9833
- Bump JarJar and SecureModule to fix issue with jars containing [] in their name. Closes #9842
- Fix launcher version name missing - between `forge` and the version. Closes #9843
- Fixed Spelling error in credits.txt (#9694)
- Fix background music looping when it shouldn't
- Fix cases where LivingConversionEvents were not fired for vanilla conversions. Closes #9850
- Add null check to DimensionDataStorage. Fixes #9859
- Fix DNS SRV record lookup not working by hacking the module system. Closes #9846
- Fix slightly offset mods screen link positioning (#9860)
- Fix DatapackBuiltinEntriesProvider issues with forge registries, Fixes #9874
- Fix modlist size
- Fix level data not loading from existing worlds. Whole system needs a re-write.
- Fix NPE when acceptableValues in defineInList() does not allow nulls, fixes #9300 (#9903)
- Early display fixes/workarounds for buggy drivers (#9921)
- Fix edge-case regression with single-jar multiloader mods (#9931)
- Fix early window crash when parsing some forms of options.txt (#9933)
- Make non-Forge mods.toml detection more robust (#9935)
- Filter paths discovered by ServiceProvider in ClasspathLocator. Closes #9899
Removed:
- LibraryFinder
-
Revive the option of executable jars for the dedicated server
-
Alternatively, update to the latest Forge for 1.20.1, which supports Java 22
-
Turn off any ad blockers or similar - they often break the adfocus site
-
It is difficult to modify compiled code unless you already have a lot of experience with it. You should look for the source code, such as on a github repo, as this will be easier to read and understand (it may have code comments, won't be obfuscated names, and won't have decompilation artifacts)
-
It sounds like a build setup issue. Are you reobfuscating the built jar like the MDK does? Have you made sure the access transformer file is named exactly as the MDK has it, in the exact place it expects (case sensitive as well)?
-
Please share a link to your crash report on https://paste.ee, as explained in the FAQ
-
Please share a link to your crash report on https://paste.ee, as explained in the FAQ
Annoying Lag Spikes when playing after a few minutes
in Support & Bug Reports
Posted
You allocated too much RAM to the game, so the OS, drivers and other things are fighting for resources.
Close as many things as you can when playing, allocate 3GB or 3.5GB max, do not set a min. In task manager go to the startup tab and disable things you don’t need to start and have always running when you turn on your PC, but ignore the AMD ones in the list (they’re needed).
Use Java 21 instead of Java 17. Consider removing Alex’s Mobs. Update your Radeon drivers (see the FAQ).
Consider buying more physical RAM for your PC