ReIndevFoxLoader
ModLoader for Minecraft ReIndev
Community
You can join the official ReIndev Discord here
A feature missing to make your mod? Just open an issue!
Documentation
For mixins usage check here: https://github.com/2xsaiko/mixin-cheatsheet
For spark usage check here: https://spark.lucko.me/docs/Command-Usage
For example mod check here: https://github.com/Fox2Code/FoxLoaderExampleMod
Project structure
betacraft
-> BetaCraft launch method to run fox loaderclient
-> client specific codecommon
-> main component of the mod loader that are shared both on client and on serverdev
-> Gradle pluginfinal
-> Installer a format in which the mod loader is shipped to userserver
-> server specific code
Boot process
- Load pre patches
- Load core-mods (Aka. Legacy mods) into class loader
- Load pre-patches (FoxLoader asm patches)
- Load mods into class loader
- Initialize mixins
- Allow game to be loaded
- Load mods
- Launch game
As you see the game is allowed to be loaded very late into the boot process, even after mixins.
This ensures that all patches introduced by mods are applied, but also prevent code loaded in MixinPlugins to load Minecraft classes, please keep that in mind when messing with mixins.
Lua mods
If you are too lazy to learn java you can just use put .lua
files in your mods
folder
-- modId: lua_example
-- modName: Lua Example Mod
-- version: 1.0.0
-- description: Just add /discord to the game.
--
print("Hello from lua")
gameRegistry.registerCommand(function(args, player)
player:displayChatMessage(chatColors.AQUA .. "https://discord.gg/38Vfes6NpR")
end, "discord", false) -- false is needed cause it default to "opOnly = true"
mod.onNetworkPlayerJoined = function(player)
player:displayChatMessage(chatColors.AQUA .. "Welcome back to server name!")
end