
Preloading Tricks
A developer tool for early loader access, class transformation, and preloading hacks.
Обновлён 29 июня 2026 г. · опубликован 4 августа 2023 г.
Overview
Preloading Tricks is a developer-only mod that enables advanced operations during the very early stage of the mod loader. It provides early hooks, Java Instrumentation-based class transformation, and SPI-driven callbacks for loader extension.
Supported environments:
- Fabric – 1.20.1, 1.21+
- Forge (LexForge) – 1.20.1
- NeoForge – 1.20.6, 1.21+
You can test on more versions since it depends on the loader version instead of the Minecraft version.
Features
Early loader entrypoint via
PreloadingEntrypoint(SPI-based)- Register callbacks using
PreloadingTricksCallbacksevents:SETUP_LANGUAGE_ADAPTER– early language adapter setup stageCOLLECT_MOD_CANDIDATES– dynamically add mod candidate paths before discoverySETUP_MODS– modify mod list (add/remove/query viaModManagerAPI)
- Register callbacks using
Instrumentation-powered
ClassTransformCan transform already-loaded classes, including Java core and classloader classes. Configure viaMANIFEST.MFon all platforms (see below).Forge variant detection (Forge-like only)
- Access
ForgeVariantsto detect specific Forge/NeoForge versions at runtime
- Access
Usage (Gradle)
Add the Maven repository and dependency to your build:
Kotlin DSL:
repositories {
maven("https://raw.githubusercontent.com/settingdust/maven/main/repository/")
}
dependencies {
// Recommended: use the base artifact (no classifier).
// Gradle variant matching / cloche will resolve the correct platform artifact automatically.
implementation("settingdust.preloading_tricks:PreloadingTricks:VERSION")
// Optional: pin to a specific classifier when you want to avoid accidentally using APIs
// from other platforms.
// implementation("settingdust.preloading_tricks:PreloadingTricks:VERSION:fabric")
// implementation("settingdust.preloading_tricks:PreloadingTricks:VERSION:forge-service")
// implementation("settingdust.preloading_tricks:PreloadingTricks:VERSION:neoforge-modlauncher")
// implementation("settingdust.preloading_tricks:PreloadingTricks:VERSION:neoforge-fancy-mod-loader")
}
Replace VERSION with the latest release (e.g. 3.5.9).
If you are using cloche, the corresponding variant is selected automatically based on loader/minecraft attributes.
ClassTransform Configuration
For all platforms, add the following attribute to your MANIFEST.MF:
ClassTransformConfig: xxxx.classtransform.json
Multiple configs can be specified as comma-separated values:
ClassTransformConfig: first.classtransform.json,second.classtransform.json
Example config (xxxx.classtransform.json):
{
"package": "settingdust.preloading_tricks.neoforge.transformer",
"transformers": [
"mod_setup_hook.FMLLoaderTransformer"
]
}
Forge Variant Detection (Forge-like only)
Allows a mod to load only on a specific Forge-like loader variant. This enables bundling both LexForge and NeoForge JARs together via jar-in-jar in a single mod file.
Configuration:
Specify your mod's target variant in MANIFEST.MF:
ForgeVariant: LexForge
or
ForgeVariant: NeoForge
Mods with a ForgeVariant specified will only load when running on the matching loader variant, allowing safe coexistence of variant-specific implementations.
For developers who need to reach into the earliest moments of Minecraft’s loading process.
Версии
| Версия | Канал | Игра | Загрузчики | Дата | Скачать |
|---|---|---|---|---|---|
| 3.7.3 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 29 июня 2026 г. | .jar (1.7 МБ) |
| 3.7.2 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 26 мая 2026 г. | .jar (1.7 МБ) |
| 3.7.1 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 26 мая 2026 г. | .jar (1.7 МБ) |
| 3.7.0 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 24 мая 2026 г. | .jar (948 КБ) |
| 3.6.3 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 21 мая 2026 г. | .jar (946 КБ) |
| 3.6.2 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 21 мая 2026 г. | .jar (946 КБ) |
| 3.6.0 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 11 мая 2026 г. | .jar (1.7 МБ) |
| 3.5.15 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 9 мая 2026 г. | .jar (1.7 МБ) |
| 3.5.14 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 8 мая 2026 г. | .jar (1.8 МБ) |
| 3.5.13 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 1 мая 2026 г. | .jar (1.8 МБ) |
| 3.5.10 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 10 апреля 2026 г. | .jar (1.7 МБ) |
| 3.5.9 | Релиз | 1.21.11, 26.1, 26.1.1, 26.1.2 | fabric, forge, neoforge | 1 апреля 2026 г. | .jar (1.8 МБ) |
| 3.5.8 | Релиз | 1.21.8, 1.21.9, 1.21.10, 1.21.11 | fabric, forge, neoforge | 18 марта 2026 г. | .jar (1.8 МБ) |
| 3.5.7 | Релиз | 1.21.8, 1.21.9, 1.21.10, 1.21.11 | fabric, forge, neoforge | 18 марта 2026 г. | .jar (1.8 МБ) |
| 3.5.6 | Релиз | 1.21.8, 1.21.9, 1.21.10, 1.21.11 | fabric, forge, neoforge | 4 февраля 2026 г. | .jar (1.8 МБ) |
Показаны последние 15 из 88 версий. Все версии — на Modrinth.
Ченджлог
3.7.3Релиз26.1, 26.1.1, 26.1.2 · 29 июня 2026 г.
:bug: Bug Fixes
9285f5d- transformer error (commit by @SettingDust)
3.7.1Релиз26.1, 26.1.1, 26.1.2 · 26 мая 2026 г.
3.7.0Релиз26.1, 26.1.1, 26.1.2 · 24 мая 2026 г.
:sparkles: New Features
6bc4e54- add NeoForgeAdapter to use right java version on older NF (commit by @SettingDust)
3.6.3Релиз26.1, 26.1.1, 26.1.2 · 21 мая 2026 г.
:bug: Bug Fixes
155757b- wrong resolver transformer 2 (commit by @SettingDust)
3.6.2Релиз26.1, 26.1.1, 26.1.2 · 21 мая 2026 г.
:bug: Bug Fixes
dd19a79- wrong resolver transformer (commit by @SettingDust)
3.6.0Релиз26.1, 26.1.1, 26.1.2 · 11 мая 2026 г.
:bug: Bug Fixes
80ece07- restore module injector api files (commit by @SettingDust)
:recycle: Refactors
089c55e- restore build topology after copier update (commit by @SettingDust)03196c6- obsolete NeoForge callback artifacts (commit by @SettingDust)9f25b22- share list-backed mod manager logic (commit by @SettingDust)4c719ff- restructure sources into api core shared platform targets (commit by @SettingDust)058d9ef- extract shared target/version constants in build script (commit by @SettingDust)caaf03e- deduplicate neoforge dependency excludes and rename run regions (commit by @SettingDust)eec2d95- extract run target MOD_CLASSES env setup (commit by @SettingDust)5a8bc34- align forge modlauncher package naming (commit by @SettingDust)ae282c0- remove unused entrypoint and module injector leftovers (commit by @SettingDust)
:wrench: Chores
ee23367- copier update checkpoint B (commit by @SettingDust)5a333b4- plans: add copier update execution artifacts and reconciliation gates (commit by @SettingDust)83bd560- remove obsolete copier gate and NeoForge 21.10 setup (commit by @SettingDust)6757863- remove plans (commit by @SettingDust)0a66459- remove unused files (commit by @SettingDust)
3.5.15Релиз26.1, 26.1.1, 26.1.2 · 9 мая 2026 г.
:bug: Bug Fixes
af9ee68- build output duplicated classes (commit by @SettingDust)
3.5.14Релиз26.1, 26.1.1, 26.1.2 · 8 мая 2026 г.
:bug: Bug Fixes
60cc575- resolver transformer passing wrong arg (commit by @SettingDust)
Полная история изменений — на Modrinth.
Комментарии
Загружаем…