Chainboom
Shoot your way through explosive zombies!
Browser Support
For the best experience, we recommend downloading a native build. Web builds may have performance limitations and minor lighting artifacts.
To run the web build, you will need to enable WebGPU support. To do this, use a Chromium browser (Google Chrome, Vivaldi, Edge, Opera), and enter the following in your URL field:
chrome://flags/#enable-unsafe-webgpu
Enable the option, and load this page again. If you are on Linux, you will need to start Chrome with `--enable-features=Vulkan`. Alternatively, use a nightly version of Firefox, which has WebGPU enabled by default.
Instructions
- WASD: Move
- Space: Jump
- Left click: Shoot
- F: Upgrade (only available between waves)
- Shoot while airborne to get pushed back by the shotgun blast
- The settings menu contains accessibility and performance options
Zombies attack you in a series of waves. After each wave, you may choose an upgrade to help you fight. Survive all 10 waves to win the game.
Killed zombies explode, decimating other zombies nearby, creating even more explosions. Shoot explosive barrels for increased mayhem. Use the explosions to your advantage and chain-react your way to victory.
Survived the 10 waves already, but itching for more? Try the endless mode with enemies becoming stronger every five waves. How long can you last?
Credits
- Jan Hohenheim - Developer, Animation
- Joona Aalto - Developer, UI Design
- Mathias Fischler - Developer, Soundtrack
- Sara Herbst - Map Design
- Tau Gärtli - UI Design Help
Third party assets:
- Bevy Logo - All rights reserved by the Bevy Foundation, permission granted for splash screen use when unmodified
- Blood Textures - texture.ninja, CC0 by Joost Vanhouette
- Angry Face Icon - openmoji.org, CC BY-SA 4.0 by Mariella Steeb
- Player Vocals - CC BY 4.0 by Dillon Becker
- Button SFX - CC0 by Jaszunio15
- Footstep SFX - CC0 by NOX SOUND
- Shotgun SFX - FREE FPS SFX Pack, CC BY-ND 4.0 by LMGLolo
- Explosion SFX - Small Explosion Audio Pack by EpeSami
- Zombie SFX - Zombies and Ghouls - Audio Pack, CC BY-SA 4.0 by VoiceBosch
- Enemy Attack SFX - Whoosh, A Free Sound Library! by Gene Chaban
- Enemy Death SFX - Impacts 01, Pixabay Content License by freesound_community, modified by Joona Aalto
- Game Won Jingle - Guitar jingle - Hard rock style, Pixabay Content License by ShidenBeatsMusic
- Shotgun Model - PSX Shotgun Asset-Pack, CC-BY by Doctor_sci3nce
- Zombie Model - Zombie Number 3 - Animated, CC BY 4.0 by Tony Flanagan
- Night Sky HDRI 001 - Night Sky HDRI 001, CC0 by ambientCG
- Environment Assets - CC BY-NC-SA 3.0 by The Dark Mod Team, converted to Bevy-friendly assets by Jan Hohenheim
- Jersey 25 Font - Google Fonts, OFL by Sarah Cardigan-Fried
Updated | 1 day ago |
Published | 17 days ago |
Status | Released |
Platforms | HTML5, Windows, macOS, Linux |
Authors | Jan Hohenheim, Mafii, Jondolf, PlsgiveMango |
Genre | Shooter, Survival |
Made with | Blender, Rust, Bevy Engine |
Tags | bevy, boomer-shooter, First-Person, Gore, Open Source, rust, Singleplayer, Zombies |
Code license | MIT License |
Average session | About a half-hour |
Languages | English |
Inputs | Keyboard, Mouse |
Links | Source code, GitHub |
Download
Development log
- Postmortem from Jan's Perspective4 days ago
Comments
Log in with itch.io to leave a comment.
Incredibly fun and wonderful sounds ✨ I am really happy with how the UI that we prototyped together has turned out~
This is fun! I played a few rounds. Getting the big chain is _the best_, though it pops a little fast. A satisfying pop noise would go crazy here.
This is emblematic of the kinds of the experiences that Bevy is starting to enable on web. It only gets better from here, and that's so cool to see. Congratulations on delivering something of this fidelity playable in the browser. Nice decals.
Some design thoughts in no particular order
- The biggest miss for me here is the lack of a reward for chaining. I think a big multiplier that gets physically bigger and more dramatic as you get bigger chains would add a lot to the feel.
- In fact, tying something like that directly into the gameplay by rewarding the player with power for chaining could really reinforce what is unique and special here. Maybe a system where you need to destroy some chains of smaller faster zombies to get strong enough to do decent damage to a big one. That kind of thing.
- Feedback on a connecting hit would make a big difference; I really couldn't tell most of the time
- Choosing healing as an upgrade feels bad. Might've been nice to place a healing item in a random risky location in the middle of the round, forcing the player to choose between playing it safe and restoring the health. That way you always get to choose a fun upgrade. Taking the heal feels like a punishment for playing badly.
- The gun is too good? I liked shooting the barrels more, but the unreasonable effectiveness of the gun trivialized them. It makes me think a little of hybrid tower defenses like Orcs Must Die or Dungeon Defenders. It would be an interesting direction to place the barrels, to place other traps, etc.
- Some signal you're being approached from behind before you're hit would be nice. Maybe an audio cue, a zombie groan, through spatial audio. I think that "what is behind you" might be part of the fundamental tension at play, but I found it frustrating without some kind of clue.
Wow! Great work! Great atmosphere, super smooth FPS. Can't wait to look over the code 🤓
Incredibly fun once I got the hang of it. That jump-knockback traversal trick was *chef's kiss*
Played on Safari and despite some stuttering at the end when the enemies became too numerous, it worked great.
Oh wow I didn’t even know that Safari supports WebGPU :D
Good job winning, that’s a nice time!
For me the web build is panicking:
Oh no, looks like a race condition! Could you try reloading? :)
I tried reloading four times or so and it does this every time! (Chrome, macOS)
Huh, unfortunate. Wish Res was a fallible system param :D
Let me know if you decide to try a native build
I think you can do Option<ResMut<NpcAssets>> if you want that behaviour.
I can confirm this issue also [Safari, macOS] refreshing does not solve the issue. Going to checkout native!
This is a lot of fun! I appreciate the chunky gory sounds and splatters that make it feel extra punchy. The movement is fun and has some depth to it, like the pushback from gunfire that either slows down your momentum or helps you escape the horde backwards faster.
The game crashes on the 9th wave a few kills deep.
I also found a cheese spot on the stairs to the right of the starting area behind the barrels. The zombies are reluctant to come in if you go a little up the staircase and start to walk around the whole room to come in from behind, which makes it easy to train them and release if it gets overwhelming.
Overall, though, a lovely and clearly thought through gameplay experience. The chain reactions are satisfying and fun to play around with.
crashed my browser but a great game, can't believe it was written in rust