The Complete Manual
Everything about HD2 Galactic Market: the rules, the market, the math, the testing, and what’s coming. Skim the contents on the left, or read it top to bottom.
What HD2 Galactic Market is
HD2 Galactic Market is an unofficial, fan-made game mode layered on top of normal Helldivers 2. Late in the game most players have unlocked everything and have more Requisition than they can spend, so the economy stops mattering. HD2 Galactic Market brings it back: every piece of gear you bring costs Requisition you have to earn, and prices are set by what the whole community deploys rather than by us.
The game itself is untouched. You still dive, fight and extract in Helldivers 2. This website is the rulebook, the bookkeeper and the market. Rules are honour-system: the site can’t see your game.
Rules
Loadouts
- Every mission, each Helldiver buys exactly four stratagems, one primary, one secondary and one throwable, and uses only those.
- Armor and boosters are free and unrestricted.
- The same stratagem can’t fill two of your slots, but squadmates may bring the same gear.
- Prices are those of the front (Terminids, Automatons or Illuminate) you’re deploying to, and lock in when the squad deploys.
Operations
- Each Helldiver starts with 50,000 Requisition. That’s also the cap: earnings that would take you above 50,000 are lost.
- An operation is 3 missions on one front at one difficulty. Balances carry over between missions and operations.
- Failing a single mission ends the run. Completing the objectives without extracting still counts as a completed mission (at reduced pay).
- You can’t go bankrupt: a zero-cost loadout is always available, so money limits what you can bring, not whether you can play.
- Your score is how many missions and operations the squad survives.
Budget Blitz (under construction)
A planned elimination mode. Each round every Helldiver locks in a loadout and must earn more Requisition than it cost (optionally plus a margin that rises each round); anyone who doesn’t is out. Last one standing wins. It isn’t playable yet, and its rules may change.
Reporting a mission
After each mission the squad reports the outcome and how much Requisition each Helldiver earned. The debrief suggests earnings by difficulty; overwrite them with what you actually got.
| Difficulty | Extracted | Objectives done, no extraction |
|---|---|---|
| 10 · Super Helldive | 12,000 | 7,200 |
| 9 · Helldive | 11,000 | 6,600 |
| 8 · Impossible | 10,000 | 6,000 |
| 7 · Suicide Mission | 9,000 | 5,400 |
| 6 · Extreme | 8,000 | 4,800 |
| 5 · Hard | 7,000 | 4,200 |
| 4 · Challenging | 5,500 | 3,300 |
| 3 · Medium | 4,000 | 2,400 |
| 2 · Easy | 3,000 | 1,800 |
| 1 · Trivial | 2,000 | 1,200 |
The debrief also records reinforcements used. That’s work in progress: they’re logged but cost nothing today. Charging Requisition for reinforcements is an idea we may revisit.
Free gear
- Always free: R-2124 Constitution, P-2 Peacemaker and G-12 High Explosive.
- Each front also has 4 free stratagems, chosen from the cheapest gear. Each stays free for 4 days and then can’t be free again for 12 days; the slots are staggered so roughly one changes each day.
The Price Database
There are three markets, one per front, and each has four categories (stratagems, primaries, secondaries, throwables). Every loadout deployed is counted anonymously into that front’s queue. Once a day the market processes the queue and reprices every item, then rotates the free stratagems.
Popular gear gets more expensive; ignored gear gets cheaper. Because each front prices separately, a weapon that dominates the bugs but struggles against bots can be pricey on one front and a bargain on the other.
What we collect
Only the equipment in each deployed loadout, which front it was for, and what it cost — no names, accounts or identifiers. You can opt out when you start a campaign; the market then just doesn’t learn from your picks.
The pricing equations
The live algorithm is anchored popularity pricing. For every front and category with N usable items, each day:
1. Measure popularity
observed_i = (picks_i ÷ ownership_i) ÷ Σⱼ (picks_j ÷ ownership_j) w = ema × M ÷ (M + halfSample × N) M = picks today share_i ← (1 − w) × share_i + w × observed_i
- Ownership correction. Warbond, Superstore and limited gear is owned by fewer players, so its picks count ÷0.9.
- Confidence-weighted smoothing. A quiet day with few squads nudges popularity instead of whipsawing it; a busy day moves it by up to 0.35.
- Free gear stays in. Heavy use of the free Peacemaker lowers every paid sidearm’s share a little, so they get a bit cheaper to compete — but their order is kept.
- Free stratagems are frozen while free. People pick them partly because they’re free, which says nothing about their real price.
2. Set a target price
r_i = share_i × N (1 = exactly a fair share) target_i = baseline × F(r_i) F(r) = exp( U·tanh(εᵤ·ln r ÷ U) ) r ≥ 1, U = ln(ceiling) F(r) = exp( −D·tanh(ε_d·ln(1/r) ÷ D) ) r < 1, D = ln(1/floor)
F is a power law near a fair share that bends smoothly into a ceiling (3.5× baseline) and a floor (0.04× baseline). Because it’s bounded, no pattern of play can make prices run away or collapse — which is what lets the market run on its own.
3. Step toward the target
k = adjustRate × (upBias | downBias) × speed(price ÷ baseline) × pressure(heat) price ← price × exp( clamp(min(k, 1) × ln(target ÷ price), ln(1 − maxStep), ln(1 + maxStep)) ) speed(q) = max(minSpeed, 2qᵞ ÷ (1 + qᵞ))
- Prices move at most ±20% a day. Rises get a ×1.1 nudge and falls ×0.9.
- Cheap gear rises slowly and expensive gear reacts quickly, so a niche pick that suddenly catches on stays a bargain for a while — early adopters get rewarded.
- A category whose spending runs hot rises more slowly and falls faster (this only changes speed, never the target).
- Baselines are tuned so the average loadout price (the community’s picks at full price, weighted by how often each item is picked) is about 24,000. The market doesn’t force spending back to that number; if everyone chases the meta, the average loadout gets pricier.
Parameters (live values)
| anchored.baseline.stratagem | 5000 | Price of a stratagem at exactly fair-share popularity. |
| anchored.baseline.primary | 3300 | Price of a primary at fair-share popularity. |
| anchored.baseline.secondary | 2200 | Price of a secondary at fair-share popularity. |
| anchored.baseline.throwable | 1100 | Price of a throwable at fair-share popularity. |
| anchored.ema | 0.35 | How much a full-confidence batch moves smoothed popularity. |
| anchored.halfSamplePerItem | 8 | Picks per item at which a batch counts half. Protects against tiny, noisy batches. |
| anchored.elasticityUp | 0.8 | Exponent mapping above-fair popularity to price. |
| anchored.elasticityDown | 1.5 | Exponent mapping below-fair popularity to price. Higher = niche gear gets cheaper faster. |
| anchored.ceilingMultiple | 3.5 | Most popular items approach baseline × this (soft cap). |
| anchored.floorMultiple | 0.04 | Unused items approach baseline × this (soft floor). |
| anchored.adjustRate | 0.4 | Share of the gap to target closed each update. |
| anchored.upBias | 1.1 | Multiplier on price increases. |
| anchored.downBias | 0.9 | Multiplier on price decreases. |
| anchored.maxStep | 0.2 | Largest fractional change per update. |
| anchored.speedExponent | 0.5 | Cheap items move slower, expensive faster. 0 = everything moves at the same speed. |
| anchored.minSpeed | 0.35 | Lower bound for that speed multiplier. |
| anchored.spendPressure | 0.6 | How much hot category spending slows rises and speeds falls. |
| anchored.ownershipFactor.warbond | 0.9 | Observed warbond picks are divided by this. |
| anchored.ownershipFactor.superstore | 0.9 | Observed superstore picks are divided by this. |
| anchored.ownershipFactor.special | 0.9 | Observed picks of campaign/edition items are divided by this. |
| free.count | 4 | Stratagems free at any time, per faction. |
| free.tenure | 4 | Cycles each free stratagem stays free. |
| free.cooldown | 12 | Cycles before a stratagem can be free again. |
| minPrice | 10 | Lowest price for non-free gear. |
| maxPrice | 50000 | Highest price for any gear. |
The original prototype’s algorithm is kept for comparison as legacy. It nudges prices by how far popularity is from a fair share every day, which drifts: junk can never reach a fair share, so prices keep sliding toward the floor.
How we test the economy
A market simulator simulates months of play with squads of rule-based Helldivers (no AI): regulars, meta chasers, penny-pinchers, niche enjoyers, loyalists and chaos divers. Each scores affordable gear by its true strength against the front (u.gg tier plus hidden noise), personal taste and price, avoids pointless overlaps like two backpacks, and spends more when rich. Missions succeed or fail by squad strength and difficulty; a failure ends that squad’s run and they start a fresh one.
After each run, automated checks grade whether the prices did anything unwanted:
- no runaway prices (fail above 20,000), no collapse to the minimum, no drift once settled, low day-to-day noise
- meta gear priced above weak gear; niche gear cheap; free defaults don’t crush premium weapons
- average loadout price near 24,000; pricing pushes picks off the meta and onto niche gear compared with no prices
- free stratagems rotate; prices differ by front; adapts to balance patches; resists brigading
Results: the anchored algorithm passes 9 of 12 scenarios and warns on 3 (flat demand narrows price spreads; a large brigade gets close to, but not past, the price ceiling). Full details in docs/PRICING.md.
Data sources
- The catalog (93 stratagems, 55 primaries, 25 secondaries, 23 throwables) and its per-front OP…D ratings come from the u.gg tier lists (captured 2026-10-23). Ratings only set launch prices and power the simulations; live prices come from play.
- Stratagem codes, stratagem icons, weapon renders and damage/armor icons come from the Helldivers Wiki. All game art belongs to Arrowhead Game Studios and Sony Interactive Entertainment — see Credits & Legal.
- Launch-state presets for testing:
init tiers Tier list — Per-faction prices from the u.gg tier lists: OP/S+ gear starts expensive, D-tier starts cheap. The realistic launch state.init equal Everything equal — Every paid item starts at its category's baseline. Tests whether the market discovers the meta on its own.init tiers-inverted Inverted tiers — Stress test: meta gear starts dirt cheap and junk starts expensive. A healthy market should flip this around.init random Random — Log-uniform random prices between the soft floor and ceiling. Tests convergence from noise.init flat Flat (prototype) — Every paid item at one price (default 3000), exactly like the original Python prototype.Roadmap
- Squad lobbies with join codes so up to four players can join from their own devices (AWS AppSync + DynamoDB).
- Budget Blitz.
- Possibly charging Requisition for reinforcements.
- Server-side protection against spam submissions (rate limits per lobby).
Source code
The project is open on GitHub: github.com/winnieda/Helldivers2Endgame. The economic engine (engine/) is plain TypeScript shared by the website, the command-line tools and, later, the daily price job. The pricing reference is docs/PRICING.md.