Upgrades
In short
16 items bought with coins in the between-innings shop. Each sits in a slot: Bat, Glove and Cleats hold one item (buying another replaces it); Charms stack, even copies of the same charm. Their effects are stat modifiers, and their tags feed Synergies. Two Epic items start locked and are unlocked with meta points under PERKS.
How it works
- Shop pool: every upgrade that is unlocked (
unlockedByDefault, or bought under PERKS). See Shop and Economy. - Offers:
RunConfig.shopOfferCount(3) offers per visit, drawn without repeats by rarity weight: Common 6, Rare 3, Epic 1. Bat / Glove / Cleats items you already own are left out; Charms can be offered again. - Price:
ceil(cost x shop multiplier): x1 Normal, x1.25 Medium, x1.5 Hard (see Difficulty). - Stacking:
RunState.AddUpgraderemoves whatever is in the same slot unless it is a Charm (Stacks => slot == Charm). All modifiers then stack through one rule:final = (base + sum of Adds) x (1 + sum of Percents), never below 0. Percent values add together, they do not multiply. See Upgrades and Synergies and Stats System. - Buttons (#38 currency icons): the shop’s BUY and REROLL buttons show a coin icon and the price; the PERKS popup’s buttons show the purple points gem and the price.
- Index: the main menu INDEX lists every upgrade under EQUIPMENT, in sub tabs BATS, CLEATS, GLOVES and CHARMS, Common first, then Rare, then Epic, with its modifiers and tags (Index Screen).
- PERKS popup (lobby top bar): “PERK UNLOCKS” lists locked upgrades with a points-price button; the PERKS tab shows a marker when you can afford one. See Meta Progression.
Numbers
| id | Name | Slot | Rarity | Price N / M / H | Tags | Modifiers | Unlock |
|---|---|---|---|---|---|---|---|
maple_bat | Maple Bat | Bat | Common | 5 / 7 / 8 | Power | +8% Power | default |
corked_bat | Corked Bat | Bat | Rare | 9 / 12 / 14 | Power, Risky | +18% Power, -10% Contact | default |
launch_bat | Launch Pad Bat | Bat | Rare | 8 / 10 / 12 | Lift | +5 Launch Angle (flat, degrees), +4% Power | default |
titanium_bat | Titanium Bat | Bat | Epic | 14 / 18 / 21 | Power, Risky | +30% Power | 80 PTS |
sweet_tape | Sweet Spot Tape | Glove | Common | 5 / 7 / 8 | Contact | +20% Contact | default |
batting_gloves | Batting Gloves | Glove | Common | 5 / 7 / 8 | Timing | +15% Timing Window | default |
pine_tar | Pine Tar Grip | Glove | Rare | 8 / 10 / 12 | Power, Contact | +6% Power, +10% Contact | default |
sweet_spot_sticker | Sweet Spot Sticker | Glove | Rare | 7 / 9 / 11 | Green, Contact | +0.15 Green HR Score (flat, +15%), +10% Contact | default |
spikes | Spiked Cleats | Cleats | Common | 5 / 7 / 8 | Power | +6% Power, +2 Launch Angle (flat) | default |
comfy_cleats | Comfy Cleats | Cleats | Rare | 9 / 12 / 14 | Endurance | +2 Extra Outs (flat) | default |
lucky_penny | Lucky Penny | Charm | Common | 4 / 5 / 6 | Greed | +1 Coins per HR (flat) | default |
showboat | Showboat Chain | Charm | Rare | 8 / 10 / 12 | Style | +25% HR Multiplier | default |
coupon | Reroll Coupon | Charm | Common | 3 / 4 / 5 | Greed | +1 Reroll Discount (flat) | default |
green_light | Green Light | Charm | Common | 5 / 7 / 8 | Green | +0.25 Green HR Score (flat, +25%) | default |
hot_streak | Hot Streak Wristband | Charm | Rare | 8 / 10 / 12 | Green, Style | +0.15 Green Streak Score (flat, +15% per green in a row) | default |
metronome | Pocket Metronome | Charm | Epic | 12 / 15 / 18 | Timing, Style | +25% Timing Window, +15% HR Multiplier | 60 PTS |
Descriptions: Maple Bat “Solid wood.”, Corked Bat “Don’t tell the umpire.”, Launch Pad Bat “Built for lift.”, Titanium Bat “Definitely not league legal.”, Sweet Spot Tape “Bigger barrel feel.”, Batting Gloves “Quicker hands.”, Pine Tar Grip “Sticky and powerful.”, Sweet Spot Sticker “You can feel the barrel.”, Spiked Cleats “Dig in and drive.”, Comfy Cleats “Stay in the box longer.”, Lucky Penny “Finders keepers.”, Showboat Chain “Admire every dinger.”, Reroll Coupon “Clipped from the program.”, Green Light “Perfect swings pay more.”, Hot Streak Wristband “Keep the greens coming.”, Pocket Metronome “Perfect rhythm.”
| Count | Value |
|---|---|
| By slot | Bat 4, Glove 4, Cleats 2, Charm 6 |
| By rarity | Common 7, Rare 7, Epic 2 |
| Rarity weights in the shop | Common 6, Rare 3, Epic 1 (ShopService.RarityWeight) |
In the code
| File | What it does |
|---|---|
Assets/_Project/Scripts/Data/DefaultContent.cs | Upgrade(id, name, slot, rarity, cost, description, tags, modifiers...); Metronome and Titanium Bat locks |
Assets/_Project/Scripts/Data/UpgradeDefinition.cs | EquipmentSlot, Rarity, Stacks, Describe() |
Assets/_Project/Scripts/Upgrades/ShopService.cs | Offers, rarity weights, buying, rerolls |
Assets/_Project/Scripts/Run/RunState.cs | AddUpgrade (slot replace / charm stack), PriceOf, RecalculateStats |
Assets/_Project/Scripts/UI/LobbyNav.cs | PERKS tab and PERK UNLOCKS popup |
Assets/_Project/Scripts/Data/IndexCatalog.cs | Lists upgrades as Equipment in the INDEX |
Gotchas
- Bat upgrades also pick the 3D bat model shown (
BatModelLibraryhas entries for all four), unless a bat cosmetic is equipped, which overrides the look. See Cosmetics. - Buying a new Bat, Glove or Cleats item throws away the old one with no refund.
- Green HR Score and Green Streak Score are flat Adds even though they read as percentages.
Coins per HR,Extra OutsandReroll Discountare read withGetInt(rounded), so a fractional value would round.- “Perks” in the lobby means locked shop upgrades; batter “level perks” are a different thing (see Batters).
Related
- Synergies: tag bonuses
- Upgrades and Synergies: the rules
- Shop and Economy: coins, offers and rerolls
- Stats: what each stat does
- Add an Upgrade