Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stable 1.80.16 Release #538

Merged
merged 86 commits into from
Jul 16, 2024
Merged

Stable 1.80.16 Release #538

merged 86 commits into from
Jul 16, 2024

Conversation

bagusnl
Copy link
Member

@bagusnl bagusnl commented Jul 15, 2024

What's New? - 1.80.16

Note regarding Sophon / Genshin Preload saying Download after preload is completed

This has been fixed in this release, but you have to do it once to make the identifier file that the preload is completed. There will be no significant download happened, it will just verify the downloaded chunks.
After that, the dialog should say its finished downloading and the button turns to Verify Package Integrity.
While verifying it will says "Downloading", this might not be true as both download and verification happened in the same method. Check network activity in the task manager if you are curious.

  • [New] Zenless Zone Zero Game Settings Integration, by @bagusnl, @neon-nyan, @shatyuka
    • You can now change Graphics, Audio, and Language settings for your game before even running it!
    • This was a fun one, over 4k lines of code in the single PR (mostly) for this feature.
    • Almost half of them was just the necessary code for Collapse to be able to read and write the settings to the necessary places. Thanks @shatyuka and @neon-nyan for all of those mumbo jumbo that @bagusnl can't even comprehend with a cup of coffee, or three.
    • For more fun details, you can go and open this pull request
  • [Fix] Various fixes for Sophon download method, by @neon-nyan
    • Adding an indicator if Sophon Mode is used
    • Fix Sophon preload completion is not detectable, now finished Sophon download should show Verify button instead of Download
    • Fix thread exhaustion caused by too many connections being made leading to premature download stop (stuck download)
    • Fix (hopefully) unknown thrown, causing the preload download to gets finished prematurely
  • [Fix] Bump NuGets and dotNET SDK to mitigate vulnerability, by @bagusnl
    • While Collapse is not affected by this, we always try to be up to date and bump all vulnerability that might get included with our package, dotNET included as we publish them with all the necessary runtime dlls (notice you never had to update dotNET runtime for Collapse?)
    • This mitigate vulnerability found in System.Text.Json built-in JSON parser for dotNET. Read more about it here
  • [Fix] Clearing log files causing launcher to crash, by @neon-nyan
  • [Fix] Console might get displayed for a brief moment on launch when its disabled, by @neon-nyan
  • [Fix] Allow system to sleep after Sophon download is completed, by @bagusnl
  • [Imp] New slider style, by @neon-nyan
  • [Imp] Use same GUID for Tray Icon on launch, by @bagusnl
    • This is to prevent Tray Icon preference (visibility, order, etc.) to change when the app path changed like after an update

neon-nyan and others added 30 commits June 18, 2024 22:41
Preview 1.80.10 Hotfix Release
# What's New? - 1.80.12
- **[Fix]** Threading exception on certain UI components, causing the
launcher to crash, by @shatyuka
- **[Fix]** Sophon Installer crashed due to invalid type of Language
String to Locale Code converter, by @neon-nyan
- **[Fix]** Honkai: Star Rail Game Repair and Cache Update issues, by
@bagusnl and @neon-nyan
- Adding fallback method to lookup values in Honkai: Star Rail gateway
API if the metadata KVP is not updated/unmatched
    - Updating metadata's Key-Value pairs.
- Adding debug information for the Gateway API parser under ``Debug``
build
    - Check for End-Of-File on the buffer
- Fix the location of certain patch-marked files under Persistent Folder
- Fix FileNotFound error on certain file marked under Persistent but
found under StreamingAssets by hardlinking the file
- **[Imp]** Add new game settings for Honkai: Star Rail, by @bagusnl 
    - `Character Shadow in Map Exploration`: self explanatory
- `Half Resolution Transparency`: Controls resolution of objects behind
transparent plane (window, etc.)

### Templates

<details>
  <summary>Changelog Prefixes</summary>
  
  ```
    **[New]**
    **[Imp]**
    **[Fix]**
    **[Loc]**
    **[Doc]**
  ```

</details>
# What's New? - 1.80.13
- **[Fix]** Game's preset config not always reinitialized in certain
conditions.
- **[Fix]** Potential Error Code: 4302-x on Genshin Impact after
performing Game Repair.
- **[Fix]** Emptied VO audio list file on Genshin Impact and Honkai:
Star Rail after Plugin/SDK updates.
- **[Fix]** Carousel auto-scroll routine called twice after going back
from the game.
- **[Fix]** COM Threading error on spawning "Extract Anyway" dialog.
- **[Fix]** Exception on extracting corrupted zip files on installation.
- **[New]** Adding full SDK files update required for Bilibili client.
- **[New]** Adding ``GameVersion``'s ``Equals()`` extension.
- **[Imp]** Move activator to App's OnLaunched() override.
- **[Imp]** Move notification trigger from base class to the caller.
- **[Imp]** Switch ``StringComparer``s to ``OrdinalIgnoreCase``.
- **[Imp]** Return if the TryDeleteReadOnlyFile argument is not exist.
- **[Imp]** Always reinitialize game ``config.ini`` file on reloading.
- **[Loc]** Update localizations, by localizers <3

### Templates

<details>
  <summary>Changelog Prefixes</summary>
  
  ```
    **[New]**
    **[Imp]**
    **[Fix]**
    **[Loc]**
    **[Doc]**
  ```

</details>
FUCKIN HELL I FORGOR TO BUMP A<:"D>S :"T#EP{}LR <L:W<
NOTE:
- Reverse Encode needs checking
- GeneralData is still F'd
- I'm eepy
WARNING: WILL CRASH WHEN OPENING THE PAGE
- Initialize General Data settings later due to certain properties are not initialized sooner
- Fix path for general data config file
- Fix frontend format
As the file is based on the old and obsolete BinaryFormatter serializer and no longer available for future .NET runtime releases, emulating the read/write routine should do the trick.

Thanks @shatyuka for the help on the initial implementation

- Adding basic props for ZZZ ``GeneralData`` class

- Remove unused Encoder method

- Clean-up namespaces

- Implement JsonNode De/Serializer API

- Implement JsonNode's Getter and Setter

This is the difficult one :pepeHands:

- Remove testing setter

Co-authored-by: Shatyuka <[email protected]>
Co-authored-by: Bagus Nur Listiyono <[email protected]>
Thank you for forcing us to use JsonNode this time.
Fucc you, HoYo! :frick:
Also suppress interface warning by implementing Load() and LoadWithMagic() but cast the method from base
also add render res enum
- Do manual conversion of int <=> bool
- Add :FRICK: tons of the keys
- New enum, preset
# What's New? - 1.80.15
- **[Fix]** Crashing/Not responding issue caused by `ConfigureAwait`, by
@neon-nyan
- **[Fix]** Discord RPC weird behaviors, by @bagusnl & @neon-nyan 
  - RPC wont update between idle/play status
  - RPC stuck between game changes 
- **[Fix]** Game Settings "reset" between game changes, by @bagusnl 
- This is caused by recent rewrite did not take into account refreshing
`RegistryRoot` which is used by all GameSettings backend to load values
from registry.
- Now `RegistryRoot` is always retrieve the latest value instead of
caching it.
- **[Fix]** `MIT License` string in Settings page not localized, by
@bagusnl
- **[Imp]** Allow user to Cancel when asked to either resume or
redownload an ongoing download, by @neon-nyan
- **[Fix]** Zip extraction not using multithread, by @neon-nyan 
- **[Imp]** Use Uncompressed Size when calculating disk space
requirements, by @neon-nyan
- **[Fix]** "Stop Game" button always enabled even when game is not
running, by @neon-nyan
- **[Fix]** Game selector ComboBox fixes, by @shatyuka 
  - Fixed being unable to change game/region after a metadata update
  - Fixed ComboBox not using acrylic theme
- **[Fix]** Zenless Zone Zero uninstall error, by @NSPC911 

### Templates

<details>
  <summary>Changelog Prefixes</summary>
  
  ```
    **[New]**
    **[Imp]**
    **[Fix]**
    **[Loc]**
    **[Doc]**
  ```

</details>
+ This is useful to avoid NRE error if the new GeneralData() or any MagicNodeBaseValues<T> members are faulty or null. So instead of letting it null, we will instead create a new default instance of it.
+ This also can be useful to create a new default values of GENERAL_DATA.bin or any MagicNodeBaseValues<T> type files if don't exist.
+ Fix the bug by flushing the writer before reusing it
WARNING: NOT YET TIED INTO GENERAL DATA
+ Fix double disposal when cleaning-up log folder
+ Fix crash upon cleaning-up log folder
+ Fix the log files don't contain launcher infos
+ Fix where the launcher have "vUnknown" prefixes
+ Fix logs do not append to the last line on launcher re-run
+ Fix Console window sometime spawned for a moment on start-up, even with "Show Console" not enabled
bagusnl and others added 29 commits July 14, 2024 00:46
100% reviewed source file: 'en_US.json'
on 'es_419'.
100% reviewed source file: 'en_US.json'
on 'ja_JP'.
100% reviewed source file: 'en_US.json'
on 'id_ID'.
+ This adds an ability to not only Import and Export the registry, but also Import and Export the file-based configuration as well (in this case: Zenless Zone Zero's GENERAL_DATA.bin)
100% reviewed source file: 'en_US.json'
on 'zh_CN'.
100% reviewed source file: 'en_US.json'
on 'vi_VN'.
100% reviewed source file: 'en_US.json'
on 'pt_BR'.
100% reviewed source file: 'en_US.json'
on 'fr_FR'.
100% reviewed source file: 'en_US.json'
on 'id_ID'.
Helps for those with lower/more unstable internet, lessening retry count and preventing chunk corruption possibility.

Theoretical max now 64
Value is controlled by downloadThreadCount * 4
+ Adding an indicator if Sophon Mode is used
+ Fix sophon preload completion is not detectable
+ Fix thread exhaustion caused by too many connections being made
+ Fix (hopefully) unknown thrown, causing the preload download to gets finished prematurely
This is to prevent Tray settings to be reset when Collapse path change, usually after an update.
It should stay the same place like before the path change, in terms of visibility and tray order.
@Cryotechnic Cryotechnic merged commit f951c95 into stable Jul 16, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants