I’ve opened up the entire, short level and the player is able to go from start to finish while killing enemies and managing to jump over simple gaps. There is currently a problem with the joystick buttons and it’s driving me nuts and I’m sure it’s just a hardware problem as opposed to my code; the jump and dash buttons don’t ALWAYS activate when pressed on the motion controller! It’s very frustrating to have to jump over small gaps and not being able to count on the jumping button to work appropriately. I don’t know if I should just nix the jump/dash abilities to provide a better experience or just keep it and know that updated, proper motion controllers would have no problems with that…
In an attempt to have some sort of ending to this demo, I added a simple rune symbol that the player will have to copy in order to summon a being that will eventually ‘blow up’ the entire level and end the demo. It’s a bit cheesy and probably doesn’t make much sense, but I think it’s better to have that than to not have a way to end the game. In order for the summoning to work, I had to provide another gesture to test against and have roughly 35 variations of it so that it can be recognized easily.
With some suggestions from an instructor, I manged to change a few things regarding game play. Instead of casting the spell and having the effect of the spell go off immediately, I implemented a system that allows the spell to be ‘queued’ (if it’s recognized) and have that spell activate a sword visual effect. Once the sword visual effect is active, then by tapping the trigger button again, the spell will launch. Creating this queuing system allows the sword to be imbued with magical qualities and makes the player feel more powerful. As an example, we’ll talk about the fireball rune. When the player does the gesture to activate the fireball rune, the sword will be covered in flames. Due to time restraints, I can’t add actual game effects but I wanted the sword to deal additional magical damage to enemies (think of magical resistances and weaknesses), but there is a visual effect to show that the sword is covered in flames. For this specific spell, a targeting reticle is shown is located directly in front of the tip of the sword and is moved to the nearest object that the fireball can collide with. When the player taps the trigger button when the fireball rune is active, the player will launch the fireball spell to reticle’s location. I have three spells that the player can do and have different effects.
I also changed where the User Interface (UI) is located, based on feedback from a student. Instead of having the UI drawn on top of everything and in view at all times like in most games, I moved the UI to be on the backside of the player’s shield (think diegetic UI). This allows the player to move the shield/UI away from the screen view if the player wants to look around in the virtual world for complete immersion of the world. I also added durability meters on both the shield and sword as well as adding a special meter that fills up whenever you kill an enemy. All UI elements work (they fill up and drain) and are all in 3D space as opposed to being 2D elements. The special meter, when full, will allow the player to summon the beast at the end of the level and end the game appropriately.
Finally, due to time constraints (at least until the documentation is done for the Final Review documentation deadline), I added simple text throughout the beginning of the demo to tell the player how to play the game and what they need to do. I know text isn’t a good way to go about things and I will tutorialize it better once I have the two weeks to update the game until the actual Final Review presentation day. My plan for the tutorial is to have simple animated images that clearly show what buttons do what and how the player is supposed to use those buttons or triggers. It’s interesting to develop a tutorial for using the motion controls because it’s not common to use motion controls (even for HTC’s Vive or Oculus’ Touch Controls) so people will not be able to grok them so easily. But the PS Move Controllers are harder to teach because it’s an old tech that many people may or may not have used (I’m leaning heavily to ‘have not’) and it won’t be a skill that is kept because my specific hardware is outdated. I need to use the motion controls from vive or oculus to be relevant!
Final note: I will be presenting my project to an oculus representative at AAU so maybe something good can come out of it? I hope so!