BreakMe/README.md
2020-12-12 19:13:20 +01:00

2.3 KiB

BreakMe pipeline status

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 one here

Configuration

You can use Mod Menu 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

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 and place it in src/main/resources/native.
If you want to build the dll, use this as a reference (requires VS build tools).
The mod itself is built like any other fabric mod: using gradle. Look at the CI config for an example\