Skip to content

Commit f203675

Browse files
authored
Preview 1.84.1 (#862) - Part 1
![UpdateIsAvailable-Campaign-Columbina](https://github.com/user-attachments/assets/e7043018-4d49-48f2-adf1-3c846fd3c3e4) # Preview 1.84.1 (Codename: Columbina) ### Hewwo, it's neon-nyan here~ It's beeeeeen a while since the last 1.83.x update. For now, this release is focusing on more quality improvements, bug fixes and internal code reworks rather than new features as we are preparing on reworking Collapse for new codebase. That being said, this 1.84 update will be the marked as the last V1 release after roughly 4 years since the start of this project as we are going to move into V2 codebase starting this year (at Q3 or Q4 2026). Thank you so much for your continous support and interest in this project💖 Without further ado, let's dig into what's new in this release so far. # What's new? ## Reworked Background System Since months, HoYoverse has updated HoYoPlay to support multiple background to display, including static image and dynamic background ones. This has been our backlog since this release as due to "spaghetti-code" nature of our entire codebase, this made us harder to adapt the changes and thus making Collapse still only support one static background image. Thanks to [this massive rework](#862), we are now able to pull-off this feature by splitting the parts of the code into its own element, making it more easier and more manageable for the change and for incoming improvements. We are also moving to [**FFmpeg**](https://www.ffmpeg.org/) as our secondary library for background video decoder if no built-in codec is present. You will be prompted to install the FFmpeg library if none of the required built-in Windows Media Foundation codec for VP9 or any codec is present. > [**FFmpeg**](https://www.ffmpeg.org/legal.html) is licensed and distributed under [GNU Lesser General Public License, version 2.1 **(LGPLv2.1)**](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html) [2026-03-22 20-02-46.webm](https://github.com/user-attachments/assets/954c4c77-4ae9-4222-afa7-4b396c7cc2f9) The experience might still be sluggish due to rushed implementation. But this will be improved in future updates🤞 ### Update: 2026/03/27 Due to corrupted video background situation in any regions for Zenless Zone Zero game, FFmpeg has been set as a default decoder for Collapse Launcher now (You can opt-in for using built-in Windows Media Foundation decoder, though). You might be asked to install a new one if you don't have any defined in your system's Environment Variable. [2026-03-27 11-55-13.webm](https://github.com/user-attachments/assets/670dd6d4-a3d3-44ba-9ee5-48866a0362da) ## Reworked Localization System #861 This is more like development-experience improvement rather than user focused ones. Previously in order to implement the localization for new elements, we have to manually map each class properties to represented JSON entries. Thanks to newly source-generated class mapper, every JSON entries will be mapped automatically. Each class properties can now be bind into UI element directly, making the UI able to update the visual itself rather than being told manually, one-by-one (which is expensive). ## Reworked Download Speed Limiter #859 The feature has been long broken since last 1.83.x release due to inconsistency and changes to other download-related libraries. Even though if you're enabling this feature, you might experience that the download speed "isn't actually being limited" and noticing that your bandwidth is still being fully utilized. This feature should now be fully fixed by decentralizing the code of the feature into its own library and making it easier to maintain. This feature could also be applied for any game plugins whose have v1-update4 API standard fully implemented. ## Minor UI Adjustments Not so noticeable UI changes at all. But it's worth to mention here. #### 1. News Carousel Design <img width="1282" height="457" alt="image" src="https://github.com/user-attachments/assets/3f3df571-63b5-42d5-9d54-6b6e005a8b83" /> #### 2. About Card <img width="810" height="535" alt="image" src="https://github.com/user-attachments/assets/66b826b0-219d-4733-ba49-8a600705ede1" /> ## Other New Changes - **[New]** Adding Files Clean-up Button to the Menu Bar, by @bagusnl <img width="334" height="139" alt="image" src="https://github.com/user-attachments/assets/50869299-c0dc-4888-9a5b-1819f05bed99" /> - **[Imp]** Switching Static Libraries Compiler from MSVC 19 to Clang 20.1, by @neon-nyan - **[Imp]** Caching Page Loading, by @neon-nyan - **[Imp]** Detach SDK Loading (for Sentry, Libsql.Client), by @neon-nyan - **[Imp]** Add Plugin Details (Breadcrumbs) to Sentry Reports, by @bagusnl - **[Imp]** Update overlay mask according to UI changes, by @shatyuka - **[Fix]** Remove ZZZ Game Settings Resolution Limit, by @shatyuka - **[Fix]** Invalid Encoding while saving ZZZ Game Settings Profile (GENERAL_DATA.bin), by @shatyuka - **[Imp]** Localization updates, by localizers 🥳 - de-DE - German (Progress: 73%) - es-419 - Spanish (Latin America)(Progress: 99%) - fr-FR - French (Progress: 99%) - id-ID - Bahasa Indonesia (Progress: 100%) - it-IT - Italian (Progress: 45%) - ja-JP - Japanese (Progress: 100%) - ko-KR - Korean (Progress: 87%) - nl-NL - Dutch (Progress: 99%) - pl-PL - Polish (Progress: 56%) - pt-BR - Portuguese (Brazil)(Progress: 73%) - pt-PT - Portuguese (Portugal)(Progress: 66%) - ru-RU - Russian (Progress: 76%) - th-TH - Thai (Progress: 95%) - uk-UA - Ukranian (Progress: 85%) - zh-CN - Chinese Simplified (Progress: 100%) - zh-TW - Chinese Traditional (Progress: 61%) ## PR Status : - Overall Status : Done - Commits : Done - Synced to base (Collapse:main) : Yes - Build status : OK - Crashing : No - Bug found caused by PR : - - ~**[Regression][High Priority]** Game Config's API is not changed while changing the games (Assignee: @neon-nyan)~ Fixed as per 052cb94 ### Templates <details> <summary>Changelog Prefixes</summary> ``` **[New]** **[Imp]** **[Fix]** **[Loc]** **[Doc]** ``` </details>
2 parents 9a19376 + 3ca5861 commit f203675

File tree

498 files changed

+42112
-22672
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

498 files changed

+42112
-22672
lines changed

.all-contributorsrc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"login": "neon-nyan",
1515
"name": "Kemal Setya Adhi",
1616
"avatar_url": "https://avatars.githubusercontent.com/u/30566970?v=4",
17-
"profile": "https://prophost.ironmaid.xyz",
17+
"profile": "https://github.com/neon-nyan",
1818
"contributions": [
1919
"code",
2020
"design",
@@ -208,10 +208,10 @@
208208
]
209209
},
210210
{
211-
"login": "kujou-kju",
212-
"name": "kujou",
211+
"login": "puyomi2k",
212+
"name": "puyomi",
213213
"avatar_url": "https://avatars.githubusercontent.com/u/23724383?v=4",
214-
"profile": "https://github.com/kujou-kju",
214+
"profile": "https://github.com/puyomi2k",
215215
"contributions": [
216216
"translation"
217217
]

.github/workflows/build.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ on:
77
push:
88
branches:
99
- 'main'
10-
- '1.83.x-staging'
1110
paths-ignore:
1211
- '**.md'
1312
- 'Hi3Helper.Core/Lang/**.json'
@@ -29,12 +28,12 @@ env:
2928

3029
jobs:
3130
build:
32-
runs-on: windows-latest
31+
runs-on: windows-2025-vs2026
3332
strategy:
3433
matrix:
3534
configuration: [Debug] # No need to distribute Debug builds
3635
platform: [x64]
37-
framework: [net9.0-windows10.0.26100.0]
36+
framework: [net10.0-windows10.0.26100.0]
3837

3938
env:
4039
Configuration: ${{ matrix.configuration }}
@@ -85,12 +84,12 @@ jobs:
8584
dotnet build CollapseLauncher -c Publish --verbosity quiet --no-restore
8685
8786
build-nativeaot:
88-
runs-on: windows-latest
87+
runs-on: windows-2025-vs2026
8988
strategy:
9089
matrix:
9190
configuration: [Debug]
9291
platform: [x64]
93-
framework: [net9.0-windows10.0.26100.0]
92+
framework: [net10.0-windows10.0.26100.0]
9493

9594
env:
9695
Configuration: ${{ matrix.configuration }}
Lines changed: 40 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,63 @@
11
name: Publish Stable & Preview builds to WinGet
22
on:
33
release:
4-
types: [released]
4+
types: [released, prereleased]
5+
workflow_dispatch:
6+
inputs:
7+
version:
8+
description: 'Version to publish (e.g. 1.2.3)'
9+
required: true
10+
type: string
11+
channel:
12+
description: 'Release channel'
13+
required: true
14+
type: choice
15+
options:
16+
- Stable
17+
- Preview
18+
release-tag:
19+
description: 'Release tag to fetch installers from (e.g. CL-1.2.3)'
20+
required: true
21+
type: string
522
jobs:
623
determine_channel:
724
runs-on: ubuntu-latest
825
outputs:
926
channel: ${{ steps.check.outputs.channel }}
1027
version: ${{ steps.check.outputs.version }}
28+
release-tag: ${{ steps.check.outputs.release-tag }}
1129
steps:
1230
- name: Check Release Name and Extract Version
1331
id: check
1432
# Find X.Y.Z version, then check for "Preview" after it for regex
1533
run: |
16-
RELEASE_NAME="${{ github.event.release.name }}"
17-
if [[ "$RELEASE_NAME" =~ (\d+\.\d+\.\d+) ]]; then
18-
VERSION="${BASH_REMATCH[1]}"
34+
if [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
35+
VERSION="${{ inputs.version }}"
36+
CHANNEL="${{ inputs.channel }}"
37+
RELEASE_TAG="${{ inputs.release-tag }}"
1938
else
20-
echo "Error: Could not find X.Y.Z version in release name."
21-
exit 1
22-
fi
39+
RELEASE_NAME="${{ github.event.release.name }}"
40+
RELEASE_TAG="${{ github.event.release.tag_name }}"
41+
if [[ "$RELEASE_NAME" =~ (\d+\.\d+\.\d+) ]]; then
42+
VERSION="${BASH_REMATCH[1]}"
43+
else
44+
echo "Error: Could not find X.Y.Z version in release name."
45+
exit 1
46+
fi
2347
24-
if [[ "$RELEASE_NAME" == *"Preview"* ]]; then
25-
CHANNEL="Preview"
26-
else
27-
CHANNEL="Stable"
48+
if [[ "$RELEASE_NAME" == *"Preview"* ]]; then
49+
CHANNEL="Preview"
50+
else
51+
CHANNEL="Stable"
52+
fi
2853
fi
2954
3055
echo "Detected Channel: $CHANNEL"
3156
echo "Detected Version: $VERSION"
57+
echo "Detected Release Tag: $RELEASE_TAG"
3258
echo "channel=$CHANNEL" >> $GITHUB_OUTPUT
3359
echo "version=$VERSION" >> $GITHUB_OUTPUT
60+
echo "release-tag=$RELEASE_TAG" >> $GITHUB_OUTPUT
3461
3562
publish_stable:
3663
needs: determine_channel
@@ -42,6 +69,7 @@ jobs:
4269
with:
4370
identifier: CollapseLauncher.Collapse
4471
version: ${{ needs.determine_channel.outputs.version }}
72+
release-tag: ${{ needs.determine_channel.outputs.release-tag }}
4573
installers-regex: '\.exe$'
4674
token: ${{ secrets.WINGET_TOKEN }}
4775

@@ -55,5 +83,6 @@ jobs:
5583
with:
5684
identifier: CollapseLauncher.Collapse.Preview
5785
version: ${{ needs.determine_channel.outputs.version }}
86+
release-tag: ${{ needs.determine_channel.outputs.release-tag }}
5887
installers-regex: '\.exe$'
5988
token: ${{ secrets.WINGET_TOKEN }}

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,15 @@
44
.vs/*
55
*.user
66
packages/*
7+
msbuild.binlog
78

89
CollapseLauncher/Deps/*
10+
CollapseLauncher/StaticLib/buildScript/waifu2x-ncnn-vulkan
11+
CollapseLauncher/StaticLib/buildScript/zlib
12+
CollapseLauncher/StaticLib/buildScript/zstd
13+
CollapseLauncher/StaticLib/buildScript/dav1d
14+
CollapseLauncher/StaticLib/buildScript/llvm-project
15+
CollapseLauncher/StaticLib/buildScript/lib*
916
CollapseLauncher/StaticLib/*.lib
1017
CollapseLauncher/StaticLib/**/*.lib
1118
CollapseLauncher/StaticLib/*.pdb

ClearCache.bat

Lines changed: 20 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,31 @@
11
@echo off
2-
echo Clearing Collapse cache
2+
echo Clearing Collapse cache
33
rmdir /S /Q CollapseLauncher\bin && rmdir /S /Q CollapseLauncher\obj
4-
echo Clearing ColorThief cache
4+
echo Clearing ColorThief cache
55
rmdir /S /Q ColorThief\ColorThief\bin && rmdir /S /Q ColorThief\ColorThief\obj
6-
echo Clearing CommunityToolkit.ImageCropper cache
6+
echo Clearing CommunityToolkit.ImageCropper cache
77
rmdir /S /Q Hi3Helper.CommunityToolkit\ImageCropper\bin && rmdir /S /Q Hi3Helper.CommunityToolkit\ImageCropper\obj
8-
echo Clearing CommunityToolkit.SettingsControls cache
8+
echo Clearing CommunityToolkit.SettingsControls cache
99
rmdir /S /Q Hi3Helper.CommunityToolkit\SettingsControls\bin && rmdir /S /Q Hi3Helper.CommunityToolkit\SettingsControls\obj
10-
echo Clearing Core cache
10+
echo Clearing Core cache
1111
rmdir /S /Q Hi3Helper.Core\bin && rmdir /S /Q Hi3Helper.Core\obj
12-
echo Clearing EncTool cache
12+
echo Clearing EncTool cache
1313
rmdir /S /Q Hi3Helper.EncTool\bin && rmdir /S /Q Hi3Helper.EncTool\obj
14-
echo Clearing EncTool tester cache
15-
rmdir /S /Q Hi3Helper.EncTool.Test\bin && rmdir /S /Q Hi3Helper.EncTool.Test\obj
16-
echo Clearing Http cache
14+
echo Clearing Http cache
1715
rmdir /S /Q Hi3Helper.Http\bin && rmdir /S /Q Hi3Helper.Http\obj
18-
echo Clearing Http tester cache
19-
rmdir /S /Q Hi3Helper.Http\Test\bin && rmdir /S /Q Hi3Helper.Http\Test\obj
20-
echo Clearing TaskScheduler cache
16+
echo Clearing TaskScheduler cache
2117
rmdir /S /Q Hi3Helper.TaskScheduler\bin && rmdir /S /Q Hi3Helper.TaskScheduler\obj
22-
echo Clearing HDiff cache
23-
rmdir /S /Q Hi3Helper.SharpHDiffPatch\Hi3Helper.SharpHDiffPatch\bin && rmdir /S /Q Hi3Helper.SharpHDiffPatch\Hi3Helper.SharpHDiffPatch\obj
24-
echo Clearing 2nd HDiff cache
25-
rmdir /S /Q Hi3Helper.SharpHDiffPatch\SharpHDiffPatch\bin && rmdir /S /Q Hi3Helper.SharpHDiffPatch\SharpHDiffPatch\obj
26-
echo Clearing InnoSetupHelper cache
18+
echo Clearing InnoSetupHelper cache
2719
rmdir /S /Q InnoSetupHelper\bin && rmdir /S /Q InnoSetupHelper\obj
28-
echo Clearing ImageEx cache
20+
echo Clearing ImageEx cache
2921
rmdir /S /Q ImageEx\ImageEx\bin && rmdir /S /Q ImageEx\ImageEx\obj
30-
echo Clearing 7z cache
31-
rmdir /S /Q Hi3Helper.Core\Classes\Data\Tools\SevenZipTool\SevenZipExtractor\SevenZipExtractor\bin && rmdir /S /Q Hi3Helper.Core\Classes\Data\Tools\SevenZipTool\SevenZipExtractor\SevenZipExtractor\obj
32-
echo Clearing SharpDiscordRPC cache
33-
rmdir /S /Q Hi3Helper.SharpDiscordRPC\DiscordRPC\bin && rmdir /S /Q Hi3Helper.SharpDiscordRPC\DiscordRPC\obj
22+
echo Clearing 7z cache
23+
rmdir /S /Q SevenZipExtractor\SevenZipExtractor\bin && rmdir /S /Q SevenZipExtractor\SevenZipExtractor\obj
24+
echo Clearing SharpDiscordRPC cache
25+
rmdir /S /Q Hi3Helper.SharpDiscordRPC\DiscordRPC\bin && rmdir /S /Q Hi3Helper.SharpDiscordRPC\DiscordRPC\obj
26+
echo Clearing Hi3Helper.SourceGen cache
27+
rmdir /S /Q Hi3Helper.SourceGen\bin && rmdir /S /Q Hi3Helper.SourceGen\obj
28+
echo Clearing Hi3Helper.LocaleSourceGen cache
29+
rmdir /S /Q Hi3Helper.LocaleSourceGen\bin && rmdir /S /Q Hi3Helper.LocaleSourceGen\obj
30+
echo Clearing Hi3Helper.Plugin.Core cache
31+
rmdir /S /Q Hi3Helper.Plugin.Core\bin && rmdir /S /Q Hi3Helper.Plugin.Core\obj

CollapseLauncher.slnx

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@
5050
<BuildType Solution="Publish|*" Project="Release" />
5151
<Platform Project="x64" />
5252
</Project>
53+
<Project Path="Hi3Helper.LocaleSourceGen/Hi3Helper.LocaleSourceGen.csproj">
54+
<Platform Project="x64" />
55+
</Project>
5356
<Project Path="Hi3Helper.Plugin.Core/Hi3Helper.Plugin.Core.csproj">
5457
<BuildType Solution="Publish|*" Project="Release" />
5558
<Platform Project="x64" />
@@ -66,6 +69,9 @@
6669
<BuildType Solution="Publish|*" Project="Release" />
6770
<Platform Project="x64" />
6871
</Project>
72+
<Project Path="Hi3Helper.SourceGen/Hi3Helper.SourceGen.csproj">
73+
<BuildType Solution="Publish|*" Project="Release" />
74+
</Project>
6975
<Project Path="Hi3Helper.TaskScheduler/Hi3Helper.TaskScheduler.csproj">
7076
<BuildType Solution="Publish|*" Project="Release" />
7177
<Platform Project="x64" />
@@ -90,4 +96,10 @@
9096
<BuildType Solution="Publish|*" Project="Release" />
9197
<Platform Project="x64" />
9298
</Project>
99+
<Project Path="TLFixer/TLFixer.csproj" Id="5b59dd8f-24ee-4bec-91db-1e95b51f46a7">
100+
<BuildType Solution="Publish|*" Project="Release" />
101+
<Platform Project="x64" />
102+
<Build Solution="Publish|*" Project="false" />
103+
<Build Solution="Release|*" Project="false" />
104+
</Project>
93105
</Solution>

0 commit comments

Comments
 (0)