BreakMe/README.md
2021-05-06 08:38:58 +00:00

33 lines
2.5 KiB
Markdown

# BreakMe [![pipeline status](https://gitlab.com/jfmods/BreakMe/badges/master/pipeline.svg)](https://gitlab.com/jfmods/BreakMe/-/commits/master)
BreakMe crashes Minecraft in creative ways. It uses Fabric (although porting should be trivial, most of the code is standard java & some JNI)\
# Installing
I recommend you to use the automatically built packages, you can download the latest curseforge build [here](https://gitlab.com/jfmods/BreakMe/-/jobs/artifacts/master/raw/latest-cf.jar?job=build_test) and the latest non-cf build [here](https://gitlab.com/jfmods/BreakMe/-/jobs/artifacts/master/raw/latest.jar?job=build_test)
# Configuration
You can use [Mod Menu](https://www.curseforge.com/minecraft/mc-mods/modmenu) to change the configuration.\
The values are explained in more detail below
- Cause:
- Damage: The crash-event is fired once you take damage
- Death: The crash-event is fired once you die
- All: The crash-event is fired if any of the above apply (currently equal to Damage)
- None: The crash-event is never fired
- Method:
- Unsafe_Universal_Forkbomb: Launch a self-multiplying process
- Unsafe_Windows_WinAPI: Do some JNI-magic to instantly produce a blue-screen on windows
- Broken_Universal_ExitCode: Exit the integrated Server. The game still displays, but you can no longer interact with the world or quit.
- Safe_Universal_Exception: Performs an invalid operation. Behaves like every other crash and just closes the game, leaving a crash log.
- SemiUnsafe_Universal_Exception: Throws a security exceptions. This does not work properly for 1.16.2
- SemiUnsafe_Universal_Shutdown: Attempts to run a shutdown command. Since these are specific to some systems this might not always work.
- None: Do nothing
Please note that all methods marked "Unsafe" as well as the shutdown method are not available in the curseforge release
# Building
BreakMe consists of two parts: The main mod and the DLL used for Unsafe_Windows_WinAPI, which are built separately.\
If you don't build on windows you can use the dll contained in the latest [CI build](https://gitlab.com/jfmods/BreakMe/-/jobs/artifacts/master/browse/build/libs?job=build_test) and place it in src/main/resources/native.\
If you want to build the dll, use [this](https://gitlab.com/jfmods/BreakMe/-/blob/master/src/main/c/build.bat) as a reference (requires VS build tools).\
The mod itself is built like any other fabric mod: using gradle. Look at the [CI config](https://gitlab.com/jfmods/BreakMe/-/blob/master/.gitlab-ci.yml#L10) for an example\