3 KiB
3 KiB
LaunchWrapper
LaunchWrapper is a wrapper for legacy Minecraft which provides fixes for certain game features and also improves compatibility with launchers.
LaunchWrapper is bundled in BetterJSONs which are meant for official Minecraft Launcher.
Features
- Strips game window from Java AWT (Abstract Window Toolkit) and lets the game use internal LWJGL frame
- Allows changing assets directory in 1.6 snapshots (the game didn't have a parameter to do that yet)
- Allows changing game directory in versions before 1.6
- Replaces mouse input code with LWJGL calls
- Fixes TimSort crash when using java 8+
- Adds ability to customize built-in LWJGL frame
- Changing display title
- Setting icon
- Proxies all requests from old skin servers to the current skin API and converts skins to required format
- Uses Betacraft proxy to download sounds for versions before 1.6
- Adds ability to launch classic and pre-classic at custom resolution and fullscreen
- Makes save slots in classic and indev functional and saves to
.minecraft/levels
directory - A launcher for isometric level viewer (IsomPreviewApplet)
- A VSync toggle (Used to prevent extreme framerate in early versions which causes coil whine)
- Does not depend on any hard-coded obfuscated names and is mostly compatible with every Minecraft version
- This also includes modded versions
- A parameter to download
minecraft_server.jar
for snapshots which require it:12w18a
,12w19a
,12w21a
- The wrapper is fully compatible with java 5+ if the game is vanilla
How to use
This is a more in-depth guide for people experienced in Java
Make sure all minecraft and wrapper libraries are on classpath
Use java -cp <classpath> org.mcphackers.launchwrapper.Launch <arguments>
to launch the game
Arguments are formatted the same way as in Mojang launch wrapper.
For example: --username DemoUser --width 1280 --height 720 --title "Minecraft Demo" --demo
Arguments may be as follows:
awtFrame
- disable AWT patches (Does not work at that moment)isom
- Launch IsomPreviewAppletforceVsync
- Launch the game with VSync enabledforceResizable
- Early Indev and Classic are don't properly update viewport, so the wrapper disables frame resizing. To enable it anyway use this argumentskinProxy
- classic / pre-b1.9-pre4 / pre-1.8 / default - convert the skin to one of these specified formats- classic - flatten all skin layers, flip bottom textures and crop to 64x32
- pre-b1.9-pre4 - flip bottom textures and crop to 64x32
- pre-1.8 - crop to 64x32
- default - do nothing with requested skin
resourcesProxyPort
- Betacraft proxy port for sound resourcesserverSHA1
- Compare minecraft_server.jar in .minecraft/server against this hashserverURL
- URL to download the server from if the hash is mismatched or the jar is missingicon
- List of path of icon graphics separated by;
title
- The display title- + any Minecraft launch argument or applet parameter