DATABASE / FORMULAS
Snelle formuleoverzicht
Geen afleidingen, alleen conclusies. Alle formules zijn terug te vinden in OpenFrontIO/src/core/configuration/Config.ts.
⚠ Leestips
Formules gebruiken de variabelennamen van het spel (tick, tiles, troops).
10 ticks ≈ 1 seconde. De constante DEFENSE_DEBUFF_MIDPOINT = 150,000 tiles komt rechtstreeks uit de broncode.
- Vlakte-terrein
- mag = 80, speed = 16.5
- Hoogland-terrein
- mag = 100, speed = 20
- Berg-terrein
- mag = 120, speed = 25
- Verdedigingspost-bonus
- Binnen 30 tiles: mag ×5, speed ×3
- Fallout-zone straf
- mag *= (5 - falloutRatio × 2)
- Groot-leger sigmoïde straf
- defenseSig = 1 - sigmoid(defender.tiles, ln(2)/50000, 150000)
- Verraadstraf
- Verdediging ×0.5, Snelheid ×0.8, duur 300 ticks (30s)
- Grote-aanvaller bonus
- Als tiles > 100k: bonus = (100k/tiles)^0.7
- Bevolkingslimiet-basis
- 2 × (0.6 × tiles^0.6 × 1000 + 50.000) + Σ(cityLevel × 250.000)
- Bevolkingstype-multiplier
- Mens ×1 / Bot ÷3 / Nation Easy ×0.5, Med ×0.75, Hard ×1, Imp ×1.25
- Troepengroei
- toAdd = (10 + troops^0.73 / 4) × (1 - troops / maxTroops)
- Basis-goudinkomen
- Spelers 100 / tick, Bots 50 / tick (× goldMultiplier)
- Stad-troepenbonus
- Elk stadsniveau geeft +250.000 troepenlimiet
- Trein-inkomsten
- baseGold (bondgenoot 35k / team 25k / zelf 10k) − distPenalty (5.000 × max(0, citiesVisited − 9)), min 5.000
- Handelsschip-inkomsten
- floor( (75.000 / (1 + exp(-0.03 × (dist - 300))) + 50 × dist) × goldMultiplier )
- Handelsschip-spawn
- spawnRate = floor((100 × 1/(rejections+1)) / (1 - sigmoid(numShips, ln(2)/50, 200)))
- Handelsschip-limiet
- Globaal 150 schepen (v24)
- Atoombom explosieradius
- inner 12 / outer 30 tiles
- Waterstofbom explosieradius
- inner 80 / outer 100 tiles
- MIRV-kernkop
- inner 12 / outer 18 tiles
- SAM-cooldown
- 90 ticks (9s)
- SAM-bereik-formule
- samRange(level) = 150 - 480 / (level + 5); standaard 70, top ≈ 140, max 150
- SAM-onderscheppingsdoelen
- Alleen AtomBomb / HydrogenBomb; MIRV-lichaam en kernkoppen immuun
- Voor-vuurvenster
- tickBeforeShooting = nukeReachTick − samReachTick ≥ 0
- Alliantieduur
- 3000 ticks ≈ 5 minuten
- Verlengingswaarschuwing
- Beide partijen krijgen 300 ticks (30s) voor afloop melding
- Verlengingsregels
- Wederzijdse instemming = automatische verlenging; eenzijdige instemming = verlengingsvenster
- Verraad direct effect
- Activeert automatisch embargo; verdediging ×0.5, snelheid ×0.8, duur 300 ticks
- Spawn-immuniteit
- 50 ticks (5 seconden) aanvalsimmuniteit
- Willekeurige spawn-fase
- Singleplayer 100 turns / Multi willekeurig 150 turns / Multi vast 300 turns