Widen centre drain gap; calm the music down
Gameplay (you should now be able to lose balls): - flipper length 170 -> 154, so the rest-position tips meet with a ~50px gap instead of ~18px - balls dropping down the middle now drain freely - keep the outlane guard posts so side drains stay fair (all drains now happen through the widened centre), and verify with autoplay: centre drains = 40, side = 0, ~10s average ball life for the bot Audio (was a harsh machine-gun): - completely rewrote both music loops: no more square waves or noise hats in the music; sparse triangle bass + soft melody with rests, at lower volume (play loop now ~47% audible windows, was a solid wall) - softened the wall-hit thud (frequent during rallies) and the charge ticks
This commit is contained in:
@@ -525,8 +525,8 @@ class Game:
|
||||
if self.charging:
|
||||
self.was_charging = True
|
||||
self.charge = min(1.0, self.charge + 0.022)
|
||||
if self.frame % 5 == 0:
|
||||
self.sfx.play("tick", vol=0.3 + self.charge * 0.5)
|
||||
if self.frame % 6 == 0:
|
||||
self.sfx.play("tick", vol=0.16 + self.charge * 0.25)
|
||||
if self.charge >= 1.0:
|
||||
self._fire()
|
||||
else:
|
||||
@@ -628,9 +628,9 @@ class Game:
|
||||
elif e.kind == "nudge":
|
||||
self.sfx.play("tick", vol=0.2)
|
||||
elif e.kind == "wall_hit":
|
||||
if self.wall_cool <= 0 and e.data > 9.5:
|
||||
self.sfx.play("wall", vol=min(0.5, (e.data - 9) / 5))
|
||||
self.wall_cool = 5
|
||||
if self.wall_cool <= 0 and e.data > 11.0:
|
||||
self.sfx.play("wall", vol=min(0.4, (e.data - 11) / 6.0))
|
||||
self.wall_cool = 9
|
||||
elif e.kind == "flipper_hit":
|
||||
if self.rng.random() < 0.3:
|
||||
self.sfx.play("tick", vol=0.25)
|
||||
|
||||
Reference in New Issue
Block a user