Skip to content

Add Battlegrounds collection unlock (browse and pick any skin in-game)#304

Merged
Pik-4 merged 1 commit into
Pik-4:bepinex5from
GodzzilaS:bgs-unlock-collection
Jul 7, 2026
Merged

Add Battlegrounds collection unlock (browse and pick any skin in-game)#304
Pik-4 merged 1 commit into
Pik-4:bepinex5from
GodzzilaS:bgs-unlock-collection

Conversation

@GodzzilaS

Copy link
Copy Markdown
Collaborator

概述 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 PatchBgsUnlockCollection Harmony patch that forces CollectionManager.OwnsBattlegrounds* and the BG cosmetic DataModel Owned/IsOwned getters to return true. It uses TargetMethods and 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)
  • 若有必要,已编写面向用户的新功能说明 (user-facing description added in the config strings)
  • 已测试新功能或更改 tested in-game: the Battlegrounds cosmetics show as unlocked and skins can be picked and applied in-game. Note: the web config editor (localhost:58744) path for this new toggle was not tested, the toggle was enabled through the .cfg file.

风险 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.

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.
@Pik-4
Pik-4 merged commit 2ccaf54 into Pik-4:bepinex5 Jul 7, 2026
1 check passed
@Pik-4

Pik-4 commented Jul 7, 2026

Copy link
Copy Markdown
Owner

thanks.

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.

2 participants