My first university project was a 2D game in 2015. I have been always a big Super Mario fan, so I decided to
create my own Mario.
The game was written in JAVA with Netbeans IDE, by using BOX2D physics engine. I really enjoyed the
development of this game,
since this was the first time, when I created something on my own from scratch.
The requirements for the game were broken down into four main categories:
The game had several different static objects, such as the platforms or pipes. Furthermore there were eight different dynamic objects, including all enemies, coins and the player. All objects were surrounded by a bounding box to detect collision and apply pyhisics and effects at collisions.
The final version had three levels, plus one with the final boss. The levels were significantly different and the difficulty increased as the player progressed through the levels.
On the top part of the screen a Graphical User Interface was shown to display the player's name, number of lives, score and progress in the game.
The first extra features was the finall boss itself. Bowser's movement was controlled by a finite
state machine, where
the states were changing accordingly to the player's position. Depending on the current states and
transitions, the boss
was changing its positions and attacks.
The second extra feature was a complete Menu system with save and load game options, so the player did not
have to start game
from the beginning every time.
The game was developed in JAVA with the Box2D physics engine. The textures were edited with Photoshop when it was necessary/