I worked as the lead programmer for Buff & Bones, working primarily with C++, with blueprints additionally when needed.
I worked mostly on the player character and all their components, as well as item pick-ups, level event logic and the in-game HUD functionality.
My focus was on modular systems and easy to use tools to improve the teams workflow.
Buff & Bones is a side-scrolling, co-op beat-em-up. Players must fight through hordes of undead enemies in order to reunite with their pet goldfish who was stolen by the undead king Grimfang.
A majority of my time developing this project was spent within Visual Studio, as I was sole C++ programmer on this project. I worked closely with the teams designers, and my other programmer, as well as with the artists as I was also responsible for most of the importing of assets into the engine.
I created all components in this game, which include the health component that allows anything be attacked, the statistic component which tracks player statistics, and the combo component which allows the game designers to balance and create a string of attacks with unique values.
I created all game mode logic and functionality, and all player logic and functionality beyond the default Unreal Engine character movement. This also includes the designer tools for the game, which were all created exclusively using C++ as it was essential for these tools to be able to communicate with other C++ objects.
A priority on this project for me was code performance, and this meant it was a strong priority for me to port most blueprint functionality into C++. The optimization efforts undertaken on the code side of the project allowed the project to reach 120fps con
Since I was working with a blueprint familiar team, it was important for me to make sure I make anything that would be needed to be accessed by other team members blueprint accessible. Many functions and events were exposed to blueprints so that other team members could add onto the functionality or create special systems that exist on top of my own.
Outside of development, I was in charge of maintaining our version control repositories and I maintained all technical documentation, as well as delegating programming tasks between myself and our other programmer.