Back to mods
AE2AsyncModelHotFix project artwork

CurseForge · Minecraft mod

AE2AsyncModelHotFix

This mod applies a targeted client-side mixin to Applied Energistics 2’s CableBusBlock.getAppearance method to prevent intermittent client crashes during chunk rendering when using multi-threaded renderers such as Embeddium/Sodium

Choose a version Pick your version below, then grab the matching file.

Quick answer

Which AE2AsyncModelHotFix release should I use?

Updated 9 months ago
Latest stable file AE2AsyncModelHotFix-1.0.0.jar
Game version 1.20.1
Loader Forge

AE2AsyncModelHotFix-1.0.0.jar targets 1.20.1 with Forge. The project page does not say whether this file belongs on the client, dedicated server, or both. No extra mods listed for this file.

Where it goes

Is AE2AsyncModelHotFix required on the client, server, or both?

The project page does not say whether this file belongs on the client, dedicated server, or both.

Client Source doesn’t say
Dedicated server Source doesn’t say
Loader for this release Forge
Required install it here Optional supported, not mandatory Not supported do not install here Source doesn’t say do not assume

The source does not explicitly classify this release as client-only or server-only.

What else does AE2AsyncModelHotFix-1.0.0.jar need?

AE2AsyncModelHotFix-1.0.0.jar. Change the file and its required mods may change too.

No extra mods listed for this file

This file does not list any required mods. Do not add a library just because a different file uses it.

This file does not list any required or optional mods.

Before you install it

Add AE2AsyncModelHotFix without breaking your instance.

Built for AE2AsyncModelHotFix-1.0.0.jar. Pick another file and the loader, install side or required mods may change.

  1. 01

    Stick to this file

    Use AE2AsyncModelHotFix-1.0.0.jar. It targets 1.20.1 with Forge; another release may have different loader, side or dependency requirements.

  2. 02

    Bring the mods it needs

    This file does not list any required mods. Do not add a library just because a different file uses it.

  3. 03

    Put it on the correct side

    The project page does not say whether this file belongs on the client, dedicated server, or both.

  4. 04

    Pick the file you checked

    Use the “Get this file” button beside AE2AsyncModelHotFix-1.0.0.jar. It opens that exact file at the source.

About this project

What does AE2AsyncModelHotFix add?

LDLib / AE2 Chunk Meshing Crash Patch What this patch does

Simple Explanation: Stops the game from crashing with the following error with ae2+embeddium/ldlib:

Description: Encountered exception while building chunk meshes

Compatibility (must be running these versions or recompile is needed):

appliedenergistics2-forge-15.4.10.jar

ldlib-forge-1.20.1-1.0.40.b.jar

Description: Encountered exception while building chunk meshes

This mod applies a targeted client-side mixin to Applied Energistics 2’s CableBusBlock.getAppearance method to prevent intermittent client crashes during chunk rendering when using multi-threaded renderers such as Embeddium/Sodium.

Specifically, the patch:

Intercepts AE2’s call to ModelDataManager.getAt(BlockPos)

Guards the call against ConcurrentModificationException

Returns ModelData.EMPTY as a safe fallback when a concurrent modification is detected

Logs a one-time warning when the fix is first triggered, making it easy to verify that the patch is active without spamming logs

This prevents the game from crashing to desktop while chunk meshes are being built on worker threads.

Why this is needed

Modern rendering pipelines (Embeddium/Sodium) build chunk meshes on background threads. AE2’s CableBusBlock.getAppearance accesses ModelDataManager, which is not thread-safe and internally iterates over a mutable HashMap.

Under heavy load or prolonged play sessions, this leads to:

java.util.ConcurrentModificationException at ModelDataManager.refreshAt at ModelDataManager.getAt at CableBusBlock.getAppearance

Because this exception occurs on a render worker thread, it crashes the entire client.

Design goals

Minimal & non-invasive: Does not modify AE2 logic or data structures

Fail-safe rendering: Prefers visual degradation over client crashes

AE2-specific: Targets only CableBusBlock.getAppearance

Client-only: No server impact, no gameplay changes

What this patch does not do

It does not make ModelDataManager thread-safe

It does not change AE2 behavior on the main thread

It does not fix the underlying concurrency issue inside Forge’s ModelDataManager

This is a defensive compatibility patch intended to keep the client stable until an upstream fix is available.

When you’ll see it working

When triggered, the log will contain a one-time message like:

AE2AsyncModelFix ACTIVE: CableBusBlock.getAppearance on thread 'Chunk Render Task Executor #X'

If a concurrent modification is detected, the crash is prevented and rendering continues safely.

Project description from CurseForge.

Pick your setup

AE2AsyncModelHotFix by Minecraft version and loader

Choose the version and loader you play, then open the matching release.

1 available setups

Check the dependencies, then try the file in a copied instance before changing a world you care about.

Recent files

AE2AsyncModelHotFix versions and loaders

1 of 1 releases match

Looking for an older file? The official CurseForge project page is in Resources.