On this page
Key facts in 30 seconds
- OPBE — Open Battle Engine, OGame fork with improvements
- Combat runs max 10 rounds, then draw
- Shields regenerate between rounds
- Hit-Ship Limitation (HSL) prevents overkill transfer
- Defense repair 50–70% — part of defense recovers post-battle
Four blocks of combat mechanics
Xterium's combat engine is called OPBE (Open Battle Engine). It's an improved OGame combat engine with custom additions — HSL (Hit-Ship Limitation), deterministic resolution, defense repair.
Each round runs four interconnected calculations:
| Block | Formula | Purpose |
|---|---|---|
| Damage per shot | damage × shots | Базовый урон одного корабля за раунд |
| Shield absorption | cells × cellValue | Сколько щит блокирует |
| Hit-Ship Limitation | life × hit / count | Защита от overkill transfer |
| Defense repair | random(50%–70%) | Восстановление защиты после боя |
Combat runs up to 10 rounds. If neither side wins in 10 — draw. All math is server-side deterministic (RNG only in debris and defense repair), no explicit seed orchestration.
Numerical example
Battleship attacks rocket launcher:
- damage_per_shot = 1000 (with weapon tech 10)
- shots = 7 (standard for battleship)
- shieldCellValue = 20 (typical launcher)
- currentCells = 200 (full shield)
Calculation:
- pureDamage = 1000 × 7 = 7000
- cellsDestroyed = ceil(1000 / 20) = 50
- absorbed = min(350, 200) × 20 = 4000 (shield held part)
- hullDamage = 7000 − 4000 = 3000
If the launcher had 4500 HP — it lost 3000, 1500 remain. Next round, battleship finishes it.
Why did my big fleet lose to a small defense?
HSL probably kicked in — your heavy ships transferred damage to targets they couldn't actually reach. Plus defense repair recovers 50-70% after each round. Big defense + small fleet = many rounds = much repair = you lose everything.
Can I disable HSL?
No — it's a server constant. Only the universe admin can change it. Most Xterium universes have HSL on by default.
What is a «draw»?
10 rounds done, neither side destroyed → draw. Attacker leaves with no loot, defender with no debris. Happens between roughly equal forces.
Is there RNG in combat?
In damage/shields — no (deterministic). In debris — no (fixed 50%). In defense repair — YES (50-70% per unit). Same attack twice on the same planet can give different results due to repair phase.
For min-maxers
Exact formulas from the OPBE module. Player TL;DR: «combat runs round-by-round, shields regen, defense sometimes recovers».
Block 1 — Damage:
pureDamage = damage_per_shot × shots
absorbed = min(cellsDestroyed, currentCells) × shieldCellValue
hullDamage = max(0, min(pureDamage − absorbed − bounced, maxHullOnHitShips))
Block 2 — Hit-Ship Limitation (HSL):
maxHullOnHitShips = fighters.life × max(0, hitShips) / max(1, fighters.count)
HSL is the main difference between OPBE and classic OGame. Without HSL, one death star could «kill» 1000 fighters in one shot via damage transfer. With HSL, the death star kills only proportional to how many fighters it actually hit. Active when the universe's combat-constants config has the «hit-ship limit» flag enabled.
Block 3 — Defense Repair (post-battle, RNG): defense with id > 400 may «restore» with probability 50–70%. RNG roll per defense unit independently.
Quick citation reference
Source: Xterium engine OPBE (Open Battle Engine) module. Constants: damage_per_shot, shield cells, HSL active, defense repair 50–70%, max 10 rounds. Applies to: Xterium REV 207+.