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:
A : move left D : move right Space : jump S : ghost
A : move left D : move right W : jump leftShift : ghost
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.
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
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.
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.
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
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
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.
A couple settings are useful in their own regard but somewhat targeting people who play on projectors. First is contrast and next is..
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.
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.
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.
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.
Made a multiplayer tutorial.
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.
After a few crazy days in Boston, we’re back in Milwaukee. PAXEast was a ton of fun and we owe a lot of that to the great people we met — so thanks!
One of the most exciting things for us was how many people returned for 2nd, 3rd, 4th, and 10+ sessions of BombSworders. From a personal perspective, the return of familiar faces was a wonderful strand of continuity through the event. And from a developer perspective, it was extremely useful to see how people’s skills and strategies progressed over time. Several players also shared some good/interesting ideas — we’re looking forward to incorporating/testing them in the coming weeks as well as looking into additional platforms that were requested.
bits of media
And lastly, I’d be remiss if I didn’t mention something kinda special that happened in the closing minutes of PAXEast 2018 — for the very first time.. I lost a first-to-three challenge match against a nonDev. Below is the full video (complete except for the missing first few seconds). I’m the red player and the nonDev is the purple player. It’s not a perfectly played match on either of our parts but, at least for me, it was one of the most fun matches I’ve had the opportunity to play. (and even in cases where mistake follows mistake, sometimes a beautiful recovery is right around the corner — like at 1:42)
It’s exciting to think that if the game does decent on release, then very quickly there will be people out there playing at a skill-level we tried to design for but were never able to play at ourselves.
Also, BIG thanks to Madison’s IndieArcade back in February and the March playtest at 42AleHouse — both were fun in their own right and were also great learning tools for us.