So what I originally wanted to do was to learn how to and to create a 2D side scrolling game. The purpose for this was because to create something that would be fun and that someone could play on their phone when they have nothing to do or want to kill time. What I wanted to do for the game is have a game in which you never switch levels but actually change physically in level and at each new level there would be new challenges that the play would need to overcome. As the player progressed the game those challenges would become increasingly difficult. Eventually the player would be able to get to the very end of the game and win the game!
In order to do this I downloaded and installed Unreal Engine 4, since it’s free for everyone to download and use, plus I have heard many good things about the engine and one can tell how good it is with the many games that are running Unreal Engine. After reading on forums and looking at videos I was able to get a beginners grasp of what all need to be done and learned quite a bit as well. One thing that I found interesting was that for the type of game I wanted to make, all the animations were just a compilation of images that were combined into a virtual “flip-book” in order to give the appearance of the character moving, which when one thinks about it makes complete sense. Through the engine one can start with a complete blank slate or with a blueprint which starts you off with the functions that move the character and allow you to jump the character. I went ahead and started with the blueprint since that saved me bit of time on implementing that short bit of functionality. From there I went on to change the artwork of the character, add a health bar, implement a damage system, create a preliminary level, add other actors that the player character would interact with and be damaged when touched such as spikes. All this took some time was a lot of fun and worth it, especially everything I learned and there is still so much more to learn, i just scratched the surface of what all can be done. I will also be including some pictures of the event graph for the player character, which has all the functionality of the character (the code) and pictures of the preliminary level.
One of the issues that I ran into while working on this project was that when I was creating the damaging spikes, when the player character would land on the spikes, no damage would be inflicted on to the character. After looking into it I realized that the spikes have their on collision box that the character would interact with in order to stand on the spikes. When I created the spike platform to damage the character I used the spikes and a platform and then I made its own collision box that would be a bit under the spikes so that i would appear that the character got stabbed. Well that collision box that I made was within the spike collision box and would never activate the actually damaging collision. Another continuing issue that I am running into is a bug in the death animation functionality. I ran into this issue after fixing a different issue in the damage system. That issue was that when the player gets damaged he gets knocked up and back away from the damage, but what would originally happen is the character would also turn to face that side. In order to stop that I had to make a change on the movement input, but now with that change, the death animation doesn’t happen and I am not sure why, something I would like to look more into.
In conclusion, I have learned quite a bit during this project and had fun doing what I have done thus far. I would like to continue on with this and add much more functionality and be able to deploy the game to Android as an app. Some of the things I would like to add are double jumps, stamina, enemies that walk around and can potentially shoot you, expand on the level and have the character be able to shoot back as well!