Goal: To create a controlled orbiting effect during a cutscene and to reveal menu options to the player during the Game Over state.

For the Game Over state of the game, we will use a special cutscene to animate the camera so that it orbits around the player and presents…


Objective: To utilize Unity’s robust Cinemachine camera system along with Unity’s sequencing system called Timeline.

To use Unity’s powerful cutscene and camera system, we need to make sure that we import Cinemachine and Timeline into a project. I imported “The Great Fleece” project from the unity asset store and package…


Objective: To spawn bullet objects and shoot them in the direction of the mouse pointer.

Now that we have a game window and we are initializing the castle in the correct position, we can now work on the shooting aspect of this tower defense game.

We need to define a…


Objective: To create a shop system that will allow players to purchase in game items and add those purchases to their inventory.

We have a simple foundation for a combat system in place for this 2.5d adventure platformer project. Now we can create the base for a shop and inventory…


Objective: To begin our work on a small tower defense game inside of the pygame framework.

This is a fun little project where I will build a tower defense game using the Pygame libraries. Pygame is designed to drive game development with the Python language. …


Objective: To finish writing the code for our combat system by implementing a new type of enemy that fires projectiles and setting up our death animations.

Our combat system is set up with a pretty good foundation. Picking up where we left off last time I decided to take the…


Objective: To fix the orientation of the enemy when engaged with a player and to retaliate and attack the player when in range for combat.

For this next segment we need to attach a child box collider object to the model for the enemy object. Just like we did for…


Objective: To build more on top of our combat system and modularize our code even further for re-usability and diversity. We will add the implementation of an interface to Damage any object that can receive damage.

So now that we have the base of our enemy class we can deal…


In between the last segment and now I added a simple sword swing animation to set up for our attack system in the future

Objective: To create a base class for our enemy objects to inherit common code so that we can create several different enemies without redundantly rewriting the same code in every class.

In our game we want to have enemies that the player can destroy by either jumping on them or…


Objective: To finish the code for our ladder climibing mechanic and to have the player play the correct animations for mounting and dismounting the ladder.

Now that we have the foundation for the ladder climbing mechanic, we can follow through with the hard part of setting up a way for…

Philip Johnson

Unity Dev . Web Dev . RN

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store