Chromium JSU is a fast-paced, futuristic shoot 'em up that runs in your browser.
Play it here: https://jaredkrinke.itch.io/chromium-jsuScreenshotFeatures:
- Futuristic graphics and special effects
- Three levels across two environments
- Five different enemies
- Power-ups
- Sound effects
- Mouse, touch, and keyboard (arrow keys and spacebar/z) controls
Chromium JSU is a rewrite of Chromium BSU (
http://chromium-bsu.sourceforge.net/), a multi-platform shoot 'em up game created by Mark B. Allan.
Is this a complete port?No, this is not just a straight port of Chromium BSU to JavaScript/HTML5 Canvas. This is more of a proof of concept reinterpretation.
Why not make an original game?I've been trying to create a vertical-scrolling shoot 'em up off and on for probably the last decade. I spent a lot of time creating game engines (the last one was in C/SDL/OpenGL/Lua--now ditched in favor of JavaScript/HTML5 Canvas/Audio), ship graphics, and infrastructure, but I never stayed with each project long enough to get something playable.
This time, I'm attacking the problem from a different angle: start with a completed (and time-tested) open source game (Chromium BSU), and build out only the infrastructure needed to mostly recreate that game.
Basically, this is a research project where I'm trying to understand how Chromium BSU was implemented. In my opinion, the best way to understand how something is implemented is to implement it yourself--and that's where the "rewrite in JavaScript" part comes in.
Why HTML5?There is no question that native apps using C, C++, SDL, OpenGL, etc. give you greater control and the potential for better performance. But native apps also have some limitations: they're less portable, less convenient to install/deploy, and more convoluted to build/package/release.
On the other hand, browser-based games (assuming they can hit their performance goals) can be more convenient for both players (just load up a web page to try the game out) and developers (just publish changes to the main web site to release a new version).
NotesObviously, you will need a modern, HTML5-capable browser. If the game is not working for you, let me know. Thanks!