
Overview
Game Maker & Player
I created a game maker engine that allows the user to create basic arcade games. The game maker window is divided into three sections. First, there is a properties pane that can be used to edit Sprite properties including color, height, key press events, display text, and collision behaviors between sprites. Next, a game control pane is dedicated to housing buttons such as load/save game, new level, and play the game. Finally, a game preview pane is dedicated to see the preview of created Sprite objects with the applied properties. When the game is played, the game design is copied into a new scene that contains all the Sprites and their user-defined behaviors.
Gallery
Video Demo
In the following assignment, we swapped codebases with another team to simulate reviewing legacy code.
Then, we expanded it to offer 4 games. Here, I show how to build Space Invaders with our application.
Features
- Design classic arcade games including Donkey Kong, Space Invaders, Centipede, and Frogger
- Create sprites (game objects) and assign them properties
- Assign event handlers at runtime to control how the sprite behaves for:
- Key events
- Mouse events
- Collision events
- Time events
- Set up conditional events
- Ex: If the other sprite is a 'wall' then 'reflect' when colliding with it
- Can play the game without affecting the game design
- Saves the game design to be loaded back at any time
- Has support for geometric sprites as well as displays (text, stopwatches, clocks)
Game Maker
Game Player
Tech Stack
Technologies
- Java
- Java FX
Tools
- GitHub
- JUnit
- Jira + Confluence
- SonarQube
Design Patterns Used
- Command
- Composite
- MVC
- Observer
- Singleton
- Strategy
View Another Project