Unity Projects
Project Rock Hopper
Status:
- Active
Description:
A 2D asteroid mining game. Mine resources while maintaining life support and defending yourself from pirates. Cash in your loot at the local space station to upgrade your gear and ship.
Goals:
Low gravity movement and jetpack flight
Dynamic digging using a tilemap
Dynamic light system and fog of war using tilemap
Procedural level generation
- Take off and land on asteroid from your parent ship in orbit
- Asteroid selection from map screen
- Gear upgrades
- Ship upgrades
- A space station hub where you can upgrade your gear and your ship, sell loot and receive quests
- Pirate enemies to encounter on your travels
Project Forest
Status:
- Shelved
Description:
A top-down dungeon crawler RPG inspired by Cult of the Lamb.
Goals:
Implement levels using a tilemap
Movement and attacks in 4 directions (up, down, left, right)
Mob AI that uses a single configurable template for class selection and attacks
Mob AI that tracks and reacts to players position and has obstacle avoidance
Procedural dungeon generation
A completed prototype
Retrospective:
- We had a hard time finding the fun and direction of the game.
- The team was initially excited about the project, but in reality didn’t have enough time to dedicate to it. This was the main factor behind the project being shelved, since it had been scoped as a team effort.
- Top-down added more directions of travel and more freedom of design, but it increased programming complexity more than initially thought.
- The Unity asset store had a limited selection of art for this camera angle.
- Assets required more sprites and animations to cover front and back directions.
- Camera angle made perspectives difficult to manage. For example, doors on the left, right and bottom of the screen didn’t look right.
Project Sebastion
Status:
- Shelved
Description:
A tower defense game inspired by Plants vs Zombies. Control an archer on the castle wall and shoot oncoming enemies.
Goals:
First attempt at creating a game without a tutorial or template
Multiple scenes
Instantiated enemies
Basic mob AI to move to attack range and attack wall
Wave spawning system
Mobs drop loot on death that the player can retrieve
A completed prototype
Retrospective:
- The game was shelved due to a lack of team alignment over direction.
- While the game seemed achievable thanks to simple AI, player movement, and reuse of characters and levels, it was in an older, relatively unpopular genre.
- A lack of foresight caused by my programming inexperience at the time made scaling difficult. Code quickly became duplicated and segmented into multiple code bases, which made changes time consuming.
- I sharpened my team collaboration and communication skills.
- I used Github to distribute updates and get quick feedback after implementing each feature, to save time and effort if changes were needed.
2D Game Experiment
Status:
- Complete
Description:
My first independent project. I gave myself an introduction to game development by prototyping a project in which I implemented a variety of common game systems. I did so in a sandbox environment, which allowed me to experiment freely.
Goals:
Character movement (left, right, jump)
Basic health system (heal/damage)
Basic combat system (melee/ranged)
Basic mobs with simple AI and attack
Collision detection
Mob loot
Inventory system
Retrospective:
- I successfully taught myself how to implement a variety of systems.
- I learned a great deal about game programming and identified areas of strengths and areas in need of improvement.
Flappy Borb
Status:
- Complete
Description:
- My very first Unity project and attempt at game development.
- Followed tutorial The Unity Tutorial For Complete Beginners.
Goals:
Learn how to setup and use Unity
Learn how to setup and use Github
Learn basics of C#
Complete a basic prototype
Prove understanding of skills learned by adding additional functionality to game after tutorial
Continue development after tutorial by adding a 3 life system
Retrospective:
- Game development is fun and a lot less scary than first anticipated.
- Learned basics of Unity.
- Learned basics of Github.
- Learned basics of C#.
- Learned basics of game structures, scripts and components.