The last few days of work have mostly consisted of working on Battle 4. Animating Evie, balancing Evie, designing her Rage mode (Regenerating Health), writing dialogue and creating the environment. However, I've also managed to get some more improvements to the game. Firstly, the game now features save files! When you beat a level, a variable is now set to true which signifies you beat the level. This is stored in PlayerPrefs and so is stored even if you restart the game. Currently, this is only used to put a simple check mark next to battles you've beaten, but soon it will lock off levels you haven't beaten as a way to force the player to have to progress to reach future battles. I also created a button to delete your save files under the settings. I also changed a lot of dialogue, and added more. I fixed some annoying bugs too. The largest bug I fixed was the bug where under the options settings the resolution would appear multiple times. BattleBlade is coming along well!
0 Comments
I've been forgetting to do blog posts recently, so here's a big one. Firstly, I started working more on Battle 3 with Axku. This level is now functionally complete I just need to polish it up and balance it some more. Axku's rage mode is designed (two shadow attacks left, up and down) and works perfectly. The background looks decent but may need some more work as some of the trees look a little strange. Battle 3 can now be accessed from the world map alongside the other two battles in the game right now. Battle 3 also has an intro and an long extended dialogue scene with some interesting and big twists involved ;). I started working on Battle 4 while I was at it just because the making a new battle procedure is tiring and tedious, so I want to get it over with to be honest. It involves a lot of copy pasting but with slight name changes that it bores me. But once it's done and I can do the fun stuff! Battle 4 is with Evie and is in a volcano environment. The environment background is done AND animated! I may add some more frames later though as right now its only 2 frames. The copy paste scripting is mostly done too for this level. No values for difficulty or new rage attacks have been changed though. I fixed some bugs in the game, improved some of the dialogue in the older levels and other light improvements. :)
I've done some nice quality of life improvements over the past few days, but I've also been preparing for battle 3! Firstly, there is now a grounded boolean that is true when Kaiku is is touching the ground. Jumping worked on a cooldown before meaning you could be on the ground but still not be able to jump due to the cooldown not allowing you. However, now as long as you are on the ground, you can jump. The cooldown is now only used for double jumps in the air. This was something that I wanted since the start but I found it so hard and painful that I gave up. But it works now! This makes the game feel much more responsive to play. I also added a little logo notifier that appears above Kaiku if you attempt a shadow attack before the cooldown allows you to. I noticed some playtesters were trying shadow attacks and wondering why they weren't working, but now this should make it more obvious that they need to wait to use it again. I made some balance changes such as reducing forxa's health but increasing the number of shadow attacks he does as well as increasing speed. I also added a cactus to the desert level.
Today involved improving the Forxa battle and intergrating it into the world map so it can be played. I increase Forxa's health to 7 from 5 as a way to increse difficulty, but I fear this may have made it too difficult so I may reduce it to 6. I also made it so Rage mode causes an action where Forxa uses multiple shadow attacks in a row, instead of increasing speed like with Rabga. This promotes strategy as you can either kill him quickly with melee attacks so he doesn't get to Rage mode, or use ranged attacks and then dodge the incoming Rage shadow attacks. I may look into making them do less damage as otherwise they can very easily kill the player. The final boss will use a similar mechanic but it will be far stronger, to the point where it is more like 20 shadow attacks! They will be slow and cause less damage though. Evie will likely use health regeneration. As for Axku, i'm not sure yet. I added the Forxa level to the world map so it can be selected from there. I also added intro dialogue for the second battle as well as battle dialogue too. The lines for the dialogue is currently pretty bad but it will be changed in the future. I also did some other changes and bug fixes. I need to look into improving Forxa's desert environment, right now it looks a little too bare. Yes, it is a desert, but it still needs some more going on. Once battle 2 is finished, Axku will be next!
I spent today animating the second demon you fight in the game and creating the second battle in the game. This ended up being a way harder job than I anticipated due to many scripts conflicting with each other and needing rewrites due to basically all of them referencing Rabga, the first demon that features in battle 1. Either way, now that I know how to make another level, it should become easier. I also fixed some bugs, cleaned up my scripts and my organization and added red colour changes on melee attacks and shadow attacks.
I did some nice improvements to the game over the past two days. The biggest update is the feature of before battle dialogue. This is dialogue that plays before the battle starts, but after the intro you read at the start of the level. This is used for dialogue between Kaiku and the enemy to build hype for the battle and bring context. This will also be used so the enemies can reveal information about Kaiku and the story. I wrote some code so this only displays the first time you load the map as otherwise it would get annoying have to click the skip button each time. I have done some major graphics improvements, the main one being the background is now a more interesting layered background instead of just a boring skybox. This makes the battle feel more "3D" and overall makes the graphics look better. I may add parallax backgrounds as well so as you move, layers of the background move too. I'm focusing on gameplay and content right now though. Another thing I did was delete the moon from the main menu due to all my playtesters saying it looks bad and unappealing. I instead stretched out the text a bit more. The main menu could still do with some work if im honest. I also added fade in to more scenes so the scenes transitions are less jarring. With the dialogue scenes, I moved the UI box of the name further upwards so it had its own box meaning the actual dialogue box had more space for text. I made it so when you attack the enemy or the enemy attacks you with shadow attacks, the enemies or kaiku's colour changes signifing you actually hitting the opponent. This makes shadow attacks more satisfying and I'm thinking about adding a similar thing to regular attacks. I also fixed some bugs relating to shadow attack positions, health sliders and more.
Over these past few days, I have been working on making the first battle the most polished it can be. I will soon start work on the second battle, Forxa, and most players may not bother to get that far if the game feels buggy! There are still some really prominent bugs that I need to fix, but the game feels much better to play now, I don't have to say "oh, excuse that bit, i'll fix that later" as much as I did before. I didn't just fix bugs however, I also added and improved some things. Firstly, I changed most of the text in the game to TextMeshPro for added fidelity and customization. Similarly, I changed BattleBlade's text logo on the Main Menu to make it stand out more (images below). I also added particles to the Main Menu to make it look a bit more interesting. They are only small but make it feel less like the main menu is just a couple of UI buttons and text. You now can't jump on the enemies head and hide and never die. Should you attempt to jump on his head, Kaiku will be forced back. The same occurs to Rabga. This is currently a little too sensitive so I may need to look into this in the future. I partly fixed the bug where Kaiku's sprite moves forward a few pixels when you do a regular standing attack. It's still not perfect (and I don't really know why) but it's a lot less noticeable. Most players don't stay still anyway ;). I fixed the bug where the shadow attack UI slider would reset the first time you used it no matter where the slider was. I fixed this by forcing the slider to fill quickly the first time the scene starts, but slowing down to normal accurate speeds any following times. I fixed the bug where you couldn't jump for the first few seconds of the battle. I tried to improve the AI and overall game play as well, with the highlights being: increasing Rabga's speed and making Rabga jump less. After that, I modified some of my scripts to make it so transporting code to future battles will be easier with less manual changes to the code per level. I improved the mechanic of Rage in the game. When Rabga loses 80% of his health (previously 40%, this is subject to change), he will become Enraged and move much faster. As well as that, his sprite will now turn red to signify this. This enemy has a simple Rage mechanic but I am thinking about future enemies having mechanics such as regenerating health, more damage output, bigger or more frequent shadow attacks, etc. Now, here's the big one. I fixed that awful glitch where Rabga's direction would swap between left and right if he wasn't moving. This was due to my direction check being dependent on velocity direction. However, I decided to change this to a method which determines if Kaiku is ahead or behind rabga and then scaling Rabga if needed. This was done by comparing Rabga's and Kaiku's position on the X axis. This is a huge improvement and fixes a lot of bugs and problems with the game! Rabga feels like an actual opponent now! I'm really loving my game now, it feels fun to play, and the fact I have created it myself, makes me feel even better about it. :)
I'm going to do a changelog thing for this. Sorry. - Added a meteor that spawns at a randomly on the y axis at the back of the level every so often. Added particles to it too. It looks pretty cool and adds a bit of atmosphere to the scene. - Added smoke at the back of the scene that looks slightly less cool than the meteor but is still pretty cool. It harms the frame-rate a little, so I may need to create an option to turn it off on the settings. - Changed Rabga's and Kaiku's shadow attacks to look different. They now look entirely different and keep the colour scheme the demon/goddess uses. Rabga uses a great-shield like thing as a way to promote his use of blunt weapons. Kaiku uses a red spiked thing that is a little too bulky to be honest, so I may change this at some point. - Changed most text to TextMeshPro making it sharper and more attractive. - Fixed the bug where you could move whilst crouching. This isn't animated and breaks the game a little so I decided to make crouch walking impossible. I fixed this by checking to see that IsCrouch == false before acting force on the gameobject. - Fixed some of the input lag with the game and some animations by turning off exit time for most animations. This makes some of the animations a little glitchy but reduces input lag enough that its worth the sacrifice. - Added Border Art to World Map on MouseOver(). - World Map now spawns rotated nearer to the Rabga level so you don't have to rotate the map to access the first level. - Scene now fades in during Rabga level every time it restarts making for a smooth transition. - Level 1 intro dialogue now has images that appear during the scene as the dialogue progresses which help illustrate who the characters are. - Renamed Main Meny to Main Menu like it should have been... - Other improvements and fixes ;) https://streamable.com/cxdeh - The smoke in action! Pretty proud of my game now.
I created a method that restarts the level after 1.5 seconds have passed, creating a smoother transistion from round to round. I finally made it so you can't click the level from the world map if you can't see it. This works by calculating the distance between the gameObject and the Camera and is admittedly pretty hacky, but it works and it was the only way I could find to do it. I added shortcuts to restart and quit to the world map using the R and Escape button. Similarly, I added a world map button to the Player Won and Player Loss UI sections. I need to add a way to go back from the world map and the dialogue part but that won't take long. Added music to the world map and dialogue sections and changed music on the main menu. I also managed to find a way to stop the music from playing if you change scenes so now music works great in the game. I still want to change the battle theme and add more sound effects though. I also fixed a load of bugs most regarding the round mechanics but also some rabga animation and attack glitches. My game is getting good :) I spent almost all of today improving the UI and graphics of the game. Firstly, I created a Rabga logo which sits at the top right similar to Kaiku's UI logo thing at the top left. This creates a bit of symmetry and reinforces who you are actually fighting. I also changed the symbols that display when you win a round to a more distinctive sprite as before it could be hard to see. The main thing I did today was make all sprites use point filter mode. This helped MASSIVELY in making the game look better as it made all sprites sharper and fixed that nasty bug where lines would appear at the top of some sprites. Finally, I added some light fog to the world map to make it feel more like an earth rather than a sphere. I need to work some more on this still and fix the problem where you can click the level whatever the rotation.
|
AuthorMy name is William Hughes, and I study Games Development. I also am learning Web Development and general programming. Archives
May 2018
Categories |