Add Commander bracket calculation and bracket views#10672
Conversation
|
The 5 new lists you've added are 5 additional sets of data we'd have to maintain in order for this feature to continue working right as new sets come out. It also looks like the only way it can mechanically differentiate bracket 1 and bracket 2 is that bracket 2 has one or more extra-turn effects? |
|
@Jetz72 Correct. I've written Python scripts to scrape EDHREC and scryfall to automate this which I can share if needed, but yes the lists need maintenance. And yes, there isn't much to differentiate bracket 1-2 or bracket 4-5 that can be detected by a script. This is by design of the bracket system, but it's OK because most casual play of Commander is in brackets 2-4 anyway. |
|
I think we'll just have to make it clear their updating is in no way an expectable part of normal prerelease versions. But still having direct access to this deck strength methodology inside Forge seems worth it, especially because we'll later also be able to reuse these lists (especially gamechangers) for AI evaluations or difficulty scaling in adventure mode. I'd love to have a more solid approach to obtain combos as part of some official export, but that can be revisited in the future if that situation changes. Great work! |
|
I wouldn't mind seeing the scripts - it's certainly better if we can automate the process of updating these lists. Can include them in the PR via the |
|
I've fixed some formatting and added an extra test to detect future formatting issues. This is optional, I can cut it if needed, but it's been useful so far. @Jetz72 Sounds good, I'll look into cleaning my scripts up and adding them. |
|
@tool4ever Thanks! Hopefully this fixes the redundant text. |
|
As a non-blocking future consideration, I don't think the lines you commented out in the lists will be preserved in a future run of the scraper script. Do they cause issues if they're not commented out? |
|
@Jetz72 I don't think so, or at least typos etc. weren't causing a problem before I commented them out. The test I added will catch them, though. Note that the script doesn't create a perfect version of these files, for mass land denial I added additional cards. |
…rder-prefs * upstream/master: (50 commits) Add Commander bracket calculation and bracket views (Card-Forge#10672) Route opponent-hand reveal and discard through FloatingZone on desktop (Card-Forge#10660) Lobby update fixes and null-card guard in CMatchUI.updateCards (Card-Forge#10618) Correct Bilbo, Thief in the Night Stingcaster Mage (FRA leak) (Card-Forge#10484) Bloodline Recollector // Ancestral Craving Bilbo, Thief in the Night PH23: Mr. Monopoly, On the Go (Card-Forge#10666) Card cleanup: 2026-05-13 Consolidate inner event codec onto CObject streams (Card-Forge#10664) Add files via upload (Card-Forge#10653) Realm of legends 1.045: Mapfixes (Card-Forge#10656) Fix CardView IdRef substitution / retire UI_NETPLAY_COMPAT (Card-Forge#10662) Serialize CardViews missing from host tracker (Card-Forge#10644) Fix Gift on non-permanents CounterAiCategory: positive/negative/neutral grouping for Counters (Card-Forge#10650) Fix lobby start crash for auto-generated deck variants (Card-Forge#10643) Hotfix split cards crash (Card-Forge#10652) Consolidate net archive deck storage classes (Card-Forge#10640) CardFactory: build traits last (Card-Forge#10649) ... ; Conflicts: ; forge-gui/src/main/java/forge/localinstance/properties/ForgePreferences.java

This adds Commander bracket support to Forge deck browsing.
Implemented:
The current calculator rules cover:
Validation:
mvn -pl forge-gui-desktop -am -DskipTests compile passes.
Thanks to Codex for help with code and translations