DEVBLOG ONE: HALF A YEAR OF IMPROVEMENT

Published by

on

Well, here goes. It’s been ages since the last dev blog. That was in August 2023, and it’s now March 2024. A lot has happened in that time, too much for me to be able to cover succinctly, accurately, or in any sort of entertaining way.

Nevertheless, I’ll try! In the last half a year, PARKSIDE has come a very, very, very long way since the state it was in before. In Devblog Zero, among other concerns I expressed my anxiety that the game wasn’t “enough” of an Immersive Sim at that time, and now I can confidently say that things in that regard have improved drastically. A new suite of character abilities have partially seen to this, but ultimately what makes a game an Immersive Sim is somewhat of an equation amounting to the sum of the game’s parts multiplied by a player’s ingenuity, and I have strove to equip the player with the tools to experience this.

My main focus over the last six or seven months was to improve the game’s feel, mechanics, controls and player physics, ambient audio, AI, objectives, level routes… so pretty much everything. Embarrassingly, I posted publicly around the time of Devblog Zero that I was “ready” to release a public demo… yeah, right. It would’ve flopped so fucking hard if I did that. Things were NOT ready.

Here are some areas of the game I’ve improved, things I’ve done, and my experiences/thoughts in doing so. I hope you enjoy my unfiltered string of consciousness. Buckle in, dickwads.

NPC AI

Though I had a rudimentary infighting system already in place back at the time of the first Devblog, it was REALLY shoddy. My lack of knowledge of many tricks and certain things I could do in Unity made this really buggy, and really performance-intensive for no good reason. Enemies had very limited line-of-sight, as I was using triggers to detect when NPCs hostile to each other could engage. Of course, if you know about how triggers in Unity work, you would know that this would’ve created a lot of lag, also because I had not fully mastered Layer Masks (the ability to include or exclude physics layers from interactions/collisions/etc.) and so… yeah. It fucking sucked.

Thankfully, I improved my knowledge over time and worked hard to create an enemy infighting system based on periodic, layermasked spherecasts and subsequent line-of-sight raycasts, for human characters and robots, which now works a charm. Infighting and combat in general arealso more exciting, and importantly FAIR, thanks to improvements and tweaks to how enemies behave in combat.

I conducted a private playtest in February which resulted in my pre-demo release to-do list growing massively, and an important thing on my to-do list was to improve enemy AI in terms of combat and player stealth detection. In terms of the former, while fighting was fun, enemies swarmed/ran right into your face too often, and in the case of the National Archives level, every enemy on the map would often converge on your position.

This was even despite a “is player in sight” timeout that was already in place, so obviously this wasn’t working. I already had enemy strafing/retreating behaviours, and so to rectify enemy swarming (to clarify- this is enemies with guns, whereas of course melee-based enemies prefer to get in your face) I increased the chance of these secondary behaviours, tweaked the “in-sight check”, and made it so that instead of a gun-toting enemy’s AI component’s destination often being the exact player position, it would instead be a random position within 30 or so Unity distance units of the player.

I was also told, and I was inclined to agree, that often enemies would be too quick to the trigger. I added a randomized delay for when enemies first spotted the player, so you wouldn’t immediately be filled full of lead (but sometimes enemies could naturally be quicker.)

When it comes to stealth, things were fairly simplistic – if you walked/ran near an auto-attack enemy or if you went into their vision cone (within 65 degrees horizontally) you’d be spotted. Of course there were problems: there was no light level detection, that horizontal vision cone meant that if you were very high up from the enemy, there was no vertical cone, and you could be easily spotted, and it didn’t matter whether you were crouching or standing. All of these problems have been rectified, and I even added in noise investigation (breaking objects, throwing objects etc.) I also recorded some rather shitty, but still amusing “voice barks” – “Hey, who’s there? Go get that guy! Shit” etc. for enemies to say, but not too often.

Turrets, robot dogs, and drones all got AI upgrades, as they needed to be able to infight properly. After adding an upgrade to the hacking ability, which I’ll discuss, robots’ AI needed this overhaul since the player could now turn them against other NPCs at will. Thankfully this works well with the new human infighting system.

Overall, AI in PARKSIDE has made leaps and bounds and I am very proud of it, even though my code is spaghetti and it isn’t perfect. It may be janky but it’s charming and the good thing is it now works well and feels more dynamic and interactive.

PLAYER ABILITIES

Onto the player’s new abilities, which tie things together gameplay-wise and allow for a lot of creativity. The PARKSIDE demo includes five abilities, two of which are already purchased by default. These are:

  • Fervor (slow-motion, with an aim assisting upgrade.)
  • Wrench (hacking, with several useful upgrades)
  • Flight (agility enhancer, with melee combat upgrade)
  • Cloak (invisibility/active camo)
  • Ward (hazard protection with absorption upgrade)

The full game will have four more available abilities, which I won’t discuss yet, but the arsenal of upgrades available to the player in the demo makes even just these few short levels highly replayable. There are also some generic upgrades allowing you to upgrade your max health, armour, carried ammunition, lockpicking skill, etc.

There are a lot of possibilities – you can specialise in hacking and make robots and turrets fight or distract your enemies, absorb toxic gas and release it on your foes, sprint through the alleyways and on rooftops leaving your enemies in the dust, strike from the shadows and leave your enemies confused by becoming invisible…. and so on.

A lot of this just wasn’t possible in the game six months ago. The prototype versions of these upgrades were very basic, with no upgrades at all, and AI, element interaction systems etc. just weren’t sophisticated enough to allow for such creativity.

One of my favourites is “Alignment Shifter”, which allows you to turn any robot, drone, or turret against everyone except yourself. It’s very funny with the explosive drones and robot dogs, watching police or thugs battle desperately only to either be blown to pieces or pumped full of lead by your mechanical buddy. I plan to expand on this in the future, at least in terms of having companions/friendlies that follow you around in some missions.

The hazard absorbing upgrade for “Ward” is fun too. You can absorb any source of fire, gas, or electricity you find, and release it at will. Released electricity automatically disables/hacks electronics such as robots, keypads, cameras, computers in the vicinity, while gas can knock out humans nearby (and is also flammable in its natural environmental state.) Speaking of fire – this has been improved to be less buggy, which unfortunately it was in the past. And of course, as you should have been able to before, you can extinguish yourself by jumping into a body of water!

WEAPONS

Six months ago, there were no swappable weapons in PARKSIDE – you had a set arsenal you could acquire. Now, there are a total of 8 weapons in the game (including fists, excluding grenades, mines etc.). Two pistols, two SMGs, two rifles, a double-barrel shotgun, and good ol’ fisticuffs. (And kicking too – that was added!)

While the arsenal has improved a lot and is more than adequate for the demo, I plan to add more weapons in future. These will include some melee weapons which may have utilitarian uses too (fire axes could one-shot strong doors, knives could be used for lethal stealth-takedowns, etc…) and more guns! A mixture of light and heavy weapons will come, and I am planning to add more silent/even non-lethal weaponry. Taser, anyone?

AMBIENCE, MUSIC

I’m not great at discussing music/sound, but take my word for it that this has improved in PARKSIDE too. I’ve added lots of area ambient sound effects, often randomized, in levels which give a more immersive feel. I also intend to improve on this in the future and add more variety but currently there are sounds like distant conversations, bird chirps, car horns, industrial sounds, etc. that will play in levels.

I also made sure to add code/components to muffle certain sounds if the player is far from them or if there are walls obscuring. This doesn’t always work and doesn’t apply to ALL sounds, but for things like distant club music, enemy voices, and many other misc. sounds, it feels really good. Reverb zones in ventilation shafts and various spaces adds to the atmosphere too, with sound behaving approximately as you’d expect in those spaces.

Now for music – not much has changed here but I shuffled around and added/changed some tracks including the following one which you can listen to right here:

LEVEL DESIGN

After having just completed the demo, it’s been a weird feeling to realize that I have only spent the last six months working within a handful of levels when I had completed about twice or three times the content of the demos half a year ago. Now all those other levels are outdated again and need updating!

The demo levels have improved a lot over the last six months as required by gameplay systems and elements becoming much more complex. I’ve focused on things such as verticality, traversal/path choice, increasing density of urban/outdoor and indoor areas, and creating fun spaces for stealth/combat encounters.

Parts of the levels felt a bit empty before (to clarify, I did not CRAM levels full of shit, they genuinely felt like they were missing something) and didn’t have enough of a concrete jungle feeling. The National Archives level was also originally boring as fuck and needed more paths to traverse.

I am not sure what else I can talk about regarding level design improvements – while there are still things I would change if I were feeling particularly fiddly on a bad day, I am overall satisfied and hope you, the potential player, will be satisfied with how levels feel.

MISCELLANEOUS

My brain is stupid, and I tend not to take breaks while doing stuff like this – rather I sit and “nut it out” in one go, as is the case with this dev blog. I’ve ran out of things to talk about in great detail, so here is a gallery of miscellaneous other screenshots from the last six months of development. Salutations, best wishes, I hope you enjoy the demo when it’s out. If you haven’t already, follow me on X/Twitter/whatever. ‘Til next time.

Leave a comment

Create a website or blog at WordPress.com