Multi-Objective Build Optimizer — Updated for 0.25.4
The build tool finds character builds under three modes: Soldier (max damage, min cost) and Looter (max cases looted per day, net of the $ that loot is actually worth against cost) both fight and both let you fold combat income into their cost ladder; Tycoon (max $/day) has no combat at all — it pins every combat skill, gear slot, ammo and food to nothing and optimizes pure economy income, so it never loots a case or deals damage. All three optimize the same 14 skills (9 combat + 5 economy) plus gear, ammo, food, companies and prestige, on one shared skill-point budget, given your level, rank/battle bonuses, and any pins you set. Looter forces the Cases cost factor on for this reason — without it, the optimizer would chase raw case count without any sense of what those cases are worth.
Soldier and Looter give you the best build at each net-cost tier rather than a single "best" build, sweeping from −0.10 (a build that turns a $0.10 profit per 1K damage, or per case for Looter) up to the maximum-damage (or maximum-cases) build in steps of 0.02. Tycoon instead spans a spectrum of skill-point investment levels — since combat is pinned off, this is a straight "invest more, earn more" ladder rather than a damage/money trade-off — labeled Lean / Scaling / Full on each card.
The optimizer is NSGA-II (Non-dominated Sorting Genetic Algorithm II), a well-established multi-objective evolutionary algorithm. It works by evolving a population of candidate builds through selection, crossover and mutation. A progress bar under the loading animation tracks generations completed across every worker a run spawns.
A separate single-objective run identifies the highest-damage skill allocation for the highest gear tier, which becomes the gold-bordered "highest damage" card appended to Soldier/Looter results.
Net cost = gear durability cost + consumables (ammo, food, pill) − scrap resale from used gear − expected case income − battle loot − company engine income − work income − employee profits. All gear cost figures are durability-weighted: a piece that lasts two days costs half as much per day as one that breaks. The "net cost per 1K damage" efficiency figure divides net cost by daily damage, and acts as our primary comparison metric for Soldier/Looter builds.
Each income source is its own toggle under Cost Factors and only counts when switched on: Cases and Scrap from combat, Companies (Automated Engine income), Battle loot (off, a cautious single-battle ceiling, or an average-day estimate), Work (wage work plus self work off the Energy/Production/Entrepreneurship skills), and Employee profits (what workers on your imported companies earn you, net of wages).
Each company slot holds an Automated Engine tier (1–7) or is marked Inactive — importing a profile brings in your disabled companies as Inactive tiles instead of hiding them, and the icon on each tile shows what it produces. The Pin companies toggle keeps the pinned Companies skill level in lockstep with however many tiles are currently active, so the two never drift out of sync as you add or deactivate companies. The Companies skill level caps how many tiles may be active at once — extra tiles beyond the cap are ignored by the optimizer.
Prestige points are a separate budget from regular skill points. Pin them per-skill with the steppers under Pin Skills; unpinned ("X") leaves the optimizer free to decide. Multiple skills can stack prestige levels, and cost rises as a power of the number of skills you've prestiged (each additional stacked skill roughly doubles the point cost of the next one).
Each gear tooltip shows up to three rows:
Why does the same tier show identical gear stats across all build cards? The "Optimal" recommendation is build-aware, but for most armor slots the optimal quality band is robust — the damage-per-price argmax lands on the same point whether the overall build costs 0.15 or 0.25 per 1K damage, because the marginal contribution of, say, pants armor to total damage is small relative to the price curve shape. The 0.15-vs-0.25 difference between cards comes from choosing different tier combinations and skill distributions, not from buying different rolls of the same item. Weapons are the exception — the Optimal recommendation there sweeps a 5x5 ATK/CritC quality grid and is more sensitive to build context.
The tool needs a Warera API token to fetch live market prices, stat ranges, and transaction history. Without one it falls back to built-in defaults, which may be stale. Token is stored locally in your browser and is never sent anywhere except the Warera API. If you see "Default prices" in the header, click the token prompt that appears after optimizing to enter yours.