Preloading Tricks
A developer tool for early loader access, class transformation, and preloading hacks.
介绍
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)- 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
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.
常见问题
Preloading Tricks 支持哪些 Minecraft 版本?
Preloading Tricks 支持 Minecraft Java 版 1.16.5–26.1.2,共 31 个版本,可用的加载器:Fabric / Forge / NeoForge / Quilt。下载时注意选择和你游戏版本一致的文件。
Preloading Tricks 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Forge / NeoForge / Quilt,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:客户端 / 服务端。
settingdust 的其他作品
查看全部 →Kiwi 🥝
Minecraft 模组开发库
Snow! Real Magic! ⛄
不是魔法类模组。 · 雪的重力与堆积 · 被雪覆盖的方块 · 调整雪的行为
Mod Compat Fixes
修复整合包中几个模组的问题。
lazyyyyy
主要优化大型整合包的游戏启动时间。
评论
登录后评论和评分