Dissertation Diary: More Enemies, Unique Death Animations, New VFX, Updated Level Designs & More!
I do be back after being away for an extensive period of time and am (at long last) getting round to writing up another big ol' bloggy blog post!
There's been a lot of work taking place, like a lot of it. Especially since I have been able to purely focus on this project for the last 10 days or so, but that also includes focusing a lot on writing up the dissertation paper for this game. That paper is now over half-way done, but since it will be the first thing I hand in (11th May) I'll be focusing on it primarily this week again.
This probably means that there won't be enough time to get in all the features I would like, nor enough time to test them before presenting what has been made in the viva coming up in the next 2 weeks (very sad, I know). So, my plan will be to just keep working on the game after I submit - enough so that it can actually be considered a completed game!
I've also delayed a blog because it is an actual nightmare trying to get decent footage done for a VR project. I spent 5 hours today alone trying to sort things out on my Quest, with the situation getting so bleak that I almost did a full factory reset on my device. It just ended up becoming that buggy and broken from trying to change the native recording size to a widescreen size. I couldn't even test the game in Unity anymore, instead just getting a completely black scene inside the headset (although sounds and controls still worked).
Eventually (and Lord knows how), the Quest seemed to have fixed itself, and in the end forced me to use OBS to record footage on my monitor rather than capturing it inside the Quest headset.
So, with that said, here's a video highlight showing off most of the changes and new bits that have been added! I'll give a breakdown of it all below the video:
A New Title Screen
So right off the bat, the first big thing is there's a big change to the title screen. I've gotten assets off of the Unity Asset Store to help recreate an arcade room and found a font to use as one of the game's main, well, fonts. Just something a bit nicer to look at than a basic UI!
Although the current implementation is not exactly "correct", what I'm also going for is the feeling that each level is its own arcade machine that you can choose to "play in". What I mean by that is, when you pick a level, you would be "sent" into that arcade machine so its as if you are actually in that game.
To sell the full effect, I would need to create some new textures for the arcade machine models to match their corresponding levels. I would also need to figure out how scene transitions work in VR, which I have already been investigating, but its unlikely these things will get finished in time for submission. I would want to also add in some sort of ambient sound in the background whilst you are in the title screen, as well as a way of displaying your best score for each level.
Updated Cyberspace Level Design
The cyberspace level has received some love in terms of it's level design. The skybox will now change colours roughly every second, although I may look to change it so that it is done in time with the beat of the music. The portals are now also scaled up so that you can properly see the full effects more clearly, and to make enemies look like they actually are spawning out of them.
The flight paths have also been set up so that each portal has its own unique path which enemies will follow, as well as unique locations at which enemies will shoot at you.
Its not the clearest to see, but each point along a flight path is indicated by a glowing sphere with colours matching that of the portal they are assigned to, i.e., blue orbs for the blue portal, red for the red portal, etc.
This could potentially be turned into a feature for the easy setting or a tutorial level that shows where enemies will be travelling to, but it would need extra features like a line renderer to connect the points together. Otherwise its just floating orbs!
In the current implementation, there are some minor bugs which need sorting out so that it doesn't turn into a sudden bullet hell game (which isn't the plan, since its pretty hard to dodge all the bullets!). Once enemies go beyond a certain Z-coordinate, they will be destroyed but will not get added to the score.
Updated & New Enemies
Work has been done on creating a couple of new enemies and updating the existing one to look a little cleaner.
The existing blue enemy received a small design change, drawing some inspiration from Portal 2 characters but in a more cuboid form.
The first new enemy is something done quickly as more of a placeholder, with the intent of having a more obvious gun-like source for projectiles to fire from. Since I was enjoying the eyeball aesthetic, I ended up attaching a cannon to a pair of eyes, with one of the eyes blinded / closed. Something better could definitely replace this guy, but for the moment it'll do!
The second new enemy is a skull, which I felt could work nicely since I can imagine a 2D skull being an enemy in many pixelated games, so a 3D counterpart should work well for my game. To help get this shape and detail, I referenced some pixel art of the character Thresh out of League of Legends as a guide and did some manipulations to make it more distinct and clear. I'm pretty content with it, although it could do with some tweaks to the back of the head to make it a bit cleaner.
New VFX - Enemy Projectiles
You'll also notice here that a lot of new visual effects have been added to the game! Since time is very limited, I don't have much work room to try creating my own VFX, so I've acquired assets to help speed up this process.
Each enemy now fires a unique projectile that I feel best matches their appearances:
The skull fires a green energy box to match the green eyes
The blue eye-cube enemy fires a blue fragment missile
The eyeballs carrying a gun launch a yellow ringed missile
Each projectile is made up of a few components that complete the overall effect, which all came as part of the asset pack. They each are made up of a muzzle effect, a projectile effect when travelling, and an impact effect when coming into contact with other game objects. Its also possible to customize them and add extra details, such as trails!
New VFX - Enemy Death Animations
There are also some new death animations for the enemies! I'm looking to have 3 in total, and 2 of them are complete once I add in a death sound for them. Each enemy will have its own death animation to try keeping things interesting and engaging:
Skull: ragdoll animation that causes it to fall down through the floor
Cube-eye: explodes into cubes or copies of itself, with customisable properties such as colour and the number of cubes spawned
Eyeballs with gun: dissolve out of existence
Currently, the skull and cube-eye have been set up and just need a death sound to get added to them. The last enemy is still in progress, with the dissolve shader set up using a sine wave and applied to a cube in the scene for testing. Once this is finished, then all the enemy death animations will be finished!
Updated Mountains Level Design
I've also given the mountain level an update on its level design to try making it feel less empty, since all there was to look at was the mountainous terrain and the skybox. Now, there's a neat little town behind / around you as you play!
Now, you can look behind you to see a neon / cyberpunk town that you are defending from the enemies! The assets were also downloaded from the asset store since, as much as I would like to try making my own buildings, I simply don't have any time to try learning how to do it. I might try to improve the design some more, the skybox for instance can definitely be improved, although this is unlikely to happen until after May.
There's a few things left on the to-do list. I need to finish setting up the level design for the beach level and update the projectiles that the player fires to make them more in-line with the existing VFX. I would want to update the prefabs for the guns and shield that the player has access to, as well as add in some extra features and mechanics to the weaponry, but that have to be cut for the submission.
I also need to sort out saving the score for each level and displaying it on the title screen under each level, possibly including some actual scene transitions too, although the likelihood is most of these things will be left for after submission. The focus will be getting the dissertation paper sorted out, as that is of more pressing concern.
Ok so that's it this time! This is probably the penultimate post for this project, or it might be the last one - who knows! I sure don't. I just know that I got a lot of writing to get done and dusted now, so I'm diverting my energy into completing that. So, thanks again for reading, stay safe, and buh bye! :)