JUGGERNAUT by cogcomp
What the?* So I decided to do one of the dumbest things one can do when participating in a game compo... I decided to try some new tools.. Let's just say that figuring out the SDL API and then how to compile my code to WebAssembler took a bit more time than I thought :sweat_smile: But I did it :smile: My own little 48 compo game written in C++, using SDL and compiled to WebAssembly using Emscripten. The tools list: Ableton Live 11 Lite, bfxr, Visual Studio Code, Notepad++, Audacity, Chrome, Emscripten, SDL, Wings3D, SculptGL, Blender, Gimp and Sascha Willems Explosion Texture Generator.

Story As captain of the defence ship "Juggernaut 1" you are unstoppable. Enemy attacks and collisions only give your ship more power it is inevitable that you will reach the aliens power source at the city edge and defeat the enemy. Only problem is all that extra energy boosting your ships speed makes it a lot harder for you to get rid of the attackers already in the city so you need to try to avoid charging up too much and delay the inevitable if even just slightly.
Gameplay This is a high score chaser. Shoot as many aliens as possible to rack up your score as high as possible. The ship will gradually speed up during the level. Avoiding collisions with the enemies gives you more time to destroy more. You receive points for time spent on the level, enemies shot and enemies collisions. Don't shoot everything you see, speedbumps and orbs only work when the ship collides with them. If you grab more than 3 orbs (don't shoot them) the points you've earned during the level will double up at the end of the level. Hitting a speedbump will temporarily lower your ships speed.
Controls: Use the cursor keys to move ship and space to shoot.
| Link | http://www.cogitarecomputing.com/juggernaut/ld50_juggernaut.7z |
| Link | http://www.cogitarecomputing.com/juggernaut/ld50.html |
| Original URL | https://ldjam.com/events/ludum-dare/50/juggernaut |
Ratings
| Overall | 434th | 3.236⭐ | 38🧑⚖️ |
| Fun | 439th | 3.028⭐ | 38🧑⚖️ |
| Innovation | 481th | 2.889⭐ | 38🧑⚖️ |
| Theme | 455th | 3.292⭐ | 38🧑⚖️ |
| Graphics | 429th | 3.125⭐ | 38🧑⚖️ |
| Audio | 150th | 3.583⭐ | 38🧑⚖️ |
| Humor | 285th | 2.824⭐ | 36🧑⚖️ |
| Mood | 454th | 2.9⭐ | 37🧑⚖️ |
| Given | 73🗳️ | 47🗨️ |
The idea of actively having to avoid getting faster changes the game from how you would normally play this type of game.
Some Feedback:
- The start screen feels overwhelming when you first see it, and you don't know what information is important. I'd try to trim that screen down a little.
- Moving the ship at the start of a level when you have not yet gained any speed feels very slow, maybe the starting speed should be a little faster.
- Your projectiles eventually move so fast that you can't see them anymore (and they don't hit anything anymore). I think this could be fixed by capping the maximum speed for projectiles and implementing Raycasting for hit detection.
- The flashing graphic at the end of a level is very hard to look at, try to avoid quickly flashing bright graphics, especially covering large portions of the screen.
- You list Ableton Live and bfxr as tools, so i assume there should be audio, but at least for me nothing plays (no sfx and no music)
Even though there are some shortcomings, it's impressive how much you managed to achieve with technology you were unfamiliar with, good job! :thumbsup:
Anyways, congrats for completing the game with your own C++ engine, glad to see I'm not alone :D Good job!
Also, yes. The game has music and sound effects. I've tried it in Edge, Firefox and Chrome on Win 10 and it's working ok in those. What browser/OS combination are you running?
and YES! the terrain guiding is supposed to be super intelligent. It's part of the design so that you always inevitably end up winning the game and it's up to you to delay it so that you can rack up a better score.
Also - congratulations on making a game in C++ with SDL - that's doing Ludum Dare on hard mode. Much thanks for taking the time to make it web playable using enscriptem.
Since you mentioned this was a high score chaser, I would've liked to see the high score at the end screen to see what my score was, but I don't think I saw it.
Overall nice work on making your own engine and game!
I agree with other commenters about the speeding up idea being interesting but that the speeds should be tuned somewhat - the start is too slow, and then the speed-ups get really crazy.
I noticed there was an issue with Emscripten SDL sound in some browsers.
```
- Windows 7 + Firefox + Emscripten : sound is OK
- Windows 7 + Chrome + Emscripten : sound is OK
- GNU/Linux + Firefox + Emscripten : sound is OK
- GNU/Linux + Chrome + Emscripten : sound is distorted.
```
The distorsion is as if the audio buffer size was too small, and was constantly underruning, which makes the mix sound "metallic".
Juggernaut has this issue , I can get this metallic distorted sound if I play it using Chrome (or one of its derivative, like Brave).
My entry for this LD50 has the same issue (so go play it! but use Firefox :) ).
Indeed, if I increase the buffer audio size to 4096 samples, the audio playback becomes fine in Chrome. ( However, the latency becomes very perceptible and the game starts to feel less responsive ).
Have you ever noticed this issue ? I was under the impression that this wasn't occuring on Windows 10 ?
PS: please note I'm not talking here about "audio not playing at all" issues, which are a completely different issue, related to Chrome blocking policies ( https://github.com/emscripten-core/emscripten/issues/6511 ).