Friday 23 May 2014

More refining of the enemy tutorial and more feedback on Responsiveness


Idea:

In this iteration I want to try out the new combat system which makes the enemy less static during battle with the player. As well as this I would like to text out new HUD warnings and the organisation of the front end in general.

Implementation:

Enemy:

With the enemy movement I created a new array of nodes surrounding the player and it follows the player. I applied the camera follow script that I have used on the main camera for this. I parented the nodes to an empty game object, and attached said script to the empty game object that the nodes are a child of. When the enemy is near the player is switches the node array it is following to the player nodes. When the enemy has been killed it returns to the planet node array and starts going back to orbiting it's original planet.

With the enemy I encountered a bug. The new spawned enemy would attach the player straight away. I did not know why this occurred, but I eventually discovered why this happened. Another function in a different script was interfering with the enemy scripts after it re-spawned the enemy at the spawn point. I foxed this by making sure the player was not inside the enemy attack trigger collider and by modifying the if statement so it automatically reset the enemy attach mode. Before hand it worked fine but another piece of code was over writing the new code so I fixed it.

Player Laser:

During my last play test I notice a small bug. If the player swerves to the left or right when moving and firing the laser. When the player did this, the laser blast would lag and drag behind the player ship. To counter act this I increased the force applied to the laser bead rigidbody making the object travel faster. By increasing the speed from 10 to 50 this minimised and nearly erased the dragging problem during fast paced battles with the enemy.

Tutorial refine:

With the tutorial the player starts in front of the trader in the centre of the level, when they get close to an enemy that's when the tutorial starts. When the player is near an enemy, text appears at the top of the screen saying "Warning Enemy Ahead", the enemy travels towards the player and then starts patrolling around them. A small piece of text appears above the enemy (I reduced the size because players could read it because it was too large to fit on the screen originally). Also as seen in the image below (although it's not that easy to spot) above the enemy ship there is red text saying "Enemy Ship". I decided to colour it red because it matches up with the radar and again red signifies danger.


Just before the enemy starts to fire at the player, the enemy warning text is replaced by "Alert Incoming fire" then the enemy attacks.

After this the health bar is revealed to the player, and text above it says "Your'e losing health", then text appears above the player telling them how to fire their laser.





After the player fires their laser, another bar appears above the health bar saying "Laser Heat bar". When the bar fills up, the text changes to "Laser Cool Down". After the enemy has been destroyed the tutorial is over, a health box spawns where the enemy ship was killed, and the enemy is re-spawned at the starting node and the text at the top of the screen reads "you have killed the enemy".

As a separate note. In the middle of the level where the trader ship is, there is a huge sphere collider. When the player exits the collider, this activated the radar and text above it reads "Radar". I have done this to gradually introduce the new feature.


Player Score:

When the enemy is killed by the player, 3D text appears that reads "+1". Promptly after this the players Score "Ships:" is revealed to the player. The 3D text that spawned from the enemy "+1" moves towards the score, when it collides with the player's score, the score value raises and the text from the enemy is destroyed. This is an attempt to link up the player's actions with the new part of the front end of the game.




Player Feedback:

Player Actions need to be more visually responsive.

Need muzzle flash for laser blast.

Laser blast beam needs to be bigger.

player doesn't know why the laser blast suddenly stops working, this needs to be more obvious.

Player doesn't know why the game suddenly ends and they loose.

Player's are too engrossed in enemy combat to look at the score.

Replace "Incoming blast" text with something that shows the enemy's laser is charging up.

Player does not notice the score.

When enemy appears in level beside planet, the player does not know where it comes from since it just appears from no where. Perhaps more visual feedback like a large particle system like the warp gate when enemy spawns.

Next Iteration:

In the next iteration I will completely re-write the mini enemy tutorial. The intro screen will emphasise the importance of gaining a high score and how the player gains points (mining planets instead of shooting ships) and briefly mention enemy ships will get in the players way. I will place the player in front of a planet at the start and when the player has mined a planet the enemy will spawn. Along with this I will improve the game's responsiveness. This is because many players found things like they didn't know if they had hit an enemy and they didn't know why they had died when their ship's fuel was low an s o fourth. Along with this I will make the player's score more obvious when they gain points, so they have less to think about during the game.

1 comment:

  1. Wonderful post.I like the way of writing and presenting.This post is giving the new ideas about the writing.I will share this post to my friends.You can share the good writing tips with custom writing service.

    ReplyDelete