1.83.9 Preview [Codename: Luna]
Pre-releaseHi there, neon-nyan here~
It's been almost 3 weeks since the last preview update. To commemorate Genshin Impact 6.0 (aka: Luna I) update, we have decided to use a new codename for this release: "Luna"
With this release, we are bringing a long-awaited feature, the Plugin System. This will catapult the development of Collapse to become not only an exclusively third-party launcher for HoYoverse/miHoYo titles, but also others in the future.
Without further ado, let's get into details of this update!
What's New?
Plugin System for Other Non-miHoYo Titles Support, by @neon-nyan
3 Months, 9000+ of lines changes later, we have finally finished the first iteration of Plugin System implementation. For now, only basic functionalities are implemented into this system, per the v0.1-update1 API Standard, including:
- Game Installation
- Game Update/Preload
Note: Other features like Game Repair, Game Caches and Game Settings are going to be implemented in the future.
We are planning to make our own in-house plugins which will bring support to two games and are expected to be finished once the Luna release makes it to Stable:
- Heaven Burns Red
Developed and Maintained by: Collapse Project Team (@neon-nyan)
Status: Completed - Wuthering Waves
Developed and Maintained by: Collapse Project Team (@Cryotechnic)
Status: Final Validation Phase
This implementation took more time due to a NativeAOT redesign of the system. We are trying to make the plugin to not only work inside our own codebase, but also usable for any code/launchers implementation out there (if they want to).
We are making the compiled plugin footprint as small as possible by removing any dependencies, with .NET Reflections, stripping out .NET Runtime and implementing COM-Like interfaces to bridge the communication with plugins and the launcher, making the plugin compiled as a native library instead of a .NET standard library. With this, we are achieving 6-7 MB for the plugin library.
The plugin can be managed by using the Plugin Manager menu under the App Settings. Here's how it works:
2025-09-14.21-51-48.webm
PS: Plugin download for Heaven Burns Red will be available soon. Join our official Discord to get your hands on that first!~ 👀
Bring Back NativeAOT Build
The latest .NET 9 Runtime comes with a fix and the UI hang issue has been fixed in most scenarios, which allows us to ship NativeAOT builds again!
Publishing a NativeAOT Build brings some benefits, including faster cold start-up time, slight improvements on overall code performance (which relies on frequent inline calls) and smaller compiled code.
This demo shows an improvement to the cold start-up time while the launcher is launched. We took Stable v1.82.31 as a baseline to the comparison and as a result, old ILCompile build start-up finished in 916 milliseconds while NativeAOT build start-up finished in just 466 milliseconds.
ComparisonAOTvsNonAOT.webm
This also results in a much smaller build as most of the .NET runtime code are stripped. Here's the comparison of the build size between two builds (with debug symbols removed):
Revamp Post-Download Behavior Settings, by @gablm
We have added few options on how the launcher will behave after a game installation/update. You can also set the Download Speed Limit while performing game installation or update.
Cached API Response for Application-wide Functions, by @neon-nyan
Tired of waiting for the launcher to load up each of the regions? Now, you can make it faster. With the new HTTP Cache method, you can make game region loading much faster (almost immediate). Previously, this feature was only available for few features internally, including Game Repair and Cache Updates, but was not controllable. Now, every API calls from the launcher can be cached so the launcher loads everything much-much faster.
2025-09-14.22-10-08.webm
What's Changed?
- [Removed] Remove CODING from CDN Mirror list
- [Imp] Recompile Static Libraries with MSVC for NativeAOT builds, by @neon-nyan
- [Imp] Update .NET components NuGet to 9.0.9, by @bagusnl @neon-nyan
- [Imp] Update WindowsAppSDK to 1.8-stable, by @neon-nyan
- [Imp] Improve DBHandler reliability and error handling, by @bagusnl
- Implements a retry mechanism with exponential backoff for database operations
- Adds detailed logging for debugging and troubleshooting
- Uses internal methods for querying and storing data to streamline error handling
- Integrates with Sentry for exception reporting
- Improves stream expiration handling
- [Imp] Decouple Hashing Extensions from Collapse Launcher's Main Code, by @neon-nyan
- [Imp] Improve app-wide logger extensions, by @neon-nyan
- Remove memory allocation entirely by writing string directly to Win32 handles
- Add asynchronous variant for the overloads
- Add
DefaultInterpolatedStringHandleroverload for passing interpolated string.
- [Imp] Improve Sentry Logging, by @bagusnl
- Now the telemetry will upload only the last 100 lines from the log instead of sending everything to Sentry. This will reduce time and guarantee the log is successfully sent for analysis.
- If multiple errors occur, the exceptions will be queued and sent one-by-one. This avoid issues with other reports being sent at the same time.
- [Imp] Improve I/O Performance on Sophon submodule, by @neon-nyan
- Use OS-level file caching
- Limit
FileStreamhandle's access and share parameter - Automatically increase
FileStream's buffer to now depend on target file size - Move
ChunkStream.CopyToAsyncintoTask.Factoryand run it synchronously in the background - Increase maximum buffer size budget on patch mode from 4 MiB to 32 MiB
- Allocate only a certain amount of buffer based on target data size (this to avoid buffer overprovision, causing memory and CPU usage spikes)
- [Fix/Imp] Ignore assets that marked as "unused/deleted" on ZZZ Game Installation/Update and Game Repair, by @neon-nyan
- [Fix]
NotSupportedExceptionerror while performing Game Repair on Honkai Impact 3rd and Honkai: Star Rail, by @neon-nyan - [Fix] Legacy Sophon won't recognize already existed files while installing games from scratch, by @neon-nyan
- [Locale] Update Localizations for vn_VN, es_ES/419, ja_JP, id_ID, zh_CN, by Localizers ❤
Read the full changelog below!
Full Changelog: CL-v1.83.8-pre...CL-v1.83.9-pre
Code Signing Policy
Free code signing provided by SignPath.io, certificate by SignPath Foundation
- This program will not transfer any information to other networked systems.
- Read our full Privacy Policy
- Also read our Third Party Notices for license used by third party libraries that we use.
🛡 VirusTotal GitHub Action analysis:
🛡 VirusTotal GitHub Action analysis:
