XU2-Patcher is a mod that allows for easy modification of the Extra Utilities 2 code at runtime.
Special thanks to @Ridanisaurus for the great logo, @Su5eD for the IC2-Patcher project, and @Darkhax for NoTemaStahp mod, and to people that created PRs to the Extra Utilities 2 repository!
- Fixes XU2 Screens not being able to download imgur images anymore.
- Fixes a race condition, causing XU2 Molten Fluids sprites to not render properly. (#1)
- Fixes items getting voided by drag-clicking items into the machine's input slot. (#3)
- Allows for re-enabling Slime Spawning in the flat worlds (Part of NoTemaStahp integration)
- Allows for disabling op anvil effects for few XU2 tools (Part of NoTemaStahp integration)
- Allows for disabling Tema "little small advantage" in code 😋 (Part of NoTemaStahp integration)
- Fixes a crash when a villager profession was disabled, and you tried to open the book entry of that profession.
(Fixes #42 / Impl #390) - Fixes a crash when radar wasn't able to check inventory of some blocks (it will log it at debug level now if something happens).
(Fixes #293 / Impl #381) - Fixes Villager Profession names being corrupted.
(Fixes #325 #363 / Impl #366) - Fixes a crash with a builder incorrectly placing a machine, causing a crash.
(Impl #302)
As ExtraUtilities 2 is ARR, this repository requires initial setup to generate patches.
- Before initial import, set Project's Java to
Java 8 version 151
. This is required for patch generation to work properly. - Execute task
xu2 patcher/Setup XU2 Source
to download, patch and setup original XU2 sources. - (Optional) Add Gradle Wrapper to the
Patched
source files, current minimum version for IntelliJ Idea is 4.5.
Use Gradle task xu2 patcher ~ patched/Run Client ~ 1.12
or 1.12:runClient
(XU2 Task) to launch the client.
Current setup requires attaching a debugger for the client to launch.
Note: 1.12:runClient
task can sometimes hang on the last task, not launching the client. This requires manual cancellation of the build.
Both tasks have currently broken console log output.
You need to execute tasks provided below in the provided order to generate patches.
xu2 patcher ~ patched/Generate Patches ~ 1.12
- Generates patches for the Patcherxu2 patcher ~ patched/Generate Patches ~ Project
- Generates patches for the project setupxu2 patcher ~ patched/Generate Binary Patches ~ 1.12
- Generates Binary Patchesxu2 patcher/Release Jar ~ 1.12
- Builds the XU2 Patcher with just generated patches.
This is required, as using dependencies for those doesn't update the source files for each task.
Please point the pull requests to the dev
branch of the project 😊 Additional information on the patches included and pre-testing the build is also welcome!
The Entire project, except cases specified below, is licensed under MIT License, which can be found here.
Parts of the code which are marked as @author @Su5eD
are part of a public domain, as of the IC2-Patcher license The Unlicense
which can be found here.
Package com.kanzaji.xu2patcher.asm.BinPatchManager
is a modified version of MinecraftForge's ClassPatchManager class, and is licensed under the GNU Lesser General Public License version 2.1, which can be found here.
Extra Utilities 2 Source code is ALl Rights Reserved
, so you can't include it in this repository or share compiled binaries of it. This is also the reason this mod exists, and not a recompiled version of XU2.