A hacking engine that does the annoying part for you. Designed to work with independently of forge and fabric. This engine is the one used by the mod Bettercolors.
The engine takes into account the MC input design change of 1.13 and above (glfw vs vk), and works with all versions of MC (at least from 1.8.9 to 1.16.2). And should work with future versions of Minecraft.
With that engine, the only thing that you need to do is to implement your modules (aimbot, autoclick, whatever). Then, the rest is handled by the engine (window, parameters, file saving, version checking, and so on).
Here is what the automatically generated window looks like:
Maven:
<dependency>
<groupId>dev.nero</groupId>
<artifactId>bettercolors-engine</artifactId>
<version>1.1.1</version>
</dependency>
Gradle:
implementation 'dev.nero:bettercolors-engine:1.1.1'
If you are building a minecraft mod, then add those lines to your build.gradle:
configurations {
// ... your stuff if you have something already
// It defines a new configurration called inJar that we will use later on
// compile is needed so that the library is recognized by the IDE
inJar
compile.extendsFrom inJar
}
dependencies {
// ... your stuff if you have something already
// The library with the inJar configuration that we created previously
inJar "dev.nero:bettercolors-engine:1.1.1"
}
jar {
// ... your stuff if you have something already
// It will extract all the libraries needed for the inJar configuration to be working in the root of the .jar
// Basically, it will extract the bettercolorsengine jar file to your mod.jar
from {
configurations.inJar.collect {
it.isDirectory() ? it : zipTree(it)
}
}
}
- Download the files (release page) and move them in your project
- Don't forget to get the resources (images and fonts)
Will come later on... You can see the examples below for the moment.
- Here is an example on how you could use the engine:
void yourInitFunction() {
engine = new BettercolorsEngine();
engine.init(modules...);
}
void yourEvent() {
engine.event(eventCode, eventInformation);
}
void onKeyPress(k) {
engine.keyEvent(k.code, k.pressed);
}
- Add these lines to the
build.gradle
file:
configurations {
// ... your stuff if you have something already
// It defines a new configurration called inJar that we will use later on
// compile is needed so that the library is recognized by the IDE
inJar
compile.extendsFrom inJar
}
dependencies {
// ... your stuff if you have something already
// The library with the inJar configuration that we created previously
inJar "dev.nero:bettercolors-engine:1.1.1"
}
jar {
// ... your stuff if you have something already
// It will extract all the libraries needed for inJar to be working in the root of the .jar
from {
configurations.inJar.collect {
it.isDirectory() ? it : zipTree(it)
}
}
}
Real examples (all of them use all the engine's features):
- @N3ROO - Main developer
- @shorebre4k - Keymap utility class