Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Posted

Forge version: 48.1.0
Minecraft version: 1.20.2

Downloads:

Intro:

Forge on 1.20.2 has seen significant improvements to various subsystems, including - but not limited to - a drastically simpler networking system with proxy support, faster mod loading and registries, a new test suite, self-analysing crash reports, mapped patches and more.

New:

  • New, rewritten networking
    • Better support for proxies such as Velocity and BungeeCord
    • Drastically simpler architecture and implementation
    • Packets are now records
  • Make SimpleChannel use a varInt for the discriminator allowing essentially unlimited packets.
  • Use official mappings for in-repo patches, will be converted to SRG during build.
  • Send known channels to the server when they send us theirs.
  • Optimise `ForgeRegistry#validateContent`. (#9715)
  • Optimise and clean-up BackgroundScanHandler code. Closes #9713
  • Optimise path filter in mod loading (#9710)
  • Make default Entity.getAddPacket automatically use Forge's enhanced spawn packet if necessary.
    • This spawn packet needs to be re-designed, it is effectively only there to hook into creating the new entity instance. This will be re-evaluated during the clean-up in 1.21+
  • Clean-up FMLLoader and Launch Handlers
  • New test suite
    • Test mods are now treated as their own jars, as well as having their mods.toml auto-generated. No more mods.toml conflicts!
  • Add pattern matching support to Data run mod list.
  • Rewrite our GameTest hooks to be more sane.
    • Add game test to GlobalLootModifierTest which validates the smelting modifiers.
  • Revive ConditionalRecipe and ConditionalAdvancement.
    • Also directly add conditional support to all vanilla recipe data generators.
  • Revive custom ingredient types.
  • 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 loading error message for errors inside mod constructors (#9751)
    • No longer shows a vague error if the error happens inside a constructor - Forge now tells you the actual error
  • Optimise registries by using fastutils collections to minimize boxing. (#9749)
  • Significantly faster builds with large clean-up and reorganization. Skip redundant decomp/recomp step on CI
    • Gradle 8.4
  • Datagen addOptionalTag/s methods that allow passing the TagKey itself instead of passing the location (#9807)
  • Add ClientPauseEvent (#9782)

Fixed:

  • Fix Hunger bar rendering incorrectly. Fixes #9725
  • Make CriteriaTriggers#register public again. Closes #9723
  • Fix double message encoding in `Channel#toVanillaPacket`. Fixes #9721 (#9722)
  • Fix OpenContainer message not resetting reader index of additional data.
  • Fix migration error causing nether and end portals to not function properly.
  • Fixed PlayerDestroyItemEvent not triggering for Fishing Rods (#9729)
  • Fix missed patch causing new onInventoryTick method to not be called.
  • Fix ignitedByLava making blocks permanently flammable (#9735) Fixes #9730
  • Fix Slot Index for Inventory Ticking Items (#9736)
  • Fix ignoreList for client and server
  • Fix ConditionalCodec having an inverted test. Closes #9742
  • Fix advancement screen being too dark. Fixes #9727
  • Make horses and llama's fire LivingFallEvent. Fixes #9743
  • Fix loot tables not having their ids set.
  • Fix Melon/Pumpkin stems having wrong plat type causing them to remain after trampling farmland. Fixes #9495
  • Fix potential threading issue when registering CriteriaTriggers. Closes #9745
  • Fix @GameTestGenerator not functioning correctly. Closes #9748
  • Fix lowcode implementation version, now that it's actually labeling the correct package.
  • Improve mod description formatting in mods screen (#9768)
    • No longer fussy about indentation in mods.toml files
    • Fixes the [CR] text being shown for some mods
  • Updated to use newer libraries that reduce the amount of command line arguments needed to run the game.
    • Fix issues in the SecureModule's classloader that caused resources to not be seen when they are on parent module layers.
  • Make Ingredient check for invalidation on getItems(), invalidate ingredients on tags update (#9688)
  • Fix texture UV values for obj models. Closes #9737 (#9767)
  • Fix tag loading being unordered. Closes #9774
  • Add more sanitization to the ChannelListManager to further improve support for third-party modded servers and proxies. Closes #9789 #9772
  • Move Chunk Watch/Unwatch events to fire after sync packets have been sent to the client (#9790)
    • This makes sure that modders who send extra chunk data will have clients who know about the chunk.
  • Fix rare crash with early display window, fixes #9673 (#9798)
  • Don't turn off VSync when rendering from Minecraft context (#9800)
  • Fix KeyModifiers not being properly taken into account. Closes #9806
  • Rework KeyModifiers system to properly allow keybinds to be triggered when multiple modifiers are pressed.
    • Fix setting keybinds whel using keyboard inputs to select the menu. Closes #9793
  • Fix LoadingErrorScreen inner headers are not centered. Closes #9687
  • Fix TagLoader error not printing tag name correctly. Closes #9693

Removed/deprecated:

  • Removed FakePlayer system, it's broken and needs a major rewrite.
    • This was removed as it frequently had edge-cases that gave a false sense of security and was a bit of a "wack-a-mole" game to find and fix issues with each MC version
  • Deprecate EntityRenderersEvent.AddLayers functions that hard case to LivingEntityRenderers as the backing maps do not guarantee that type. Closes #9683

 

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.