Monday, 21 May 2018

HND Project Week 33

HND Project Week 33

This week is the final week and is dedicated to finding bugs that could ruin game play. Last week i briefly mentioned some of the bugs that were fixed, however I will be going over the bugs that i cant fix either due to time constraints or not knowing how to fix them. Some are also mentioned in the play through which is available below.
Bugs
Since this is my first time making a large game such as this, bugs are to be expected. For example the largest bug that i show off in the video is that the player character twitches when the character is walking in a straight line. This twitching, i believe, is caused by this piece of code. This makes it so that the actor rotates and follows the camera. If i had more skill within the engine and much more time, i may have been able to fix this. This piece of code however is much more useful than the old camera that would orbit the payer. This meant that the player would be able to shoot themselves because the bullet follows where the camera is looking
Another bug in the video is the player model Flipping when looking straight down. This again is caused by the code above because it rotates the player model on all axes and makes it completely flip. I believe that this could be fixed by making an animation of looking down when the camera hits a certain degree.
One of the more game breaking bugs is that the bullets have no collision with the environment. This means that when shooting, the player can shoot through solid objects and deal damage enemies or more importantly activating trigger boxes on the other side. In earlier versions of the game the player could shoot through mountains to activate trigger volumes on the other side. This was fixed by casting the trigger volumes to the player. However the bullets still do not have collision. When trying to add collision to the bullets by using collision capsules, the projectile disappears and no bullets are fired. This could be fixed by creating the bullet blueprint from scratch however this is not viable as it doesn't affect game play too much anymore and that time is almost up for working on the project.

A more annoying bug that i have encountered and have not fixed is the random damage that the player takes occasionally. This is showcased in my video. I believe that this is due to the enemies not being able to path to me and they somehow do damage. I have absolutely no idea what could be done to fix this and i have no idea where i would start.


Monday, 14 May 2018

HND Project Week 32

HND Project Week 32

Now that i am coming towards the end of the project, i have been making sure that the game is playable and adding any finishing touches. For example while playing, one of the large boss models was too large for the hit box. This meant that many bullets would go through the boss and they could go through gaps smaller. This was then changed so that the hit box matched the model size. Another finishing touch that was added was the addition of a chest plate for the player character. While this was not necessary it made the character look more complete.
While it may not look the best i quite like the angular design of this. However i should have added a subdivision filter to smooth it out to match the rest of the armour.

A problem that had arisen when creating the teleport triggers was that any actor would trigger them. For example shooting the trigger volume with a bullet would teleport me to a new level. This meant that it was a possibility to skip large portions of the level because of this. To fix this, i had to cast the volume to the thirdperson character. This meant that only the third person character could trigger them and not the bullets.


Monday, 7 May 2018

HND Project Week 31

HND Project Week 31

After creating all of the buildings and structures for the city level, i began placing them down in the level. The way i have placed them is to make it feel both open and linear at the same time. This was done by creating multiple places to explore such as the shrine areas which will reward the player with full health.
Below is an image of the full completed map structure.
Now that this level is complete, the last few weeks will be dedicated to testing, adding finishing touches and documenting any bugs that occur when playing the game.

Monday, 30 April 2018

HND Project Week 30

HND Project Week 30
I have started working on the final level for the game which is a Gothic style city called Ichorsford. One of the first things that i started working on was the cathedral which is the final boss arena. Much like many other structures in my game, it was built by grouping up geometric object such as cubes and cones.
 Inside the cathedral, there are 3 large enemies that are the bosses of the level. Also in the cathedral are several rows of seats that can be used block the bosses from reaching the player.
 The seats inside the cathedral are made from small boxes inside unreal engine. I originally created a model for the seats that is shown below. However when i imported the model into the game, and applied a texture, it would be a solid colour. This made it difficult to differentiate the angles of the model. I believe  this is because the i didn't use the UV mapping. However i believe that the one made inside UE4 are much more appealing because they are more simple and effective
Model created in blender
Seats in unreal

 To bind the player to the level, there several house that make up the boundaries. Some are inaccessible and are boarded up so that the player cant access them. One has multiple floors and enemies and some have nothing in.


 To restore the player's health, i have used the same type of trigger box that is used in the other levels. However to get to it on this level, the player must fight multiple enemies at once.

 I have also created a clock tower to break up the level a bit rather than it just being brick houses.

Monday, 23 April 2018

HND Project Week 29

HND Project Week 29

Since i have changed my idea to a 3rd person shooter, i needed to create a weapon system that allows me to shoot projectiles to damage enemies and to switch between several weapons.
This set of code makes it so that the weapon variables such as ammo count and fire rate are stored when changing between them. It also spawns a particle effect to signify a change in weapon. To make the weapon fire it spawns a projectile at a velocity that will propel it forward and will do a certain amount of damage on impact. The left mouse button is to make the gun shoot.
 A piece of code called get aim transform makes it so that the projectile spawned in the same direction that the camera is pointing. This created a problem where you could shoot your self because the player model didn't face the same direction as the camera.
This blueprint makes it so that the actor follows wherever the camera points. This is a bad fix as it makes the character follow the camera wherever it is pointed. Foe example if the player looks at the ground, the actor is rotated so that the whole
body faces the floor.

To restore a players health i have created a trigger volume that sets the current player health to 100 which is the maximum.




Monday, 16 April 2018

HND Project Week 28

HND Project Week 28

Several weeks i mentioned that i had changed parts of the forest to make it less dense, this week the forest has now been completed and, in my opinion, looks alright. The main feature of this is the little village with houses, enemies and a large tree ion the middle.
 The houses for the village were made from simple geometry pieces in unreal that have been grouped together to form a single house. I could have made these in blender however, a problem that would occur would be that the scale may be off. For example if the doorways are too small, i would have to keep  importing the same model after it had been changed. This also means that i don't have to worry about making a house model that is not optimised and causing performance dip in game.

In the centre of the forest map, there is a large tree that enemies patrol around. After progressing through the level, there is a large hole in the ground which leads to the boss arena. 

 The boss arena is located in an underground cave and after killing the boss, the player is teleported to the beginning of the forest level so that they can return to the hub and travel to the other level.
Boss in boss arena
Player start in boss arena

Also, since the game design was changed to be a third person shooter, i would need to create a projectile for my gun to fire. The projectile was created in blender and, in my opinion, is one the nicer looking models that i have created. To make aiming easier when playing the game, i have added a pseudo first person camera that can be switched to using right mouse button. This was done by adding a another camera and disabling the current camera when the button is pressed







Monday, 9 April 2018

HND Project Week 27

HND Project Week 27

Recently i have been rethinking my plans for this game. Originally it was meant to be a third person melee fighting game much like dark souls. However i have decided to change to a third person shooter instead. There are several reasons for this one being that i do not have the skill or knowledge to animate weapon animations. Another reason for this change is that it is much simpler. This however will not affect the game play much as the enemies can be given higher run speed or more damage to compensate. Therefore from this point on, the project will be a third person shooter.

My plan going forward is to have two weapon slots, one will be a small, high powered slug shotgun and the other will be a lower powered full auto Assault Rifle. I have already made the shotgun model and is currently the main weapon for the player.


The plan for the forest area was to have a section of it be dark because of the tree cover. However this didn't work properly. There were too many trees which cast too many shadows. This resulted in the lighting not being built when building the lightning. Therefore i have redone the forest to have fewer trees and be less dense. This will also improve performance for lower end computers.