Development Challenge 2 - HALO Ghost

Introduction
This is a follow-up Dev challenge after the outro challenge which was part of the workshop given by Maikal. In this challenge I had to make a 2D flying object, you also were eligible to gain more points if you were adding more functions and designs.
Process
I made the 2D flying object using Vanilla JS and HTML since this was mandatory. I made it into a mini game called it Halo Ghost, which is a combat vehicle from the game HALO. The Ghost can be controlled using the arrow keys on the keyboard, as this game is inspired by HALO, I’ve added the HUD, in-game music and the vehicle directly from the game from a open source sprite database.
The game has the following features:
- W/A/S/D or Arrow Keys for movement (keyboard)
- Background music
- HUD
- Soundeffects (Ghost vehicle)
- ESC shortcut to quit the game
The Dev challenge was interesting and challenging. I did something similar like this in the last semester, but not with this many features. In the beginning I added CSS and HTML and I’ve been collecting sprites and sounds from the open-source databases SpriteResource & SpriteDatabase. I’ve used a DIV to insert the ghost into the game, and to make the vehicle move I used the keycodes within JS. These are codes that belong to keyboards, every button on the keyboard has it’s own unique keycode. Afterwards I added another functionality within Javascript where I can control the speed of the moving object/Ghost, at the end when everything was in place, tested and working I added soundeffects, background music to finish the mini game. The goal was to make a moving object, but if I had more time I would had made it more into an actual playable game, for now it’s just a game where the player can drive the ghost across the screen.
Feedback
Maikel: “Amazing job on combining challenge 1 and 2 together as one big project, I’ve proven that I am capable of media worthy designing. Your code is compact and efficient and so far every line of code is well done. I’m adding comments in my code. The flying object could had been a little more smoother. It took me a bit to understand that I had to hold the gas pedal (W) to make the object move. Overall this challenge is a success. “
Luuk: “Great choice on the background music and sound effects, Your code is neat and very well written. Make sure if you can use a ‘constr’ instead of a ‘let’ in your code, and very nice job on combining challenge 1 and 2.”
Reflection
If I had more time on this challenge, I would have been able to expand on it more and added more changes to it during the programming. The movement of the object could had been more smoother and maybe added effects such a smoke trail when the object is moving. I had also another idea in mind to make a fully play-able minigame in mind where the player could choose any vehicle from the HALO franchise and to play against AI.
Links en Sources for this challenge can be found below, see appendices.