Add Battlegrounds collection unlock (browse and pick any skin in-game)#304
Merged
Conversation
New toggle isBgsUnlockCollectionEnable forces CollectionManager.OwnsBattlegrounds* and the BG cosmetic DataModel Owned/IsOwned getters to return true, so hero skins, bartenders, boards, finishers, emotes and pets all show as owned in the Battlegrounds collection for browsing and applying through the existing skin overrides. Uses a TargetMethods patch that skips any method it cannot resolve, to stay resilient across game updates. Adds enUS/zhCN/ruRU strings.
Owner
|
thanks. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概述 Overview
实现/解决/优化的内容(implemented/solved/optimized/fixed:):
New toggle
isBgsUnlockCollectionEnable. When enabled, the whole Battlegrounds collection shows as owned inside the game, so you can open the in-game Battlegrounds collection and browse and pick any cosmetic: hero skins, bartenders, boards, finishers, emotes and pets. It is visual and local only, it does not grant real ownership and does not change what opponents see. It pairs with the existing skin overrides (skinHero, skinBob, skinBgsBoard, skinBgsFinisher, skinPet) to apply a picked skin.Implementation: a
PatchBgsUnlockCollectionHarmony patch that forcesCollectionManager.OwnsBattlegrounds*and the BG cosmetic DataModelOwned/IsOwnedgetters to return true. It usesTargetMethodsand skips any method it cannot resolve, so it will not crash on future game updates. Adds enUS, zhCN and ruRU strings.检查 Check
功能 Function
enUS.json已完善 (config field descriptions added; enUS.json completed, also zhCN.json and ruRU.json)风险 Risk
可能导致或已知的问题 (known limitations):
Visual and local only. Clicking "favorite" on an unowned cosmetic does not persist because the server rejects it, so the skin is applied through the existing skin id overrides, not the favorite button. Everything is gated behind the toggle (default off), so it has no effect unless enabled. The web config UI for this toggle was not verified.