Tap β on a card to search the database or create a custom card.
Take screenshots of your HUT collection in-game, drop them here, and AI will identify the cards and add them to your BUHUTO collection.
Expect about 10β15 seconds of processing per screenshot (one Claude API call per image). Larger batches take proportionally longer.
Required to use Claude AI vision. Get your key at console.anthropic.com. The key is stored only in your browser.
Once you set the guide lines, they are saved β load new images and scan: the same 2Γ6 split is used automatically (in-game cards stay in the same slots). The server crops 12 separate card images and sends each to Claude.
Preview β see the full grid here before anything is sent to AI. Mouse wheel zooms the image and lines (zoom centers on the pointer). Resize the window or scroll if needed.
Guides: 1) top of top row, 2) between rows, 3) bottom of bottom row. Vertical lines separate the six cards. Coordinates are saved in your browser.
Uniform split: margin % trims menus; cells show as a grid. Change the numbers to refresh the preview.
Values are 0β1 relative to image width (vertical lines) and height (horizontal lines). They are stored in the browser (localStorage) and sent to the server as JSON when scanning.
ββTap β on a card to search the database or create a custom card.
Drag the 4 corner points over the card. Coordinates update in real-time as normalized values where top-left is 0,0 and bottom-right is 1,1.
Card Browser
Select the cards you actually own in NHL HUT. Optimization uses only these cards.
Tips: Click a card to add it to your collection. Ctrl+Click toggles collection membership. Shift+Click toggles temporary cards.
Cards in collection: 0
Current database: 0 cards
Available online: 0 cards
New cards: 0 cards
Operation completed successfully.
Save your current lineup to load it later
Browse and load saved team configurations
Beeq's Ultimate Hockey Ultimate Team Optimizer
BUHUTO is a team building optimizer for NHL HUT (Hockey Ultimate Team). It helps you find the best lineup by maximizing chemistry bonuses, OVR ratings, and managing salary cap constraints.
CHARA (Continuous Hill-climbing with Aggressive Random Adjustments) uses 16 parallel Web Workers in a tournament phase to explore different lineup combinations simultaneously. After finding the best starting point, it continues optimizing with random multi-swaps for maximum exploration.
Select 3+ cards with Alt+Click, then run Choice Pack Runner from the Actions menu. It simulates adding each card to your team and tells you which one would give the best improvement - perfect for choosing from reward packs!
Your collection, lineups, and settings are automatically saved to localStorage - they persist between sessions. You can also use Export Data / Import Data in the Actions menu to backup or share your collection, lineup, optimizer settings (including custom rules), and custom cards.
BUHUTO is a one-man project, coded entirely by chatting with the brilliant Claude Opus π€
If something breaks, or new cards/chemistry combos don't appear immediately in BUHUTO, that's totally normal. I'll do my best to add new content within the same day.
β€οΈ No ads. No tracking. No account required.
Just pure optimization, made with love.
π‘ This is a fan-made tool and is not affiliated with EA Sports or the NHL.
Beeq defaults: OVR / AP / Salary weights, all X-Factor weights, center faceoff 90, must-include line bonus 30, soft-exclude penalty 100, Soft exclude in Stacksmith on, Lock must-include off. Saves immediately. Custom rules, CHARA, and other options are unchanged.
Automatically moves the forward with the highest faceoff rating to center position in each line.
Automatically places left-handed players on right wing (RW) and right-handed players on left wing (LW) for better one-timer positioning. Also applies to defense pairs.
When enabled, all optimization modes (CHARA, line optimizer, web workers) will ignore salary cap violations and allow any team composition regardless of salary cost.
Sets how many parallel workers CHARA uses in tournament phase. Takes effect on next CHARA start.
When enabled, pressing Play first runs a chain-by-chain Stacksmith Lineup pass to produce a strong starting lineup, then hands it off to CHARA for refinement. Hard custom rules (must include / must exclude players, team and nationality counts) are honored throughout. If the seed cannot satisfy hard rules, CHARA starts without it.
When CHARA stagnates and swaps a weak line with a StackSmith recommendation, this timeout controls how long CHARA tries to recover from a salary cap violation before restoring the previous lineup. Set higher for more time to fix cap issues.
When enabled, Stacksmith counts QUICK DRAW X-Factor score only when the player is at center and has enough faceoffs.
When off, must-include is not pre-placed: that card stays in the pool, and each candidate line gets a bonus (below) for still-needed required players. When on, the old behavior: place and lock early.
When off, excluded players are removed from the pool (hard). When on, they stay in the search pool; each time they appear on a line candidate, that lineβs rank is reduced by the penalty. Final lineup still cannot contain them (candidates with excluded cards are skipped).
When enabled, optimizer modules are limited by your S1/S2/S3/S4/S5 XP token budgets and reject lineups that exceed them. When disabled, XP token counts are ignored.
Upgrade costs are cumulative per card tier (1 + 2 + 3 + ...). Example: 80β85 costs 15 tokens total.
Add constraints that lineups must satisfy. The optimizer will reject any lineup that doesn't meet these rules.
Adjust how much each boost type contributes to the optimization score. Higher values = more priority.
Assign point values to X-Factor abilities. Points scale with tier: Tier 1 = 1Γ, Tier 2 = 2Γ, Tier 3 = 3Γ.
Season 5
BUHUTO is now updated for NHL 26 Season 5 β captains, chemistry, salary rules, and tools follow the new season.
Latest
When you hit Play, BUHUTO now leads with STACKSMITH LINEUP by default: it pre-builds a legal, chemistry-savvy shell of your team before CHARA does the deep grind. You skip a mountain of bad lineups, so the tournament engine spends time where it actually pays off β in plain terms, you get a lot of hours back.
STACKSMITH might look like three buttons and a progress bar, but under the hood it is clean, clever combinatorial work β it ranks viable chemistry lines from your collection and folds them in step by step. Sometimes the best math is the kind that doesnβt look like math at all. Prefer the legacy βcoldβ lineup start? Clear the checkbox Actions β βοΈ Settings β βRun Stacksmith seed before CHARA (Play)β β with it off, CHARA begins from a blank sheet just like the old days.
If your BUHUTO ever feels like a junk drawer after a triple-OT barnburner β sliders everywhere, weights you donβt remember touching β that big scarlet Reset all settings to default is your βundo chaosβ button. One honest click and youβre back to Beeq defaults β¦ Beeq isnβt in the room, but heβd probably nod.
Also new
Card Browser now has a much smarter search. Type several terms and itβll match them across name, team, nationality, position, card type, OVR and X-Factors β all at once.
Chemistry combos are now searchable too β the Combos panel has the same multi-token search, so you can filter combos by the players, teams, nationalities or card types that trigger them.
Card Browser performance β the grid now only renders the cards you can actually see (plus a small buffer) and lazy-loads images as you scroll. Typing into the search is instant, even right after a fresh load, and scrolling stays smooth no matter how many cards match.
Previously
New
Find high-scoring multi-chemistry stacks for one line: forwards, defense, or goalies. Search runs in the background (UI stays responsive). See the full database and stacks you can field from your collection (independent search), ranked by weighted boost / card (not the same as header team SCORE). Send a stack straight to your lineup (FWD lines 1β4, DEF 1β3).
Stop ends the search safely; Clear resets the lists. The status bar animates while a search is running.
Big update
π Requires your own Anthropic API key β screenshot reading uses Claude vision; paste your key in the Import from Screenshots modal when prompted.
Add cards to your collection by uploading in-game screenshots β BUHUTO reads each card from the image and matches it to the master database. No more line-by-line manual entry.
Season 4 & more
Season 5 league salary cap is 200M; base AP stays 5. Chemistry combos refresh with the season β CHARA uses the updated set.
New card types (including Prototypes), refreshed logos β CHARA optimizes with the full updated combo set.
180M (S4) β 200M (S5) Β· Base AP 5
Pre-swap validation, rule order, case-insensitive chemistry.
Admin tools β pick one above.
Pick a tool above: Usage, HUT Scraper, etc.
| Status | DB | Name | OVR | Pos | Type | Team | Nation | Height | Weight | Salary | Shoots | URL | JSON |
|---|
| Date | Unique | Loads | CHARA | CHARA time | Choice |
|---|
Tallennus: dataDir + git. Kuvapohjainen editori / Claude myΓΆhemmin.
Drag one or more screenshots here. Viewer opens in 1:1 scale. Mouse wheel zooms in/out, drag pans. Hold Shift and drag to create crop; move crop by dragging inside it, resize from any corner. Press C to send current crop to Claude Vision.
Poista tai muokkaa tallennettuja rivejΓ€. Muokkaa tΓ€yttÀÀ lomakkeen Manual-nΓ€kymΓ€ssΓ€. Haku: vΓ€lilyΓΆnti = kaikki sanat (AND); isot AP / OVR / SAL = vain kyseinen boosti, pienet kirjaimet myΓΆs nimiin (esim. ap β Tappara).
Analyze which card would benefit your team the most
Create a custom card for players not yet in the database, or update Fantasy card ratings
Create a temporary card for new players not yet in NHLHutBuilder
Let's be real - coding with AI isn't cheap!
But it's what makes BUHUTO possible: a free, ad-free, no-tracking tool built entirely through conversations with Claude AI.
Thank you for using BUHUTO! Whether you donate or not, I'm happy you're here. β€οΈ