Dev Blog - New Weapon, enemies and artwork.
Added 2022-01-12 21:22:28 +0000 UTCNo fucking way, we’re two days late for our bi-weekly update! I wanted to write this blog post 2 days ago but a hundred things got in the way of work so I had to delay it for a bit. Thankfully, there’s plenty to show here as we are entering our most productive month yet. So let's get moving right away
New enemy type: Crawler Mines
First up are the upcoming Crawlers Mines, our very first mechanical enemy. Crawlers Mines are often found hiding in dark corners of the level or underneath small gaps like ventilation shafts. After spotting a target and after a brief delay, they will emit a signal to all nearby Crawler Mines which causes them to go to attack mode. Once in attack mode, they begin to run towards their target and try to get as close as possible before eventually exploding. The damage output of a single Crawler Mine is relatively low.
Some Crawler Mines will attempt to jump and reach your face before exploding. If they succeed, extra damage is applied.
Crawlers Mines will not stop chasing you unless you manage to get far away from their line of sight. The most reliable way is to take care of them as soon as you can and not allow them to get close.
Crawler Mines are almost never alone and attack in swarms, at times more than 20. Lucky for you, one shot is enough to take them out and the splash damage that occurs on their death can easily cause a small chain reaction of Crawler Mine destruction. There are many other ways to deal with Crawler Mines so the creative player will have no trouble dealing with them. As usual, there’s more to defeat enemies than just your bullets.
Later in the game, Engineers gain the ability to deploy a singular Crawler Mine. While they are usually not a big threat on their own, one of them can be enough to force you to move or expose yourself to take care of the mine, which is not often ideal when dealing with soldiers.
Crawler Mines are currently being modelled by our 3D artist, John Lloyd.
I have some fun ideas with the Crawler Mine to make killing them as satisfying as possible, but we’ll save that for a later blog post!
Enemy rework: Engineer
The Engineer was originally supposed to be a variant of the Rifleman, with the only visual difference being their armor color. Riflemen are grey, engineers are red and this solution is fucking lazy.
Due to the lack of proper budget, it was intended to stay this way because we could not afford too many different models. But now that we have Patreon (thank you!) we've been able to turn them into visually more interesting enemies and make them more readable when dodging bullets. Not only are they getting their own set of animations now, they’re also getting their own suit of armor! The model is finished and is currently being applied and rigged up for animation. I expect to start rendering them soon so they can be added to the Pre-demo.
To avoid confusion about why some parts of the model are missing, the armor in the image above will be applied on top of our current Soldier model.
New enemy type: Mech
I’m keeping this one mostly under wraps for now. Armed with the fastest automatic weapon in the game and a shoulder mounted rocket launcher, the Mech (name still pending) is a complete wrecking machine. All I have to share is some concept art.
We are also working on another enemy type which we unfortunately cannot spoil, which will show up in one level of the game.
New weapon - Plasma Rifle (WIP)
Just like the Mech, this is very early on and will most likely be completely unrecognizable by the time it is finished. So all I have to share here is a rough sketch made by Silvia, who also did the Nailgun, SMG and Grenade Launcher.
We originally intended for the Nailgun to be the projectile-based weapon for the game, but we changed some of the weapon designs from a gameplay perspective (for the better, trust me!) and now we lack a projectile-based automatic weapon. We have decided to add one more weapon to Selaco outside of the ones we’ve talked about before (and the super secret super weapon) which is the Plasma Rifle. I don't think this needs much explaining. It’s an energy-based weapon that fires slow moving projectiles that deal high amounts of damage with small splash damage. Selaco’s enemies are all mobile, so by the time you get this weapon we expect the player to be used to the strafing patterns of the enemy. If you can lead your shots, this weapon will be a powerhouse.
Random Artwork Sketch - London 2239
Dawn in her younger years,. This art piece is finished already, but we’re keeping the rendered version under wraps. We have recently been able to work with the original creator of Dawn again, so we’re going to map out a bunch of things regarding the character.
Minor spoilers in this paragraph
Some sections of the game take place in the Selaco Streets and I always wanted the player to reach Dawn’s apartment at some point. There’s a good reason why she takes a small detour to visit her home which we won’t spoil right now, but it’s the perfect opportunity to give the player a peek into her daily life. A lot of unique assets will have to be made for this and once all the new upcoming enemies are out of the way, this will be next on the list.
Performance Improvements
Sleeping Mode
Cockatrice has been making some improvements to our very own ‘Selaco Engine’. One of the major flaws with GZDoom as far as performance is concerned are how actors (objects, AI, decorations) are handled. Regardless of how far an actor is removed from the player(s), actors are always using the maximum amount of resources available because of GZDoom’s ticking system.
This was a huge problem for Selaco because levels are filled to the brim with these actors. Every particle effect, every piece of decoration, blood splatter and what not are done using Actors. Smaller amounts don't matter much, but once you have 5000 of them in a single level it all begins to quickly add up.
Now however, actors that are relatively far away from the player are put in a so-called ‘sleeping’ state. This causes them to be ignored by the ticking system which reduces a huge amount of stress from the CPU.
Sprite Indexing
While Sleeping Mode allowed for huge performance gains in general, we also managed to improve performance in combat-heavy scenes. Sprite Indexing is a tough one to explain without getting too technical, but basically whenever certain actors got called in, they were searching through a lengthy list of available sprites to find the sprite index that belongs to them. This is usually not a very complicated task, but due to a very sloppy oversight this was done with each game tick. Every single particle and smoke effect was essentially browsing through a list of sprites 35 times a second. If you have 3000 particles in the scene, things are getting far more demanding than they have to be. This oversight has been fixed and made the game far more stable (after over a hundred tests we’ve not had a single crash). Below we have attached the differences in frame rate.
The previous Build of the game (Pre-demo version)
The new build of the game:
That’s a huge difference! It gets even more impressive because the level in the newer build has one brand new section added to it, making it a more complex level and yet manages to greatly outperform the older Pre-Demo build. Admiral tiers; we will be updating this branch as soon as possible!
Campaign
Now that I get to work on Selaco (mostly) fulltime, mapping is currently going faster than it has ever been before. I am currently working on the third level of the game (bare in mind, levels are not made in order), which is aiming to share the length of an entire Doom / Quake episode. As usual, screenshots will not be provided for non-demo levels for the time being but I can talk about it at least!
After beating the Selaco Street level, you find yourself in the Starlight Complex. The level starts off in a Hub area with a gigantic elevator in the middle. Curiously, 4 keyholes are positioned on every side of the elevator. The hub area has 4 different paths each leading to their own sub-level, with an elevator key being in every one of them. The goal is to find the keys and power the elevator and see where it leads. Levels can be taken out of order.
For Hardcore players this gets extra interesting (Hardcore Mode disables autosaving and requires players to spend credits on a Gwyn Machine in order to save their progress). The Hub area has a Gwyn station and a Workshop, but the levels themselves don't have any. Every individual level will have to be completed in one go without dying. The levels themselves have enough credits to warrant a save once you get back to the hub area, so it’s important to seek them out. Also plenty of Weapon Parts to upgrade your gear as you complete each level.
After inserting an Elevator Key, a door in the storage room opens, giving you some extra items before tackling the next level.
Objective Rework
Cockatrice added a reworked Objectives Screen. In an earlier version, objectives were level-based and did not carry over cross-level. They also never showed a proper list of tasks that had to be completed in order to beat the objective.
This has all been corrected. For the players that want some extra guidance, they can press M to retrieve a list of objectives. Of course, for those who prefer to figure everything out themselves, the option is available to turn off Objective Popups.
While not yet implemented at this time, detailed descriptions of the objectives can be found in Codex.
Voxels
You know the drill by now. Borion has been absolutely killing it with the prob department again. Here are some of the things he has made this month with, obviously, destroyed versions for everything.
Plastic Containers
Wet Floor sign
Cube Lamp
Koala Bear
Conclusion
There’s more I wanted to talk about here, but I figured the blog post is already longer than I originally intended so we will save those up for next week!
Now that most of the feedback we have gotten from the Pre-Demo have been addressed, we are getting things ready to release another update for the Pre-Demo testers. Thankfully, we have also been able to move forward with the full game. We are still actively looking for a level designer to join our team but, to be perfectly honest, I haven’t had time to look into all of the submissions yet. But I will, I promise! As mentioned before, we don’t want Selaco to be a short game and a level designer is needed if we want to make it a lengthy experience.
See you all in two weeks!
Wesley de Waart