Bomb Sworders — Currently in development. Steam page here

A couch-multiplayer game about bombs and swords. And hitting bombs with swords. And explosions. And avoiding explosions.

Quick fixes v0.7.7.2

v0.7.7.2 has been released to the beta group!

Changes

  • Better thrownSword behavior near walls
  • Fixed potential inability to progress through new notifications
  • Fixed broken jump/dash after controller reconnect

The Groundwork Update!

v.0.7.7.1 has been released to the beta group!

This update focuses on getting the base stuff right (aka “groundwork”) but adds some new things too

  • 2 new levels added to the Experimental section: Crannies and Swordy Bombs
  • Rewrite of the controller handling
    • fixes issues when lots of controllers
    • better controller assignment, disconnecting, and reconnecting
    • when multiple buttons are mapped to jump (or dash), one button being pressed down no longer masks the inputs of the other buttons. (This allows an exploit, which will be fixed in a future update)
    • keyboard movement: the most recent directional-input takes priority (rather than zeroing-out the movement when both directional-inputs are held.)
  • Revision: jumping or dashing off an item will redirect that item’s velocity (and will enforce a minimum out speed)
  • Miscellaneous
    • improved AI on tutorial levels
    • more robustly freezes the game when the feedback form is shown (F10)
    • default keyboard controls now listed in the reference section

Minor Keyboard/Mouse update

v0.7.6.5 is now released to the beta group —
Thanks to those who provided feedback!

This minor update focuses on improving the (still quite rough) keyboard & mouse support.

  • Revised mouse aiming
  • Revised default controls
  • Better multi-monitor support: Mouse cursor is locked to the game window

Among other things, the default controls will be tweaked as time goes on.
* Additionally, note that in the current implementation, there is unfortunately some functionality on a gamepad that is not reproduced on keyboard and mouse. (use of recoil, aiming feet during limbo, dashing). This should be improved in the future.

There are 2 viable layout options in the current version:

layout 1

A : move left
D : move right
Space : jump
S : ghost

layout 2

A : move left
D : move right
W : jump
leftShift : ghost

others

E or Z or middleMouseButton : drop dynamite
leftMouseButton : aim sword (release to swing)
rightMouseButton : throw sword

Future updates will continue to address keyboard & mouse control but some ground work needs to be done before more polish/customization is possible.

The Malevolent Update

Update v0.7.6.2 has been released to the beta group!

We’re calling this one The Malevolent Update because it adds some sinister stuff:

  • 2 really (like really..) hard levels
  • + a new spooky song in shuffle on tough levels

There’s more too:

  • For Exploder Mode: Online high scores, songs start at random positions into playback so you won’t hear the same 40 seconds of music over and over and over, and the ability to skip past the score page so you can get into the next round quicker
  • First (very very rough) pass at keyboard/mouse controls
  • Misc changes: can jump on a stunned player to kill them, can jump on a ghost character, fixed rare timing issue with thrownSwords and limbo, automatically select the next tutorial upon completing one, added a notification reminding people about the F10 feedback menu

mode options

  • Rounds to Win
  • Handicapping: Whoever is losing starts the round with some free blast zones. Option only available when there are just 2 teams. In practice this has worked well, though I’m still searching for a clean way to do handicapping for > 2 teams playing..
  • Accelerate Endgame: Increases item generation rate after the first player dies.
  • Item Abundance
  • Limbo: When a character dies, instead of being removed from the game, they’re frozen in place. If they can cause a bomb to explode, they reenter the game.

Limbo has worked out really nicely so far in playtesting — provides hope for players who have died, but death remains punishment — all your blast zones are removed from the level when you die and the time spent in limbo is time that the other players are gaining territory with their blast zones.

game options

A few notes about the top-level game options

Lo, the main options screen

resolution

(thanks to this post on the “a clockwork berry” blog)

It tries to provide resolutions that are decent choices for the player:

  • less-than-or-equal-to the resolution of the display (as set in the OS’s display settings)
  • and at or near the aspect ratio of the display

quality

Most systems should be able to run the game no problem (if not at 1080p+ then likely at something like 720p), but just in case, there’s also a low quality setting:

  • Fewer particle effects
  • Simpler shaders
  • Less post processing effects
  • Replay system records at 15 fps (half the usual replay-framerate)

*Also, note the scrolling explanation text that appears when a button is selected. It seemed like a nice way to include more info when the layout space is constrained.. but I’m interested to hear people’s reactions.

contrast

A couple settings are useful in their own regard but somewhat targeting people who play on projectors. First is contrast and next is..

screen expand

Screen Expand is also useful if you want to make the preview-edges larger (the areas on the left and right sides of the gameplay that show a preview of the wrap-around)

other

  • An option to turn ON or OFF preview-edges
    • shameful secret: the current implementation of OFF does all the standard preview-edge computation.. then shades it 100% black.
  • Music volume
  • Sound effects volume
  • and a way to reset all options to their defaults

the parts of levels

The initial idea for the game was a multiplayer one constructed like this:

The red player runs on the red ground, jumps on the red walls — the red player collides only with red things. Likewise, the yellow player runs on the yellow ground, jumps on the yellow walls — it collides only with yellow things. But these environments would be visually overlapped — and the characters could interact with each other in this overlapped space.


Here, the yellow character (yellow circle) is trapped on the right side. But the red character can move freely through the yellow vertical line. Also, say if it was a shooting game: The red character would have a clear shot at the yellow character but the yellow character’s shot would be blocked by the yellow level geometry. (note: definitely not claiming that this example is good level design 🙂 )

There is something interesting about that concept — having to reason about positioning in 2 environments.. but, in practice, my implementation of the idea didn’t seem to be that much fun (I think the reason might fall along the lines of too-hard-to-achieve-any-sense-of-ever-potentially-maybe-just-maybe-eventually-gaining-mastery-at-the-task). So…

Attempt 2: players could press a controller button to switch between red/yellow

This was an idea that we stuck with for quite awhile. One of the early test levels looked vaguely like:

At a glance, it looks fairly chaotic and cramped (and the actual level was worse). For new players, navigating levels felt puzzle-like and.. slow. In early playtests, we’d commonly see beginners pause and plan out their next movements before attempting to execute them — traveling just a little bit further on their goal path before pausing to plan the next movement sequence. But, there was a trick to more fluid motion: shifting your perception and noticing that the level actually had a fair amount of open space.

That is, when you’re yellow, you can ignore all the red platforms. And when you’re red, you can ignore all the yellow platforms. The act of filtering out the “non-important” stuff and learning to switch this attention-filter as your character went between red and yellow phases was a skill that got better with time.

And it was kinda a cool feeling — learning to decode something that was previously opaque to fluency.

But.. it took awhile to learn that skill and, in the meantime, players were finding themselves isolated in their puzzle-solving pursuits instead of moving more freely, interacting more often with the other players — which, of course, minimized the primary benefit of a game being multiplayer. So..

Attempt 3: Get rid of the yellow bricks.

The characters could still switch between red and yellow, but with the omission of yellow bricks the two character phases gained a clear differentiation:

  • Red: collide with stuff
  • Yellow: don’t collide with stuff

Then black bricks were introduced — bricks that you’d collide with regardless of red/yellow character phase.

And lastly, a few wording changes:

  • “red character phase” –> “regular phase”
  • “yellow character phase” –> “ghost phase”
  • “red bricks” –> “regular bricks”

And a few final design changes — to improve readability and allow more flexible level aesthetics:

  • regular bricks: dotted thin line (any bright/saturated color)
  • black bricks: thick structure (any dark color)

These are the current ingredients of the levels (plus a few minor roles: lava, moving platforms). Conceptually, it represents a simplification of earlier ideas regarding level construction, but it also represents an effort to clear space to make room for mechanisms that encourage more player-to-player interaction.

Convention Season Recap

(long post)

Figured that it’s about time for another update. In short: These past few months we’ve been going around showing Bomb Sworders a fair bit. It’s been fun and we’ve used the opportunity to refine the game.

Anyway, read on for a timeline of sorts.

Pre- Madison’s Indie Arcade

In prep for Indie Arcade, we worried that rounds might last super long if we got a group of defense-favoring players. That’s not necessarily a problem if everyone is playing and having fun but could be annoying for those who were eliminated early in a round. So we instituted “crunch” — lava (well, an orange rectangle (though if we’re really being picky well then ceci n’est pas une lava or something like that I suppose)) which would slowly fill the level starting about 40 seconds after the first player died.

*Jaws music*

Made a multiplayer tutorial.

Indie Arcade

Tested the multiplayer tutorial. As an overall thing it definitely didn’t work but, later when I watched the gameplay footage, I was pleasantly surprised with a couple bits of it — mainly concerning the order that people figured things out. So not a success overall but I like to think a useful signpost.

Continue reading