Devlog 2


The focus this cycle has been on expanding and refining our weapons, developing the first level, adding sound effects, refining player controls, improving the enemy AI, and adding some new enemies.

Progress So Far

New Weapon

We have added a new weapon, The Rocket launcher. We wanted a weapon that the player had more control over and that was more AOE-focused. We are keen to see how people react to it in the playtest.

Level Development

A big majority of this week has been experimenting with how we are going to do the level design. A big thing to test is the pacing of the level. I.E how many ‘arena” rooms do we do in a row before moving to more platforming areas, and vice versa. 

For the upcoming play test, even though we have developed the level a decent amount, we are limiting it to a small portion of it, to more easily deal with the balancing.  

Player Controller 

We made improvements to the player controller, making the player feel more responsive, and for the logic of movement to be more cohesive. Some examples are: Sliding now only be done just after a dash or on a downward slope. We found that constantly being able to slide made the player feel more inconsistent.

 We also buffered a lot of inputs for the player I.E if you try to slide 0-0.2s before you could. That input would be held and automatically done, so you don’t have to hit perfect timings. 

We also did the same for the opposite case, if you slide 0-0.2s after losing velocity, you will start sliding and regain that velocity. While this does make the movement easier, it also makes it feel a lot more consistent.

Game Juice and QOL tweaks

The way we handled upgrades earlier was to prompt the player when they have leveled up to gain the upgrades. But during testing, we found that people tended to forget about it or not notice they had leveled up. So we removed the button and just had it pop up on level-up.

Another thing with the upgrades was that if you are spam-clicking when it pops up you will instantly get it without knowing what had happened. To fix this, we added a short delay to when you could interact with the buttons. 

We spent some time adding some game juice: some examples being: the camera zooming in\out depending on the player's velocity.

Guns and enemies now have audio.

The tesla coil visual effects got an overhaul and when enemies are hit by lightning their sprites flash as skeletons briefly.

There have been minor tweaks to ‘pixelrise’ normal textures with shaders to better fit the art style.

AI Improvements:

The AI in its former state was quite dumb, and not interesting to fight. They just beeline straight to you, making them easy to kite around and just assemble into a big conga line. A simple, but effective fix for this was to give the enemy a random position around the player to move towards. Only actually pathing to the player when they get close. 

The result of this was the Ai being less predictable and breaking up a lot more. While they are still kite-able, it is a bit harder to do so. 

A piece of feedback on the ranged enemy was that they where way to easy to kill. Once they are in range of the player they just stand still and do nothing. To solve this, we made the ranged ai re-path to a random point after firing their projectile. Another simple fix, but the result was that they were instantly harder and more interesting to fight.

New Enemies:

We added 3 new enemies:

A big slow enemy called the Slob, intended to be a bullet sink and to make it harder to move around with its much bigger body

A tiny flying enemy, aptly named the fly. It's super weak and does very little damage, but files above enemies and is faster than the player. Intended to break up the player's concentration when trying to kite enemies.

A small melee horde enemy called the gremlin, moves slower than the fly but has a bigger attack range.

Upgrade System

We made minor progress on the upgrade system but didn’t focus much on it this cycle. Our priority was the new weapons and player controller improvements.

Setbacks

(Liam)An issue I have been having is with lighting, the shadows completely bug in the editor, so I cannot tweak the lighting at all. Even baking the lighting causes the editor to crash. This has been annoying since I can’t change the lighting from default, to see how the level looks under different lights. Researching this online lead to suggestions to upgrade to windows 11. long story short, the install completely destroyed itself and corrupted my OS so i couldn't even boot. I had to spend half a day recovering my old windows install. Thanks Microsoft :)

(James) I couldn’t work on the project nearly as much as I would have liked to as I had moved out and lost a lot of free time. As a result, I was unable to add multiple weapons and upgrades to this build.

Optimizations:

we spent the first week mainly focusing on improving performance, some playtesters ran into slowdowns on the last waves. The interesting ones were:

Some of the more complex optimizations involved writing an object pooler that can be used for any object so that any dynamically spawned object is reused. 

We also batched what logic we could, such as the projectiles. Instead of running 100’s of mono behaviors, we condensed that into a single loop in a manager.  The same could be done for the logic that makes billboards look at the player.

AI’s only repeating when they need to & are limited in how many times, they can Repath

There where a bunch more, but they where minor and boring.

While we did not keep an accurate metric, this easily 4x our frame rate during intense conditions. 

Environment:

We also experimented with having the environment being 2D Billboarded sprites, instead of having 3D trees, we experimented with having more stylized sprites instead. We found this was a positive change and made the game look more cohesive. 

For the time being, we will make most objects in the arena interactable 3D (such as the rocks) to more easily define them from the environment. Plus having a 2d Sprite of a rock would make it more confusing if you had to jump over it or stand on it.

old art

Old Level

new art



From player feedback from the previous dev cycle players not knowing when weapons are going to fire orwhen they are ready. One way we fixed that was to add Hud elements around the crosshair signifying when each gun is ready, and when each is recharging. 

We also added the weapon stats to each weapon, and upgrade stat. this was to make the upgrades more obvious as to what they were doing. “Cooldown reduced by 20%) is harder to quantify than “cooldown is reduced by 0.2s)

We also tweaked the color and size of the UI, and added color coding to each weapon:



Looking Ahead

With the next wave of feedback, if they like what we have developed. We will go full swing into developing the level and adding many more weapons and enemies. We also plan to overhaul the upgrade system, having each weapon have a unique upgrade tree, with weapon-specific upgrades. And eventually, a final boss fights to close out the game.

Get Project Clockwork

Leave a comment

Log in with itch.io to leave a comment.