fertig-classic-games/assets/fx
Brian Fertig 3bad628968 fix(mastervega): balance planetary defense and improve AI attack logic
- Replace flat planetDefenseBase (20) with proportional planetDefenseScale
  (0.06), so colony defense damage scales purely with current defenseHp.
  A near-depleted colony now barely scratches attackers, while a fully
  tech'd one still tops out ~110 damage — fixing "attacked with the
  strength of a much-better-defended planet" (Brian, 2026-08-14).

- Add AI war memory: track consecutive losses per enemy and escalate
  attackMultiplier up to 3x so repeated losing attacks stop dribbling
  small fleets. A win resets the streak. Prevents permanent phoney wars
  where both sides build to equal strength and nothing moves.

- Show "Under Attack" notice (one-button, no formation picker) when AI
  attacks the player, since formation choice is meaningless for defense.

- Add planetary beam fire SFX for combat view.

- Add event `seq` cursor for war memory to survive event list trimming.

- Full test coverage for planet damage formula and AI escalation behavior.
2026-08-14 14:24:22 -06:00
..
tetrisattack
vega fix(mastervega): balance planetary defense and improve AI attack logic 2026-08-14 14:24:22 -06:00
8bit-action.mp3
8bit-activate.mp3
8bit-card.mp3
8bit-count.mp3
8bit-explode.mp3
8bit-explode2.mp3
8bit-jump.mp3
8bit-lose.mp3
8bit-move.mp3
8bit-select.mp3
8bit-win.mp3
battle-arrows.mp3
battle-cannon.mp3
battle-catapult.mp3
battle-gunfire-classic.mp3
battle-gunfire-modern.mp3
battle-helicopter.mp3
battle-missle.mp3
battle-submarine.mp3
battle-sword.mp3
battle-tank.mp3
battleship-hit.mp3
battleship-launch.mp3
battleship-miss.mp3
bingo-balls.mp3
card-deal.mp3
card-place.mp3
card-show.mp3
card-shuffle.mp3
casino-blackjack.mp3
casino-lose.mp3
casino-win.mp3
chip-bet.mp3
click.mp3
coins.mp3
countdown-01.mp3
countdown-02.mp3
dice-roll.mp3
energy-hum.mp3
engine-fast.mp3
engine-heavy.mp3
engine-medium.mp3
engine-rev.mp3
engine-start.mp3
firework.mp3
gem-01.mp3
gem-02.mp3
gem-04.mp3
gem-05.mp3
gem-big-drop.mp3
gem-chain.mp3
gem-drop.mp3
jello-monsters.mp3
kart-coin.mp3
kart-flatten.mp3
kart-hit.mp3
kart-shell.mp3
kart-shrink.mp3
kart-spin.mp3
kart-spinner.mp3
kart-star.mp3
kart-thump.mp3
laser-zap.mp3
march.mp3
mastermind-access-denied.mp3
mastermind-access-granted.mp3
mastermind-calculate.mp3
mastermind-color.mp3
mastermind-glitch-01.mp3
mastermind-glitch-02.mp3
mastermind-match.mp3
mastermind-place.mp3
monopoly-expense.mp3
monopoly-paid.mp3
monopoly-pay.mp3
monopoly-purchase.mp3
pencil-write.mp3
piece-click.mp3
purchase.mp3
rewind.mp3
roulette.mp3
scifi-explode.mp3
scifi-launch.mp3
scifi-plink.mp3
scifi-plonk.mp3
scifi-reveal.mp3
scifi-riser.mp3
scifi-woosh.mp3
squash.mp3
squish.mp3
sw-dark-1.mp3
sw-dark-2.mp3
sw-dark-3.mp3
sw-light-1.mp3
sw-light-2.mp3
sw-light-3.mp3
sword-hit.mp3
sword-slice.mp3
ta-50cal.mp3
ta-machinegun.mp3
ta-nuclear.mp3
ta-rocket-1.mp3
ta-rocket-2.mp3
ta-unit-loss.mp3
ta-vehicle-loss.mp3
ui-activate.mp3
ui-attach.mp3
ui-chime.mp3
ui-flip.mp3
ui-pick.mp3
ui-place.mp3
victory-short.mp3
water-dry.mp3
water-raise.mp3
water-sink.mp3
water-splash.mp3
woosh.mp3
zuma-explode.mp3
zuma-hit.mp3
zuma-lose.mp3
zuma-shoot.mp3
zuma-start.mp3
zuma-win.mp3