orbit/js/combat
Brian Fertig 2f80ddfdb1 Add periodic random ship encounters with neutral ally escorts
- New EncounterDirector (js/combat/Encounters.js): pure, data-driven clock that rolls pirate / neutral / mixed encounters in neutral non-home systems on a ~45–90s interval at 50–60% chance, one at a time with a 30–60s cooldown, never during a live wave run or on a downed player.
- Neutral ally ships (js/combat/NeutralShip.js) on spritesheet frames 20–27: escort the player for a per-ship 10–15s window, engage the nearest pirate in mixed fights, then break off and fly off-screen; player-safe by construction (never targeted or damaged by ally bolts/seekers).
- Pirate targeting generalized so hostiles can draw aggro onto escorts when the player is out of range; escort and pirate bolts/missiles collide with each other but not the player.
- Group size scales with combat level (1–2 low → 4–5 high, bands in data/combat.json); encounter hostiles are one-shots so the fight ends when the sky clears.
- New 'volley' weapon pattern (wide staggered-speed fan) and owner-tagged bolts/missiles for ally vs enemy routing in Weapons.js.
- Neutral roster config + encounters section added to data/combat.json; EnemyTypes gains neutralTypeConfig/Ids/SheetList.
- Tests: dev/encounters.test.mjs (cadence, gate, weights, size bands), dev/neutral.test.mjs (roster, escort AI, targeting, no friendly fire), plus combat/xp test updates; CDP probes and encounter-hud-check for in-browser HUD verification.
2026-09-22 07:19:20 -06:00
..
Bullet.js
…
CamShake.js
…
Combat.js
…
CombatHud.js
…
CombatScene.js
…
CombatSfx.js
…
CombatSystem.js Add periodic random ship encounters with neutral ally escorts 2026-09-22 07:19:20 -06:00
Encounters.js Add periodic random ship encounters with neutral ally escorts 2026-09-22 07:19:20 -06:00
EnemyShip.js Add BOUNTY HUNT side quest with elite combat seam and verification 2026-09-20 20:10:07 -06:00
EnemyTypes.js Add periodic random ship encounters with neutral ally escorts 2026-09-22 07:19:20 -06:00
Fx.js
…
Missile.js
…
NeutralShip.js Add periodic random ship encounters with neutral ally escorts 2026-09-22 07:19:20 -06:00
StarDrift.js
…
Waves.js Add BOUNTY HUNT side quest with elite combat seam and verification 2026-09-20 20:10:07 -06:00
Weapons.js Add periodic random ship encounters with neutral ally escorts 2026-09-22 07:19:20 -06:00
XpManager.js
…
main.js
…