Live
STYGION Launcher s0.9.0: what's new
New look and new screens
- The whole launcher is rebuilt in the visual language of stygion.eu. New colours, fonts, shapes, logo and dialogs; light and dark theme (Settings → Appearance: System / Light / Dark). Home is neutral: the instance you played last and the server your session ended on, then Recently played and news.
- Detail pages for everything: modpack (gallery, version picker, per-version changelog), server (MOTD, players, ping), friend profile and a new instance detail (status, worlds, screenshots, servers, file check).
- Game crash with a fix. The launcher reads the log, recognises a common cause (memory, Java, JVM flag, dependency, duplicate mod, graphics) and offers a one-click fix. The log can be copied, or uploaded to mclo.gs only after a second confirmation; tokens, uuids and your home folder are hidden first.
- Button sounds and short animations (sounds default to 25 %, switch them off in Appearance; with reduced motion set in the system, animations are off).
- Screenshot gallery per instance, custom instance icon, instance clone, file check and repair (SHA-1 of mods).
- Import from Prism/MultiMC, CurseForge App and Modrinth App (reads foreign data only). Wrapper (gamemoderun, mangohud…) and environment variables at launch on Linux. Experimental features including Potato Mode sit behind a switch in About.
- A STYGION ID is not needed for any of this; the launcher works without one.
- About and the accounts dialog state that this is not an official Minecraft product and is not approved by Mojang or Microsoft.
Security
- Minecraft 1.7–1.18 is protected against Log4Shell. These versions ship a log4j that runs code from any logged line — a chat message on someone else's server was enough. The launcher now starts them with Mojang's fix (the log4j configuration from the version manifest), like the official launcher.
Store builds and CurseForge
- Microsoft Store, Flathub, AUR and your package manager update the launcher, not the launcher itself. Settings → Updates says who. The installer and the AppImage keep their own updater.
- A CurseForge file whose author forbids third-party downloads is never fetched by the launcher. You download it yourself on its CurseForge page (with the page's own download button), the launcher picks it up from your Downloads folder, checks it and puts it into the instance. It used to open the page for two seconds and fetch the file behind it.
- The launcher says who it is. Every download carries
STYGION-Launcher/<version>; CurseForge downloads used to pretend to be a browser. The CurseForge key is only sent to CurseForge's API and file servers, and the author's own "allow third-party distribution" setting is read from the project.
Play from the web
- The "Play" button on stygion.eu now ends up in the game. The
stygionlauncher://join/<world>link opens the launcher (also when it is already running — no second window), asks the service which modpack at which version the server runs right now, and takes you in after one confirmation. When the pack is current there is no question at all. The link carries only the world's name, so an old link from Discord can never install the wrong version. - A world has its own instance in the launcher. Only that one is updated; instances you set up yourself are never changed. If you already have the same modpack in exactly the server's version, the launcher offers to use yours.
- The link is no longer lost. On a cold start it waits until the window has loaded (it used to be sent before anything was listening), and it survives a launcher update that restarts the app right after start-up.
- Linux (AppImage): the
stygionlauncher://scheme is registered on every start, so it works after the file has been moved.
Faster start
- Forge and NeoForge are no longer installed on every launch. The installer and its processors run once; afterwards the launcher checks that their outputs on disk still match (SHA-1) and does not touch the network for the loader. The game starts even when the loader's Maven is down.
- A game with a big pack no longer slows the launcher down. The game's output reaches the window in batches (it used to be one message per line — tens of thousands while a pack loads), download progress at most 20 times a second, and deleting, cloning, worlds and servers no longer block the window.
- The launcher opens faster: the first window asks for its settings at once, not one by one, and our own Java is recognised by its folder instead of starting every Java found.
In-game performance
- New default JVM flags, “Recommended” (it used to be “None”, whatever Java does by itself — on Java 8 ParallelGC with long pauses you see in game as stutter). Client-tuned G1 on every Java, compact object headers on Java 25 (less memory), generational ZGC only for a big pack on a strong machine. The flags are worked out for the Java that actually runs the game; every set is checked on Java 8, 16, 17, 21 and 25. A saved “None” reads as Recommended, your own flags stay.
- Memory “Auto”: by mod count and the computer's RAM (vanilla 2–3 GB, a pack 4–10 GB, never more than half the RAM and always at least 3 GB left for the system). Below 16 GB the game starts with 1 GB and grows when it needs to. Memory you set yourself stays; the Auto button brings it back.
Fixes
- Shaders from CurseForge modpacks go to
shaderpacks/, notmods/. The launcher had the wrong CurseForge class number for shaders, so Photon, BSL and Complementary from STYGION MC ended up among the mods where the game never saw them. CurseForge data packs go todatapacks/(they also went tomods/). - The file check no longer reports a pack's resource packs and shaders as missing. The launcher remembers which folder a file belongs in.
- A modpack with a differently named overrides folder (the
overridesfield of a CurseForge manifest) keeps its configs, and.mrpackclient-overrideswin overoverrides, as the format says. - Old Forge (≤ 1.12.2, e.g. GregTech on 1.7.10) installs and launches. The profile is read from
versionInfo, the real Maven version replaces a suffix-lessforge-10.13.4.1614, the loader's arguments replace vanilla's instead of doubling them, libraries without a URL (launchwrapper, asm-all…) come fromlibraries.minecraft.net, the universal jar is unpacked from the installer, and old (virtual) asset indexes get the layout they need. - JVM flags follow the Java that runs the game. ZGC on Java 8 no longer ends in "Unrecognized
VM option" (G1 is used),
ZGenerationalgoes only to Java 21–23, and obsolete G1 flags andUseCompactObjectHeadersoutside their Java range are dropped. What was left out is listed instygion-launch.log. The ZGC preset now means generational ZGC. - Forge and Fabric on 1.16–1.18 start. Merging the loader dropped the GLFW library for Windows and Linux (only the macOS one stayed) and the game crashed right away.
- Quilt installs again (the launcher asked an old version of their API that Quilt switched off).
- The newest loader version is offered. Forge, NeoForge and Quilt were ordered by their position in the file, so 1.7.10 offered the first Forge for it (10.13.0) instead of the last (10.13.4), and 1.16.5 36.0.0.
- Forge 1.6.4 and 1.7.10 start: natives (jinput) come from the right address and old FML no longer checks the signature of a jar Mojang now serves differently.
- Downloads survive a dropped connection (three tries; a file is written whole or not at all), a library listed twice is downloaded once and a half-unpacked Java is never used.
- A Java chosen for every instance is only used where it fits. Java 21 set for a new pack no longer breaks a 1.12.2 pack (that one gets Java 8).
- Checked on all 918 versions in Mojang's list (libraries, natives, arguments, files reachable) and by starting to the menu: vanilla from rd-132211 to the 26.4 snapshot, Forge 1.5.2–1.20.1, NeoForge 1.21.1 and 26.3, Fabric 1.14.4–26.3, Quilt 1.20.1 and 1.21.1.