I was tasked with making a game in the Unreal Engine, this game had to be a sidescroller so i chose to make a 2.5D game a 3D game from a 2D view. My game is called Wasteland Gem and the main character is a robot named clunker.
The story of my game is that Earth is dying due to humans taking all the minerals and materials from her. Man kind has now made robots that collect materials from other new words. man kind sends a fleet to a new planet with the last remaining Clunker robots but they lose contact with all the fleet but one clunker robot that wont be active for a few years.
At the start of the project Gareth showed the class the basics such as matinee and basic code for picking up collectables. after that i went off and researched other ways of doing these things.
To start of with the 2.5D sidescroller i had to make an environment or a world for my game to set place in. so i started with a hight map thinking that would make things faster and easier, however this caused a lot of problems. as when the game was played the camera that is connected to the character would spawn in a different location than where the player was once i had fixed that problem i came across another problem where the player would just fall and disappear.
In the end i scraped the idea of using a hight map and made my own landscape using the landscape tools in the unreal engine which was basically like 3D painting.
For my landscape i made the highest of the land mass in the background to give the levels depth and to give the feeling of a parallax backdrop where the background mid ground and fore ground move at different speeds.
after building up the landscapes that i wanted i moved on to the textures of the landscape i had to research this as i wanted the textures to blend in together so after a while of research i had to make a new material and then using a landscape blend node to blend all the textures together and give it a better look than tiles or stretched. to make the texture not looked Stretched i had to use a landscape location node so the textures doesn’t look stretched out or in tiles. to apply the textures on to the landscape i had to move the new texture on to the landscape and basically paint on the texture where i want.
After designing and painting my landscape i moved on to making my character i designed my robot character in cinema 4D and then used mixamo to get the animations.this caused a few issues as the 1st model i made and placed in to the auto rigging for mixamo failed and the model caved in on itself then decided to make a new model but making each limb of the character separately giving the over all model a more detailed look. Making the texture for my model I made a UV map using cinema 4Ds body paint this way i was able to colour the parts that had to be different colours such as the rubber joints and the red gas canisters. i moved the UV map in to photoshop and edited all the colours to the appropriate textures i moved the now new texture back in to cinema 4D which worked fine so i moved it in to the unreal engine but this didn’t transform the textures over so i made a new texture using the same Photoshopped textured that was used in Cinema 4D but this didn’t work.
In the end i decided on just using a base texture as the character will only be seen from the side this ended up easier and turned out looking quite well and detailed.
i then moved on to making my collectables which was again made in cinema 4D, i had tried making these in Zbrush i couldn’t get the shape i wanted so ended up making it in cinema 4D, my pick up was a crystal/gem shaped so wanted the texture to a shiny clear look, after looking around and a few failed attempts i managed to get a texture that glowed, was slightly transparent and a pink colour to stand out from the rest of the level.
after that making objects and importing them in to the unreal engine became easy to do as well as making textures for those objects. the node based coding was hard to do at 1st as i didn’t understand a lot of what things meant or what they did. when it came to things i wanted to make happen i had to research which lead me to making things for my game i 1st didn’t intend on adding in such as the teleporter and the loading screens.
making the menus was tricky at 1st as when i would play the menu the game would still be playing in the background.along with the sounds and character still moving. I found a way to fix this by making the menus thier own levels this how added in more loading time which was a good and a bad thing. bad being that it takes longer for the game to start and good being that i was able to add in back story to my game. i then made it so when the play button was pressed it would open up the level after showing a few slides of back story.
when using the images i found that they wouldn’t take up the screen and when show the back ground i tried making the main image bigger but still had the main effect, in the end I looked up how to do it and used a thing called anchors which anchors it in place no matter the size.
i managed to make another level for the end of my game which is quick i made it so the player jumps down a hole which activates an actor which then activates an event that takes the player to the next level, i again added in a loading screen as it would take a while to load the next level.
i had trouble making the score carry on over to the next level as when you started the new level you would lose your score i managed to make a game mode event that lets you carry it on, i did this by piecing together other coding i had learnt. a lot of the coding i had done i had managed to do by piecing together other bits and pieces
other all i had found this project fun and enjoyable and managed to learn a lot in the space of a few weeks although it became stressful and annoying at times when things wouldn’t work or not being able to do it home but after a few days i managed to manage my work time where i would stay behind a few extra hours to get things done that is what gave me the chance to make another level and bits and piece that would make my game more enjoyable and to add more depth in to the game as well as for me to learn new skills and new ways of adding events.
i wanted to add in a teleport that would teleport the player back to the start when they had fallen of one of the platforms, however when i did this it stopped working and made the other teleport in the game stop working too i then thought making the teleporter in to actors would make the teleports work it did to start with but i was not able to add more than one in a level, so i decided to kill the player when they would fall off a platform.
i did this by making an actor that would hurt the player when they touch it. i had to cast the actor to the side scroller character to get the health integer but to start with it would not show so i then had to go in to my character and redo the coding to get a new integer after this i was able to get the new health integer in to the death actor.
it worked other than not being able to tell when the player was dead so i had to make an event tick in the characters blue print this checks every frame if the event is true or not, from tthis event i made it so if the health integer was below 0 it would destroy the player and then load up a death menu. it all works other that when you dye you go in to 1st person view for a while then everything starts playing. i was not able to find a way to fix this problem.
If i was able to redo this project i would make it so i started earlier than i did so i wasn’t stressing out and i would of done a bit more research before starting so i had more knowledge going in.and i would of like to of learnt how to UV in the unreal engine.as well i would of liked to be able to add cinematic instead of still images
As well i wouldn’t of started with hight mapping before looking into it as this caused me a lot of problems to start with however i would like to of learnt how to use hight maps properly.
I am pleased with how my game had turned out unfortunately when i had finished my game an tried to package it i had trouble as the engine couldn’t find the levels where as the editor could. i managed to hand in the project to be ran through the editor.
I got a few people to play my game and give me feedback, a lot of people said it looked nice and played cool however a few problems came up where the player would get stuck and such which is why i added in death zones for when the player falls off.