Making changes to my game
Now I am going to be going ahead and making some changes to my game which are just to try and tidy up the game and make it slightly better. I have taken into consideration some of the feedback I have gotten from Sam and Chris for my game.
Firstly I have moved the spawn location to the floor due to the issue of people might not be sure whether they can go on the floor or not. Sam suggested I also add in a small cage or smashed glass in order to add to some of the game story telling as it will imply that's where the player has escaped out of in order to roam free. For this I chose a birdcage model which was free to use inside of the Edith finch packs.
Making it so the witch doesn't kill you:
While testing out the game many people who jumped on the witch realized that if you touch her you lose. However the transition to the lose screen is very buggy and doesn't look great. Sam also mentioned that people might want to climb onto of her for fun so I have decided to take this feature out of the game meaning you can get as close to the witch as you want.
Adding in widgets for the player to know which item is which:
Now in order to make it clear to the player which item is which I have decided to go ahead and have it so that when the player gets close tot he item a widget will show up on the screen saying “Press E to pick up (item name)”. First I started off by making a widget for each item and adding in the text at the bottom center in white.
From there I just have it so when the player overlaps with the items collision it will create the widget and add it to view port. Once they leave the overlap it will take the widget off of there screen.
Changing the jump potion:
The jump potion didn't need a key press to be picked up and was picked up just by walking into it. I decided that it should be the same as the other items in the game and that you should have to press E to pick it up. I also decided to go ahead and add in a widget for the jump potion like the other items. Here is the code showing that when the player overlaps with the collision box it will create the widget and add it to the players viewport as well as enable the players input so they can press E to pick up the item.
Then I have it set up so when the player presses E it will change the players jump velocity as well as destroy the jump potion actor.
Here I then went and added in a box collision onto the actor so that all the event overlaps work.
Making the floor seem more friendly:
Here I am just adding some rugs to the floor in order to go ahead and make it more friendly to the player these 2 rugs are from the Edith finch asset packs that I have been using throughout my project.
Making the loading screen better:
One problem I had is that the loading screen looked funny when using the glass on the potion bottle as it didn't cope with the lighting very well. In order to fix this I have just taken out the glass from the model. Here is what the loading screen looks like with out the glass.
Changing the instructions menu:
Now the next think I plan to do is go ahead and change the instructions menu. Originally it was an image meaning all the text looked pixelated and it didn't look well. So like the main menu of the game I have gone and changed the image to text. First I went ahead and got a png of a blank book which is what I used before.
Then inside a widget I went ahead and added in all the text onto the widget as well as the book image in order to recreate what I previously had but just to a higher quality.
Here is the final result for the instructions menu. I am quite pleased with how this turned out and think that it looks a lot better than having it as an image. This also means that if I was to have multiple languages for the game it will also be really easy to change the language.
Changing the ingredients list:
Here I am going to start work on doing the animation for the ingredients list so that it slides onto the screen from the left like Sam suggested. First I had to go into photoshop and edit the image so that the piece of paper had a little tab on it.
Next I then went and created a widget with the paper,timer and a text box which said “R” on it.
Inside this widget I did timelines for all of the ingredients text, check off crosses and the ingredients list image so that they do a transform across to the right by 400 pixels.
Then inside of the widgets code I have it so that when the widget is created it will play the animation in the forward play mode. This is important and you will see why when we come to the next bit.
Once I had done that I then duplicated the widget and changed the code so that when it is constructed it will just play the animation backwards. This is so that when the player presses “R” again the animation will play to put the list back off of the screen.
Here I then just made a widget where there is no animation and the whole ingredients list is on screen. This is the widget which will show all the text and the crossed off items.
In total I made 4 separate widgets which are being used in this process. The final widget which is recipe noanim which basically is the recipe 1 widget with no animation and it only shows the time as well as the R tab to the player.
Here is the start of the code which does all of the switching of the different widgets. When the game begins it will go ahead and create the default widget as well as add it to the players viewport.
Here is what it looks like when you start up the game.
Then I need to have it so that when the player presses the R key it will remove that widget and play the widget which has the animation is created and added to the viewport. I then have it set so that when the player presses R again then it will create the widget that contains the reverse animation and add it to the viewport.
This will then mean the animation is played on screen. Then it is set up with a delay so that when the animation is finished it will then set the widget to be this widget:
When this is done it will then look something like this:
However I did all of this code inside of the player character which means when the player loses or wins the game then the widget appear inside of the win/lose screen levels. This is what it looks like.
To fix this I moved the code into the Game level and have it working so it doesn't show up in the win/lose screen. Here is what the animation looks like.