A Few Months Down The Line

Let’s begin by saying sorry for the lack of posting content of the dev log of Project Hunter throughout the past few months. There has been a lot going on from more hours of work and less hours available to work on the project for myself and David with his university work. After a few months though I believe in the next few weeks Project Hunter will be in its first build version if the current systems in place work efficiently together on the mobile platform.

Over the months there have been a lot of changes to the project from trying and testing different techniques. Some techniques implemented within the project are Object Pooling, Observer Pattern. Some systems were changed for the techniques to be implemented, the reason for these changes is to remove any tight coupling between any classes and create Singletons of the managers that require them.

A system that was changed was the arrow checking what object it has hit, I implemented an interface IDamageable which has a function called Damage with a parameter of type int for the damage of the arrow that is currently being used. This interface is attached to the HealthComponent which has the Damage function implemented already. The function handles the damage from the arrow and sends out an event for either being hit or being killed, we also then update the animal HealthBar based on the event fired. This is to remove the tight coupling in place within the previous system implementation of the managers and the HealthComponents, and the managers with the Player.

The managers such as Game Manager and Spawn Manager listen to these events when they are fired off and update accordingly. The Game Manager updates the players score, hit count and returns the arrow back to the player, if the animal fires the died event then the Game Manager updates the players score, hit count and the kill count along with returning the arrow back to the player. The Spawn Manager however listens to the died event and after the delay for the death animation to play out we return the animal to the object pool that the Spawn Manager is using for the animals, it will then re-initialize a new or the same animal to the object and spawn the animal back into the environment.

There has also been some animation work being done, using some animations found on Mixamo along with the Erika model with a bow and arrow, not the style we was going for but this is the dev build. I have found a model to use that is the low poly style we want, I just need to make a skeleton of it and setup animations for it but that will be a little later. We have sound effects in place for when animals are eating, moving, etc along with sound effects for arrow firing with some cool trail effects behind the arrow There is also the Grass Shader that I implemented, I have attached the shader to a plane, can also do quad but wanted bigger area grass patches and not tall patches, This shader also has a wind effect passing over it and can be changed in speed and direction.

The next steps for the project are working on the UI and the menus, there are currently basic menus in place but I would like to implement them to give better feedback and interactions. Once these are implemented and tested the project is somewhat complete to a basic version, we would then be implementing new systems and update previous systems to be more efffcient such as using ECS and DOTS which is also the next few steps as well. Once the UI and menus are in place and tested for the build we will begin working on the new environments, animals, bows, arrows, customization as well but that is future work, we currently have out leaderboard in place which is currently local for yourself track record but we will be pushing for a worldwide leaderboard once on the Google Play Store and IOS if we get there.

Version0.1ScreenShot.png