
Good day backers!
First blog post of 2023! Let me start by wishing all of you a very happy New Year and hope you had a lovely Christmas holiday! I'm feeling so lucky in 2023 so far that I am, once again, going to post this blog post without any editing / corrections made from the team. Please sound off in the comments how terrible the spelling in this blog post is and how I should never do this without approval from the team ever again.
For Selaco, a large focus for the year 2022 was promotion and advertising. The game itself progressed steadily as it went on, but a fair bit of time was spent hitting deadlines and ensuring we had something to show and play. We shared a preview build with influencers, we launched a patreon demo followed by a public demo, we listened to feedback for both demos and aimed to fix all of it and worked really hard to get the game known to an audience. I think we succeeded. With your help, we’ve been able to gather up to 125.000 demo downloads and almost 130.000 Wishlists. These are fantastic numbers for a studio our size, but we’re not there yet! Wishlists don't mean anything if we do not stick the landing, so the year 2023 will be all about the game itself. Add content, make it larger, expand upon the roster, the combat sandbox, the story, its lore and much more. Now it’s finally time to turn Selaco into an actual cohesive game rather than a bunch of separate scenes with non-demo enemies that bug out if you look at them wrong.
We expect developer blogs this year to be full of new stuff and in-depth discussions about new and finalized systems. We’re looking forward to it and hope you will stick around with us. Regardless of how long you are planning to support us, we thank you, greatly. And we will not let you down.
Lets jump into some of the things we’ve been working on:
New weapon (Sort of) - Dual SMG

Whenever we show the SMG on Twitter, our discord or anywhere really, the question about whether or not players can dual wield it becomes a rather common occurrence. Surely, we should be able to dual wield it, right? What would a John Woo inspired shooter be without one?
Let's talk about how it works first. We wanted it to look like an actual dual wield rather than having a duplicate sprite that is mirrored (albeit with the supporting hand removed). A pet peeve that I have with a lot of games is that sprites or models are very obviously mirrored. For a perfectly symmetric weapon, this is not always a problem, but you may spot that even little things on the weapon, like a handle that is supposed to be on the left side, is suddenly also on the right side. We did not want to do this, so added a second SMG to the scene and reanimated the entire weapon except with the second weapon in mind. Surprisingly, this ended up not taking nearly as long as I had thought! I think roughly 2 work days were spent implementing and animating this. The balancing aspect will take a lot longer, however.
When acquiring your first SMG, you will have access to a generic ‘Zoom’ alt-fire, similarly to the UC-36 Assault Rifle. Press the Alt Fire button to zoom which reduces spread. Useful, but nothing too exciting since players already have the UC-36 for precision shots. This is an intentional misdirect. Players not familiar with the game may pick it up and think this is it, but only a few minutes later, a player who pays attention may spot an Alt Fire Modification item that allows them to Dual Wield the SMG. Suddenly, a weapon that was already fun to shoot became even more fun! The player is now able to press the right mouse button to switch between single and dual wielding at any given time.

The ability to Dual Wield was not originally the plan. To be quite honest with you, I do not enjoy dual wielding in a lot of video games. Or rather, I enjoy the feedback it gives me as a player, but the way they are balanced out never works for me. Most games that do it, make it so powerful that there’s no reason not to dual wield since you would otherwise miss out on the DPS (Damage Per Second) potential of a dual wield. Or add certain awkward player limits by disallowing the ability to melee or throw grenades. We wanted to allow the player to still do everything they otherwise could, but also wanted to encourage players to not exclusively use the dual wield mode. And man, this was hard. We're still wrapping our head around it but we do have an idea on what direction to take.
Trigger warning for the gun nuts who are about to read this: The SMG shares its ammo with the UC-36 (Assault Rifle)! I know, heresy, that’s not how it’s supposed to work but it makes a lot of sense from a game design standpoint. The ammo being shared gives us an interesting balancing opportunity.
We knew we wanted an SMG relatively early on, and designed it around the idea that it's an inefficient bullet hose. Great at dealing damage, but a good amount of ammo will be sacrificed. With the UC-36 Assault Rifle being the most versatile weapon in your arsenal, this can be risky since you want to be able to use it. Every bullet for the UC-36 Assault Rifle hits a little harder, but does so at a slower rate. The SMG is the other way around. It kills things quicker than many other weapons and allows for run and gunning, but will eat bullets like it’s nothing.
Now imagine a dual-wield. You get double the damage but also double the ammo drain. The ammo efficiency takes even more of a hit since the spread is a lot higher which requires you to get even closer, risking taking extra damage at the expense of less wasted ammo. Thankfully, Machine Gun Ammo is plentiful in Selaco but you have to make sure to not spend everything with your dual SMG unless you are very sure that this is the right course of action (or in some cases, be fully aware that it's a bad idea but do it anyway because it brought you fun)
I think this concept of balancing works, but we will have to do a lot of number tweaking to ensure things make sense and work well. We haven’t gotten to that yet, but we will!
Watch Dual Wielding in action here:
https://www.youtube.com/watch?v=gYQBLJacZ1I&ab_channel=Selaco
New enemy: Saw Drone (name pending)

Little robotic saw drones that are relatively straightforward. They have a saw and they want to cut you with that saw! Relatively easy to kill, but often traverse in small packs and move around a fair bit. If you have a fast weapon like a nail gun or SMG, these are easily dispatched. Slower weapons work, but you better not miss!
Currently working on the AI of this thing while Lloyd is working on the model to use as a sprite reference. I expect the 3D model to be ready when the next blog post hits!
Level 4 Starlight status
Remember the hub-like level we talked about a while ago? It’s almost done! I did a full playtest yesterday and it ended up taking 90 minutes to beat. Long, but so much fun. The 4 areas that are connected to Starlight are a blast to play (and a visual treat!) that these 90 minutes flew by. Still a few things left but these are largely for the hub area level of Starlight. Every area you beat gets you an unlock that you can acquire in the hub, then, players are expected to spend some time in the Safe Room to prepare for the next area. When Level 4 is done, we move onto the streets. Which is going to give us a whole new set of challenges. It puts my mind at ease to know that just the 4th level is roughly the same length as a good amount of Early Access titles out there right now. I’m confident the launch of Selaco’s first chapter is going to provide a lengthy run that most players will not beat in one sitting especially when exploring and experimenting.
Speaking of streets, Arturo is working on some concept art for the street levels! Can’t wait to share those with you.
For now, have some screenshots of Level







New voxels
As is tradition, there are once again new voxels to show. We’re currently working on a functional Jukebox, but cannot show that one yet. What I can show, however…
Random props:

Interactive bio-analyzer:

Sandbag deformation (fully destroyed version is in the works):

A wire spool (please ignore the placeholder text):

And few more voxels have been made that I would love to show here, but perhaps some other time!
Other stuff:
We’re completely redoing GZDoom’s save/load menu and how autosaves are handled in the back-end. This is largely a prototype since we're still working on this!


Also some tweaks to the typography and style of the menu

Minor character tweak

Dawn is a little angrier than usual.
Exclusive Demo Level

As mentioned last year, we’re going to launch an extended demo for backers later this year where one additional level can be played; The Backrooms. We have no real date yet, as we want to focus on the full game for the time being. Best I can do is ‘’This year’’ for now!
This extended demo includes the SMG (dual wield included), Upgrade System, Crawler Mine enemies and a couple of other surprises. This is the level we used to preview the game to a select number of people, albeit upgraded!
Conclusion
I’m incredibly stoked for what’s to come in 2023. This year will be difficult, maybe even more so than last year, but now that we no longer have public deadlines after every corner, we can fully sink our teeth into this and make sure everything is snappy and fun to play without constant pressure. The release date we have internally is still standing, because I do find it crucial to have targets, but that’s far less demanding than a public one.
Thank you for taking this journey with us. See you in two weeks when we launch the next blog post!
Wesley de Waart
2023-01-07 18:36:05 +0000 UTC
View Post

Hello backers!
After launching the Big Demo Update last week, we wanted to work on one last thing before starting our vacation. Introducing: The Christmas Challenge, and you get it a few days earlier than anyone else! There are a few more things we want to improve, but at it's core it's entirely functional!
This was a ton of fun to be working on. We challenged ourselves to come up with a completely different take on Selaco’s gameplay and gave ourselves only 5 days to implement it. We aimed for something that felt high quality while also not requiring too much work. We are very curious to hear your thoughts on this one, as it's highly experimental.
Rules of The Christmas Challenge:
- The Christmas Challenge takes place in the usual Demo Levels
- All item pickups have been removed from the level
- Presents are spawned at random locations of the level. This could be under a table, on top of a closet or somewhere along the sides of the hallway
- Enemy squadrons will periodically spawn at random locations of the level
- Unwrap 10 presents to unlock the exit
How to play

- Go to your Steam Library and right click on Selaco Demo (If you own the ‘Selaco’ app as an Admiral, there is nothing you have to do! Just launch the game after downloading the update)
- Click on Properties
- Navigate to ‘Beta’
- Enter the code “MerryChristmasPatron”
After the update has been downloaded, launch a New Campaign like you usually would. The following option should now be visible. Check the box and hit ‘Proceed’! Good luck with the challenge, you will need it.

Information
One of the challenges we had while working on this was that we were not allowed to alter any of the levels or actor classes directly. Everything that happens in this event is applied through a layer of code that runs on top of the game. So every snow pile, enemy spawn, present, and gameplay mechanic is achieved without touching the .WAD files (the files we use to store level data). The only minor exception to this rule was the start of the first level, since we wanted the action to start right away without having to sit through the opening sequence.
Once the level is loaded, a script searches for every single item in the level and erases it permanently, unless the item is considered ‘Essential’ (Keycards, Cabinet Cards, upgrades).

We want the Christmas event to be cheery, so we replaced all human blood splatters with piles of (voxel) snow, and used an extra bit of code to move them towards nearby walls, giving the illusion that humans have been ploughing snow. ‘’But Selaco is indoors, right? How does snow wor —’’ Ssssh! This event has no rules when it comes to visuals!

Of course, snow cannot be absent during a Christmas event, so we’ve added indoor snow and the occasional fog bank to make it seem colder. Again, please don't question how something like this could happen. Who knows how indoor technology works in 2255.

Then we have gift spawning. This was surprisingly easy! A long time ago we talked in-depth about how our Pathfinding works; where we manually place path nodes down to create a network of traversal options for the enemy. Turns out that we can re-use path nodes to do other things besides just navigation. In this case, they are also used to decide where presents should spawn. We look for path nodes, then shoot multiple line traces (a technique used to gain information on surroundings) in different directions to look for nearby walls, then spawn the gift at one of the walls that we’ve located. This ensures that gifts only spawn in locations where it’s actually feasible. If we take a full-random approach where they are placed in random coordinates instead of path nodes, it’s very easy for them to spawn in unreachable / silly places.


When interacting with a present, they fly up into the air, spin around and get fancy, then spit out a selection of items that you can use. And you will need them, because this challenge is far from easy.
Conclusion
We hope you enjoy this little Christmas Challenge. It was quite a *clears throat* ..challenge.. to make, but a very fun learning experience for when we start working on our Randomizer Mode, which will be the highest effort Randomizer Mode you have ever seen (hopefully!).
We will keep our eyes and ears open for any bugs you may find and will fix these before the event goes live to the public (non-backers) on Saturday December 24!
Thank you for your continued support, it really is appreciated! The next blog post will be our very last blog post this year. See you then <3
Wesley de Waart
2022-12-22 21:59:14 +0000 UTC
View Post

Demo Update
It was a long time coming, but we’re finally ready to share an early Test version with our supporters (that’s you!).
This update has quite a hefty amount of changes and we need your help to iron out as many issues as we possibly can before we launch this demo publicly on December 16 (and trust me, there will be some bugs!). There’s plenty of time for us to fix any issue you might find, but we do need to hear about them.
Before we dive into the massive changelog, let's discuss some known issues:
Known Issues we're addressing before the Public Launch:
- Full gamepad support has been added, but some menus still require UI redesigns in order to better utilize this. The Wrist Codex is especially an offender here.
- AMD / Steam Deck users: Due to the multi-threading upgrade, there might be some stability issues. We are going to fix this ASAP and will update this blog post when it has been corrected! Intel machines should be stable.
- A number of prompts (like the one about Ridiculous Settings) might appear too big
- Gamepad Only: Getting a Tutorial Dialog will mention having to press Square(PS) / X(Xbox) to close it, but the correct input is actually Circle(PS)/A(Xbox)
How to gain access?
We are using the Steam Beta feature in order to provide access to the demo. Follow these steps in order to get the newest version:

1. Open Steam
2. Go to your Library.
3. Right click on Selaco Demo. (For admirals: This would be just ‘Selaco’)
4. Click Properties
5. Click on the Beta tab
6. Enter code HeyManCoolUpdate
7. Click on Check Code
8. The drop down above should now have the v0.4_BETA_TEST beta available. Click on it to download the Beta Version.
9. When ready, launch the demo and play the game
10. Upon a successful launch, the menu should mention that you have successfully updated to v0.4.
Having issues? Please let us know! We’re here to help. In our Discord server, the ‘Patreon Demo’ category should be unlocked as a backer. We can discuss things there!
I’m going to sign off, but not without dropping you a chunky changelog to read through.
Buckle up, because this is a long one.
Changelog
**Summary**
(Important side note: While this changelog covers the important parts, there's a lot that slipped by undocumented! There is more than just this list)
- Significant Quality of Life improvements
- Pacing changes
- Added multi-threaded asset loading to combat stutters and improve gameplay smoothness
- Added Steam Deck Support
- Added Gamepad support
- Challenge rework
- Drastic changes to levels, both in design and visuals
- Engine changes for better performance and smoother visuals
- 90% of the Particle Effects have been migrated to our own Particle System, making performance smoother in combat
- Fully rewritten, better looking flashlight
- Brand new gore system
- Hundreds of new special effects and sound effects
- Improved AI
- All weapons rebalanced
- First phase for Translation support
- Over a hundred bugs have been fixed
**Quality of Life / Improvements**
- Performing slides and dashes is now much more responsive and triggers faster.
- Added Zoom Interpolation to GZDoom. Sliding, zooming and firing your weapon will now smoothly adjust the camera FOV without giving the illusion of the game running at a low framerate..
- Fully reworked Roaring Cricket. See below for more information.
- Added Asynchronous Asset Loading to GZDoom. Both audio, textures and sprites will now be loaded on a different CPU thread to eliminate a large amount of stutter.
- All Pickup Items have been brightened up for improved readability.
- Expensive transparent effects are no longer rendered inside reflections (both floor, ceiling and walls). This greatly improves performance for transparent effects.
- Added partial Translation support (~95% done). Language Packs have not been added yet, but fan translations are now possible. We will explore this further in the future! A couple of smaller things like Datapad Labels are not translatable yet, but will be the case before we launch the full game.
- Reduced the default UI scale to make the HUD less big. To customize the HUD size, go to the Options Menu -> Interface -> ''UI Scale''.
- A large number of objects no longer collide with the player, significantly reducing the amount of objects blocking you.
- Some tutorial pop-ups have been made bigger for readability on smaller screens / players sitting further away from the screen.
- Challenges have been reworked. We have removed challenges that required the player to use specific methods to kill enemies (Explosive Kills, Melee Kills, Headshots, Throwing Knives etc.) and decided to only keep general kill challenges (Kill X amount of Y enemy type) and exploration challenges (Find X amount of Y, destroy X amount of Wall Cracks). The previous system forced players into playstyles they may not like or would or not offer a tactical advantage.
- Some challenges have increased requirements. The intent is to make exploration the main source of income rather than challenges. Explore to find Credit Bags!
- Added Fall Damage. We've considered this for a while now but eventually decided to pull through with it. General fall damage is low, but high enough to give a slight penalty for recklessly jumping off a high ledge.
- Added Safe Saving system. Players are no longer able to save when there is danger nearby (e.g. Active Grenades, alerted enemies).
- Added graphical presets for the Steam deck. ''Favor Performance'' and ''Favor Quality''.
- Improved enemy pathfinding. They will not get stuck nearly as often and will have less trouble chasing after you. It is now possible for AI to chase you around the entire level.
- Drastically improved loading times when entering a new level.
- Added Context-sensitive Death Tutorials. Getting killed by certain types of enemies will give relevant Tips on the death screen.
- All Demo levels have been improved, both in visuals and combat design. Expect new rooms, textures and more.
- Armor has been made more important. They absorb more damage and deplete less fast. With how damaging the enemy can be, this armor change makes scavenging for armor more rewarding and important.
- Hitting the wall while sliding will now cancel the slide, rather than awkwardly slide you backwards.
- Weapon Switching has been tweaked to feel snappier. It is now easier to switch weapons even during animations.
- Grabbing objects now lowers the player's weapon to keep the screen free of additional clutter.
- Added 'Slide To Cover' mechanic. Sliding towards the cover will automatically crouch you until the crouch button is pressed. This feature can be disabled in the Gameplay menu.
- Added 'Shadow Quality' setting, which is separate from 'Shadow Resolution'. This setting adjusts the amount of lights that cast a shadow. A lower setting means less effects casting shadows (e.g. muzzle flashes, flashlight and more)
- Updated explosion effects to look juicier and more performant.
- Complete rework for lighting effects. All lights attached to special effects like explosions and muzzle flashes perform better than ever before.
- Smoke effects have a bit more transparency applied to them, causing less problems with visibility. (The RIDICULOUS setting of Smoke Quality uses the same thickness as the previous version)
- Migrated most effects to our own Particle System, resulting in more visually appealing particles that are more performance friendly.
- Added Particle Limiter. In case extreme amounts are happening to prevent stutters.
- Added option to increase Zoom Sensitivity above 1.0.
- Reduced CPU load for individual smoke effects.
- Applied some tweaks to the ‘Customize Control’ menu. They are categorized better and Weapon Key binds now show weapon names.
- Full rewrite for the flashlight. The new system runs and looks better, while also improving the way soldiers react to your flashlight.
- Improved feedback when punching enemies against walls through both visuals and audio.
- Added 'Longest Headshot' statistic.
- Crouching behind flipped cover will now properly protect your head
- Added 'coyote timer' to jumping, making platforming more responsive and less prone to failed jumps during platforming sections
- Other smaller improvements to how jumps are handled
- Dashes and Slides no longer share the same cooldown.
- Some of the music volume has increased.
- Added Dash Cooldown indicators
- Explosions made by the player deal significantly less self damage. Standing close to the origin of the explosion will still end up dealing a significant amount of damage, however.
- 'Secrets' label in the Datapad has been renamed to 'Current area secrets' and 'Total Level Secrets.
- All guns play a sound effect when the last bullet of a magazine is fired.
- HARDCORE MODE: Completing Level 1-1 will now give you a confirmation box asking if you are sure about continuing on with Hardcore Mode. In case you feel like Hardcore Mode is a bit too difficult, you can revert to Traditional Mode.
- ACCESSIBILITY OPTION: Finished Photosensitivity modes. ''Reduce Light flickering'' will eliminate most the light effects that last for a short duration of time, and ''Reduced Muzzle Flashes'' no longer kills the entire muzzle flash light, but rather makes them smaller and less strong; maintaining a power feeling weapon while still being more friendly towards the eyes.
- ACCESSIBILITY OPTION: Added auto-climbing feature. Run up to a ledge that's within reach and climb automatically!
- ACCESSIBILITY OPTION: Streamlined Screenshake intensity setting to be less overly complicated.
- ACCESSIBILITY OPTION: (Gamepad Only) Added Assisted Mode. On Commander Difficulty and below, Assisted Mode will provide additional guidance to lock-on to targets. Use this if you have difficulty aiming with a gamepad.
- ACCESSIBILITY OPTION: (Gamepad Only, requires Assisted Mode) Added option to enable a Ringing sound. This is a sound queue that plays when Lock-on acquires a target, and when the target is inside your crosshair.
- ACCESSIBILITY OPTION: Added 'Disable Camera Motion' setting. This will eliminate movement from the camera when using melee, sliding and other things.
- ACCESSIBILITY OPTION: Added 'Censor gore' setting. This will reduce the amount of blood and gibs, as well as altered scripts to contain less depictions of violence.
**VAC-BOTS**
Our little vacuum cleaner friends have gotten more competent at their job!
- VAC-BOTS now properly clean up trash that they can see
- Added VAC-BOT Emotion System. Their display will now portray how they feel and they will adjust based on circumstances. They will actively flee from incoming explosions, find a way to hide when shots are fired, look disgusted when cleaning up gibs and can get lonely if left alone for too long. If you want to keep them happy, give them frequent pets or stuff to clean up that aren't giblets.
- VAC-BOTS now utilize Pathfinding, allowing them to reach their destination better
- Added a cleanup effect when a VAC-BOT erases something from the map.
**Gamepad (BETA)**
- The game can now be fully played using a Gamepad. Keep in mind that this is an early attempt and many fixes and improvements are still coming. Feel like something is missing? Reach out and give us your input!
- Unlocked Gamepad options
- Rewrote the majority of GZDoom's Gamepad input code. Setting it to modern standards and improving support on Linux devices (and therefore Steam Deck)
- Added Vibration Support to GZDoom
- Added Aim Acceleration to GZDoom
- Added support for both Xbox and Playstation button prompts. Visible buttons can be tweaked in the Gamepad Menu.
- Added 3 stages of Aim Assist; Weak, Default, Strong. This adjusts how much the Aim Assist is going to help you aim.
- Added joystick button prompts that dynamically adjust based on the input device that is being used. Gamepad and KB/M are able to be used simultaneously.
- Added optional Lock-on mode for lower difficulties.
- Gyroscope Aiming is not included natively, but should work perfectly fine when using Steam's Gyroscope mode. If you have any trouble with this, reach out to us and let us know!
**World / Presentation**
- Updated Splash Screen
- Re-rendered some of the sprite work to make them seem less out of place. Not all sprites are properly 'converted' yet. This will be an on-going process.
- Enemy muzzle flashes now properly follow the shooter and no longer clip through the sprite of the shooter.
- Added proper impact effects when shooting at Window Blinds
- Added impact effects when a shot down sign impacts the floor.
- Added 10 new variations for Wall Paintings
- Enemy footsteps now react to glass shards and leave footprints behind when standing on water, blood or slime.
- Improved visual effects for Smoke Grenades
- Added new variations of Cardboard Boxes.
- Changes to Crate destruction to make them a bit more satisfying to break.
- All weapon descriptions in your Wrist Codex have updated artwork
- Brand new effects when destroying window panes. This new system ensures that the amount of glass shard matches the size of the window pane. Longer windows spawn more glass, smaller windows spawn less.
- Added Breathing Frames for the Roaring Cricket.
- Dawn shields her eyes from explosions much faster.
- Cleaned up the Slide Entering animation, making it less jerky
- Added new death animations for all enemy types
- With subtitles enabled, the names of the opposing side are written in Orange.
- Most actors will now properly adjust to the slope of the floor
- Food now fades out when eaten, rather than disappear right away
- Bullet Brass code has been entirely rewritten to be more performance friendly and visually appealing.
- All weapons will now spawn a unique bullet case model when fired.
- Added brand new toilet voxels. Happy flushing!
- Dawn will no longer eat the flag of a burger.
- Level Names have been adjusted to be more clear. A "Level" is broken up into multiple "Areas". Every loading zone takes you to a new area within the level.
- Shockwave effects from explosions are now smoother
- Drastic adjustments to the lighting of the levels to reduce visual busyness
- Retextured and redesigned significant portions of the demo level
- Walking on human blood will now leave bloody footprints behind
- Added transition effect when interacting with a Camera Feed
- Added splash effects when jumping into water
- Gore Changes:
| Gore rewrite! Improved performance and less bloated code.
| Added Intestines when gibbing enemies
| Added brain pieces for headshots / full gibs
| Added slime pools for enemies who have been dead for a while.
| Brand new sound effects for gore/impact/combat related audio
| Additional severed arm and legs sprites
| The position of blood effects when killing an enemy is now relative to the point of impact
| Recolored the blood effects and adjusted the way they are illuminated by light sources, resulting in an overall more pleasing visual
| Fixed a bunch of gore related errors
- Optimized ejected Weapon Magazine models. With the new optimization, we can keep them in the level for much longer. Playing with ''Effects Lifespan'' on Ultra, keeps them around permanently
**AUDIO**
- UC-36 and Shotgun have improved sound effects
- You will now be able to hear the mechanisms of the weapon when firing while zoomed in
- Added sound effects when hitting wooden surfaces
- Added unique sound effects per bullet casing type. Heavy sounds for big bullets, lighter sounds for machineguns.
- Added unique sound effects for paintings being hit, and new sounds for when they hit the floor
- New sound effects for Destroying Crates
- Added additional foley sounds for different player actions
- Brand new bullets impact SFX, making them sound more punchy and impactful than before.
- Added new sound effects for bouncing metal,
- Added sound effect for paper debris touching the floor
- Added sound effect for bouncing ceramic pieces.
- Updated sound effects for player footsteps
- Added new sound effects for Metal floors
- Added new sound effects for walking on boxes
- Added squishy sound effect when walking on blood piles
- Security Camera sounds have been updated so it's no longer a stock sound
- Enemy soldiers now have their own footstep and foley sound effects for improved recognition
- All weapons now have unique (de)selection sounds
**GAMEPLAY BALANCE**
Roaring Cricket [rework]:
While we always liked how much damage it dealt, its magazine capacity and recoil might have been too troublesome. We've made some changes to better balance this out and make it easier to use.
- Primary Fire Recoil reduced (1.5 -> 0.7). Alt Fire remains the same as before.
- Magazine capacity increased (9 -> 12)
- Damage per shot reduced (60 -> 48)
- Max ammo reserve increased (45 -> 48)
- Increased Roaring Cricket ammo pickup (9 -> 12)
- Roaring Cricket alt fire now works with less than 3 shots. It will deplete the rest of the magazine instead.
- Swapping speed is now nearly instant, making this the ideal weapon to switch to when caught with an empty weapon during a fight.
- Particle trail is now instant between player and target. The previous version made the Roaring Cricket look like a projectile weapon instead of hitscan.
UC-36 Assault Rifle:
- Changes made to the firing sound to sound more punchy
- Some sprite improvements when Zooming
- Changes to how recoil is handled.
ESG-24 Shotgun:
- Beefed up the firing sound of the shotgun
Melee:
- Quick Melee with your weapon is now much faster.
- Weapon Melee damage has been reduced
- Collision damage has increased. For maximum effectiveness, try hitting targets against walls.
Rifleman:
- Added Strafe Node System. See below!
- 'Attacker' Rifleman now has a slight speed boost to have an easier time closing the gap.
- Rifleman now have less issue dealing with faraway targets.
Engineer:
- Slight reduction in health (135 -> 125). This change should be enough to make it easier to take him down after he sets his sights on you.
- Engineers no longer fire when there's a teammate in their line of fire.
- Added Suppression role. Engineers can now choose to not rush towards their target, but instead unload shotgun shells from a distance to keep targets suppressed.
Energy Shields
- Energy Shields (that soldiers can deploy after reaching Invasion Tier 1) felt a little weak because their height was small enough to not cover the head of the enemy soldiers. We've added an extra piece on top that gives them a bit more protection
Juggernaut:
We liked how fast-paced and lethal the Juggernaut is. It's an opponent that has a similar moveset as the player and requires the player to use everything they have learned so far. However, we also felt he was a bit too dominating. Here are some tweaks to make him a more fun opponent while still being a dominant presence. Remember that the Juggernaut is not a one-off bossfight. You will encounter him often during the full campaign and he frequently learns new tricks!
- Health Reduced (1200 -> 1000)
- Tracer Speed has been reduced (80 -> 70)
- Added a slight delay before the Juggernaut starts firing during a Sidewash dash.
- Increased Splash Damage Range after leaping (300 -> 390)
Captain Difficulty and above:
- Various stat tweaks to enemy tactics and action speeds
- Portable Medkits now heal for 50, just like the other difficulties. We felt that 25 was not enough for such an uncommon item.
- Portable Medkits healing rate has been halved.
Admiral Difficulty:
- Given the slight tweaks to a certain number of factors, Admiral enemies deal 10% more damage to compensate.
- Enemies are much more mobile in this difficult setting.
**AI**
- Added Strafe Node system. This will allow soldiers to dynamically adjust their strafing behavior based on player location. This results in soldiers being more intelligent with how they strafe. A confident soldier with high health will be more likely to stay within line of sight of their target, while a low health soldier is more likely to strafe towards nearby walls for cover.
- All AI have less trouble locating the player and can now chase you around the entire level.
- Added intelligent reloading. When a soldier is low on ammo, there is a chance they will seek cover to reload their weapon.
- Pathfinding changes to make it easier for a group of enemies to flank the player
- Animation smoothing, logic performance improvements and other additional things have been added.
**BUGS / MINOR TWEAKS**
- 'Rifle Start' can no longer be checked. It is not supposed to be present in the demo because there's only one level, making a Rifle Start impossible.
- The Credits Track now fades in.
- Fixed a bug where the 'Open Codex' button would not work when '5' was one of the assigned buttons.
- Items can no longer be picked up through the walls
- Fixed an error where footstep sounds would play underwater
- Corpse hitboxes are no longer overly large, causing enemies to keep hitting corpses despite going over them.
- Players can no longer slide jump when there is no space to jump, preventing players from getting stuck
- Fixed a goof where the weapon sprites would show a breathing animation when underwater
- Soldiers no longer kill themselves with Smoke Grenades
- Fixed an error where Dawn's underwater speed was much faster than intended
- Fixed a bug where the UC-36's firing sound would abruptly end without a proper tail sound.
- Fixed an error where smoke grenades used an outdated sound effect from way back in our modding days
- Fixed a bug where tracers would be blocked by plants. My sincere apologies to all ACE Security agents who used plants as armor.
- Adjusted the size of certain objects. The scaling was not very consistent. This includes enemy sprite work
- Applied a minor tweak to Interaction Prompts to make them update faster and seem more responsive
- Stationary Grenades are no longer shootable
- Fixed an error where enemies touched by a burning actor would lose their Self Lighting properties
- Fixed a bug where bananas would briefly turn into a sandwich when eaten
- Fixed a bug where crates would jitter around the level when hit by particles
- Certain smaller items no longer collide with the player
- Dawn will no longer shield her eyes from explosions when dead
- Fixed a bug where throwing fire extinguishers against enemies would sometimes not put them on the floor, but would have them enter their Collision animation instead
- Fixed a bug where paper pieces would have a random angle upon touching the floor
- Fixed a bug where the hitbox of flipped cover was not high enough to fully protect a crouching player.
- Fixed a bug where keyboards could not get destroyed with melee attacks
- Fixed a bug where Zoom Sensitivity would have an effect on the overall sensitivity
- Fixed an error where some areas of the game looked darker than intended on the Low graphics setting
- Armor Shards can no longer be picked up when at full armor.
- Fixed an error that forced XY Billboarding on enemy soldiers after hitting them with melee.
- Fixed a bug where picking up Health Injector would take your health away when on health above 100
- Enemies colliding with falls no longer damage the player when nearby
- Sliding away after being near an explosion will no longer cause Dawn to awkwardly shield her eyes too late, and temporarily get 3 arms.
- Fixed a bug where 'chair base' could not be picked up
- Fixed an error where the Shotgun muzzle flash was not properly aligned to the animation of the weapon
- Fixed a bug where a certain easter egg progress a challenge
- Fixed a bug where Fire Extinguishers could pass through rushing engineers
- Fixed Fire Extinguisher duplication glitch.
- Zooming while reloading no longer causes the camera to 'jitter' to one game tick
- Fixed a bug where the 'end fire' sound would not properly play when a player stops firing a Zoomed UC-36
- Fixed an error in the Gameplay Menu where 'Automatic mode' and 'Manual Mode' were swapped around.
- Fixed an error where HoneyComb Cases would not properly align to the slopes they were on
- Fixed an error where using iron sights showed an unintended crosshair
- Fixed a bug where floor paper decals would not spawn
- Pathfinder's alert sound now persists to Level 1-2. This was always intended but ended up broken
- 'Toggle Run' has been renamed to 'Toggle Walk', since Run is already the default speed.
- Flares carried by the player now correctly transition between levels
- Sliding Sounds now require the player to touch the floor. Once contact with the floor is removed, the sliding sound stops.
- Fixed a bug where the player could slide while crouching, making their hitboxes 1 pixel high
- Fixed a bug where Strafe Tilting was still applied when dead
- Dying while holding an object will now properly drop the object
- Fixed a bug where bullet casings were able to climb staircases
- Fixed a bug where a couple of icons on the automap would disappear when getting far away from them.
- Fixed a bug where some footstep sounds were not playing correctly
- Fixed a rendering bug where Lightshafts would show artifacts at the bottom
- Fixed a bug where players could climb into very narrow surfaces and get stuck
- "Disable Hud" now properly disables the visor frame as well
- Fixed a bug where Slide Kicks would stack multiple times, sending enemies flying further than intended. (It was funny though! Will keep it in mind for a mutator >:) )
- The Quality menu that appears on first launch now correctly pauses the game
- Fixed an error where reloading an empty Shotgun would 'twitch' the weapon sprite
- Fixed a bug where reloading a weapon while being at max ammo reserve capacity would take too much ammo away
2022-12-02 20:03:41 +0000 UTC
View Post

Good day everyone,
Phew, what a hard couple of weeks we have been getting ourselves into! We have 3 deadlines incoming and the amount of work forced me to delay the Developer Blog by a couple of days. We’ll discuss those later on.
Lets dive in!
Selaco Test Lab

If you are an Admiral Backer, you should have received an email inviting you to the Selaco Test Lab. A very small contained version of Selaco with a testing ground to test Gamepad support. This version also improves support on the Steam Deck.
If you have not received an email, please reach out to us. contact@alteredorbitstudios.com
Steam Deck
We are finally getting a Steam Deck! Well, one of us is. In order to make the Steam Deck version of Selaco the best it can be, we had to get our hands on a Steam Deck ourselves. At this time of writing, Cockatrice (our engine programmer) should be receiving his device today. Once the technical-side of things are properly finetuned and optimized, he will send the Steam Deck to me so I can get to work on the gameplay-side of things. Yes, this is low-budget game development at its finest!
I mentioned 3 deadlines earlier. Let's go through them all. And yes, I am absolutely taking a week off after all of the upcoming deadlines are completed.
Deadline 1: Selaco - Multithreading Test Version
Excitement! We finally have it working! Full asynchronous Texture and Sound loading in GZDoom. Internally, we’ve been doing all of our playtests using this new multi-threaded version and it works amazingly well. The game has never felt smoother and this is yet another huge step for the game’s performance. I can finally throw a grenade in the middle of a very busy scene and not get any stuttering when the explosion occurs.
This weekend, on November 26th, we are launching our very first Multithreading Test Version to a small group of testers. This will be the exact same Demo build that is currently on Steam, but will feature an updated engine that eliminates stutters.
If you want to join, please visit our Discord Page and click on the #Selaco-Testing channel! https://discord.gg/selacogame
Deadline 2: Selaco - Patreon v0.40 Demo Test
This is a big one! A few days ago we posted this tweet on our Twitter Page. Not only was this our first attempt at making something that vaguely resembles a trailer (no, seriously! All video’s we’ve shown publicly have been raw and unedited footage because none of us are good video editors and we also want the game to be as honest as possible).
The footage itself, I think, came out okay but there were some severe audio issues. Apparently it was a bit loud. Like, really loud. It slipped it's way because I completely forgot to take audio levels into consideration and I did not find out about it until I stumbled upon a Selaco thread in PC /r/pcgaming (We actually hit the front page of that subreddit!)

Whooooops...
Deadline 3 - v0.40 Demo launch
This is where we launch the version to the public. As usual, this is extremely frightening but oh-so exciting. We love this new version, we feel like it improved almost everything there is to improve. Of course, this is still far from the final version, but the amount of polish is becoming increasingly high and this is a major step up we feel.
We discussed a number of these changes two blog posts ago. Feel free to read them if you want!
Enough deadlines. Let's discuss some in-dev stuff
Coyote Jump

This is something I always knew existed, but was never familiar with the term and I think it’s quite interesting to share. The Coyote Timer is commonly used in video games and is a crucial system to have.
We are all familiar with the ‘’Wile-e Coyote moment’’, right? Where Wil-e runs over the edge of a cliff, but not actually dropping down until he realizes this and shares a moment with the audience.
Did you know that most video games use something similar? Probably even your favorite shooter! It’s a technique used to make jumping feel more responsive.
By default, GZDoom denies the player the ability to jump the moment their feet are off the ground. This is, of course, very realistic, but this means that platforming sections can get rather unresponsive and frustrating. There will be plenty of occasions where you hit the Jump button, but realizing too late that your character is already over the edge of the platform, so you end up hitting the floor instead of the desired destination. Platformers don't have this problem nearly as much, because you are always able to see your character. In a First Person Shooter however, this becomes challenging since you cannot see your characters feet when looking in front of you. You dont want to look below you while platforming, you want to look at the thing you are jumping to!

source: HowToConstructDemos.com
This is where the Coyote Timer comes in. The moment you fall off a ledge, the game is granting you one quick chance to react and still perform a jump, despite your feet no longer hitting the floor. This is a very brief window of time, but significant enough to make all the difference during a platforming section.
This has now been added to Selaco and it feels great. The demo does not have a lot of platforming, but the Storage Room towards the end would make for a solid testing ground for this mechanic.
Scrapped Weapon Model
Hey remember when we showed a scrapped Railgun design a few blog posts ago? Seasoned backers have probably seen it already, it was this model:

What if I told you, there’s another scrapped model? Low and behold, the other Railgun!

(Scrapped railgun, attempt #2)
Just like the Railgun before it, I do not dislike the design, but I do feel like it’s rather generic. Unfortunately, this is one of those moments where I completely botched my role as an art director (I’m learning as I go!) by doing a bad job at providing instructions to an insanely talented artist. I don't usually enter a phase where I feel creatively bankrupt, but around the time we got to work on the Railgun, I was juggling around multiple different Selaco-related projects and was not around enough to provide clear guidance to our artist. When I was around, my head just wasn’t there, so my instructions were not optimal.
The result is a good looking Railgun with a design we’ve seen time and time again in other videogames. For a weapon this important, we wanted something incredible.
We scrapped the whole thing and I had a very good late-night chat with SIlvia (our Concept Artists) to discuss the direction we should go. After a bunch of sketches and iterations, we managed to get a weapon design that is easily our favorite weapon in our entire roster right now. The concept art is done, we’ve done test runs with a Test Model and are fully convinced that this is the design. It will unfortunately remain behind closed doors until the game launches, but trust me that it’s amazing and I cannot wait for you to get this weapon in the game.
Voxel Models
Feast your eyes on some new voxel models. As usual, made by Borion! We needed some lab equipment for a later level so got to work on a whole bunch at once.


Yes, they can be destroyed, obviously!

New Enemy Faction
Another thing that has to stay behind closed doors (for now?) is the addition of 3 new enemy types that are separate from the usual Soldier grunts. These will show up in the 4th level of the game.
Their model is ready, so once the demo update is out there, I start implementing them into the game and start working on the animations.
The animation part of these new enemies are going to be very challenging for me. I’m used to animating regular humanoids (the Crawler Mines were easy because it’s a robotic ‘spider’ with only 4 legs), but these are completely different. Very excited to expand my animation skills into something less traditional. Thankfully for me, sprites are a lot easier to animate because rather than having to make a very fluid bit of motion at a high frame rate, I have only a handful of frames to worry about!
Death Animations
We’ve added a handful of new death animations to all of our enemies. Even the big juggernaut finally dies properly without awkwardly looking at the player while exploding into pieces. Hooray!
Here is one of the new Death Animations for the Engineer. Quite a complex one, because it has multiple stages and we had to factor in that some players would stop shooting halfway in the sequence, so it took quite a fair amount of spritework. Worth it though, because, oh boy, is it satisfying. So satisfying even, that I’m sharing two gifs!


[Please ignore how the sprite turns invisible for one frame. It’s an issue with Multi-threading we are currently working on fixing!]
Conclusion
One minor issue we are currently dealing with, is that one of our artists is having some difficulty locating a new home. I think I mentioned in an earlier blog post that one of our artists is moving, but unfortunately a rather last-minute cancellation took place, forcing them to find a new place to temporarily live. The whole process has been a nightmare, so the work output in terms of art has been a little slower than usual. Thankfully, they are still able to work. Hopefully I’ll have some better news on that end in the next blog post.
Everything else has been going very well in regards to Selaco. Progress is rapid and we are on track to hit all of the 3 upcoming deadlines.
Remember to keep an eye out on your email, since we’re sending you an email soon with a private beta password for the Selaco Demo.
See you there, Patron. And thank you for your support <3
Wesley
2022-11-24 17:03:41 +0000 UTC
View Post

Good day everyone,
It has been.. *gulp* -- 16 days since our last blog post! Apologies for the slight delay, we’ve been working really hard at work getting the demo updated ready and are pleased to share a bunch of things we’ve been working on! It’s been quite a productive couple of days.
Demo Testing
We’re gearing up for testing and are planning to get the demo ready for active Patrons by the end of the month. A Steam Beta Password will be emailed to you with the email address you provided to Patreon.
The demo test is pretty much what the public is going to get, minus some additional fixes and improvements. The goal of the test is to see if the new build runs properly for everyone. If you are experiencing any problems, do not hesitate to let us know! We will try to get it fixed before going public with the build.
Gamepad Support

Phew, this one took a while, but full controller support has been added!
Before we launched our demo 6 months ago, it was originally our intention to include Gamepad Support on demo launch. We figured adding controller support to the game would be easy since GZDoom largely already has gamepad support built-in, but as any programmer or designer may know, nothing is ever as easy as it seems. While we never wanted to pull our hair out (we got close to it once!), it did end up being quite a bit of effort but was generally quite a lot of fun to work on..
Before we started working on it, we both bought a ‘next generation’ controller. I got a Dual Sense and used my old DualShock 4. Cockatrice got an Xbox One controller. According to Steam, these are the most popular controllers so we wanted to ensure these controllers were properly supported.
Aim Assist
This was the first hurdle. Selaco is quite a fast-paced action title where enemies are constantly moving around and some enemies are also capable of flying towards the other side of the room in a heartbeat. Unless players have their aiming sensitivity at a very high value, players will have a hard time keeping track of mobile targets.
We managed to implement an Aim Assist solution to GZDoom that allows players full control over their movement while also guiding the player just enough to be helpful. If you aim over a target, the aiming sensitivity will ease up a little, making it easier to stay on the target. Additionally, if the target is moving, the game will slowly steer you towards its direction as long as your crosshair stays near the target.
We’re also including an Assisted Mode, which makes the camera tracking stronger and requires far less aiming. We expect this to make the game much more playable for less experienced gamers or to those with a disability.
Button prompts
Up next is button prompts. First and foremost, GZDoom cannot detect what type of controller is being used by the player, so we cannot make the game decide whether to show Xbox or Playstation controller icons. The second problem is with the way GZDoom handles fonts, which is designed around letters and numbers, not gamepad symbols.
For the time being we had to rely on a manual solution for the button prompts, where we allow the player to manually select whether they want to see Xbox or Playstation buttons. This is far from ideal and goes against our ‘Plug & Play’ approach, but until we can figure out a way to properly retrieve Gamepad information, this is how it has to be. Thankfully, it’s just a minor inconvenience.
The font problem was fixed a while ago, but we managed to improve it further ever since adding a Fontmap system; where we have a PNG consisting of all the required icons and use a reference table with coordinates to display the correct icons to the player. The original intent was to speed up loading times (since it no longer has to load 3500 files of individual symbols) but it came with the added benefit of streamlining our icons as well.

Rumble (Vibration Support)
Oh did we have some fun with this! So much so, that the word ‘Rumble’ has begun to sound like a goofy word. Rumble was not originally supported in GZDoom, but thanks to the power of Xinput (an API that makes implementing modern controller support easier) we’ve been able to add it to the engine.
I’ve always been a big fan of good rumble in a game. While you may not notice it directly, good vibration support in a videogame can greatly improve the ‘feel’ of a game. With Selaco’s focus on immersion, we wanted to go all-in with rumble. Every explosion, every earthquake, everytime you land on the floor after a jump.. Everything had to vibrate the controller accordingly at different intensities. While most of them will be gentle (like sliding), some of them will be stronger (like firing a powerful weapon). We’re happy with how this one turned out and are amazed by just how much it adds to the overall experience.
DirectInput is also available, but is not recommended at this time. It will most likely require some manual tweaking on the technical side of things from the user. Do let us know if you need help setting this up!
Making it actually work
While I am personally a huge fan of gamepads, Selaco was always designed with Keyboard & Mouse in mind because I knew GZDoom’s gamepad support was far too limited to actually make the game work properly.
Thankfully, now that I no longer have to do the coding by myself, Cockatrice and I managed to each cover a wide range of tasks to get controller support done together at a much faster rate. While he kept busy with the UI and the technical side of things, I went to work on Aim Assist and general gameplay. Many little quirks suddenly became a problem when using a gamepad. The way Dashes were coded was that it would look at a bunch of fixed directions the player was traversing and a specific set of instructions would be triggered based on that information. A joystick is much more precise in that sense, making it impossible to dash unless you managed to hit one of the fixed directions. I had to do some rewriting here and there to ensure that these systems work. UI is another issue, the entire Wrist Computer is largely designed around Keyboard & Mouse so required some tweaking to streamline on a controller.
Weapon switching is another problem. Currently the Left and Right D-pad buttons are used to cycle through weapons. Not a problem for the demo, since you only have 4 weapons, but the full game will have a full arsenal where this solution is no longer ideal. We will be looking into a Weapon Wheel in the future.
Customization
As an added bonus, we made sure players can tweak everything to their liking. We’ve added a checkbox that unlocks advanced features like these:

Pathfinding
I can say with full confidence that everybody who spent at least 30 minutes with the demo has noticed a few occasions where soldiers got stuck on geometry or tried to run through the walls. And if you haven’t, they were probably doing it without you knowing! We we’re aware of this prior to launch but did not manage to find the time to fix the problems. Nowadays we have ReformedJoe to take care of level design, allowing me more time to iron our problems and improve core systems. I’ve improved pathfinding significantly where soldiers spent less time running into walls or searching for stairs, and more time actually getting closer to the target!
At this time of writing, I’m working on a communication system where soldiers can share their route with each other and avoid using similar paths, resulting in everybody taking a different route towards the target. This will greatly improve flanking opportunities for soldiers and make them seem more dynamic.
Work in Progress voxels
A while ago we shared screenshots of a Science Lab level. Borion got to work on some voxels that we can place in lab areas of Selaco.
Remember that these are blockouts and will look much better when finished!


New enemy type: Alien Sentry Turret

[GIF may not play correctly on a mobile device]
We’ve shown the voxel model of this turret before, but now they are added into the game and are capable of shooting things. Alien Turrets may not be as technologically advanced as the friendly ACE Security Turrets, but still pack a good amount of punch.
Damage of the Sentry Turret is only slightly lower than the ACE turret. This little machine is one of the very few enemies in the game that uses hitscan instead of projectiles, meaning that every shot fired by the turret will hit its target. Fear not, there’s a short windup before they are able to fire and this will be telegraphed accordingly. Ignoring them will severely limit freedom around the battlefield, so if you want more free space to move around, find a way to take them out.
New obstacle: Alien Landmine

While Dawn is able to deploy landmines of her own, Aliens have their own little gadgets. The Alien Landmines are built like a truck and cannot be destroyed by conventional means, so your grenades or bullets do not damage or destroy the landmine. Rumor has it it only makes them angrier.
There are multiple ways to take them out, but the most common one will be to find an object that has plenty of weight (e.g. an office chair) and toss them on top of the landmine. This will trigger the detonator and clear the way for you.
New ammo pickups (Plasma Rifle, DMR)

Work in Progress illustration

Other improvements added this week:
- New death animations for all enemy types, and improved effects on the Juggernaut.
- Further improved the general detail of the game, both in terms of audio and visuals. Enemies will now leave a trail of footsteps behind when stepping on a pile of blood or slime, updated all of the Weapon artwork in your Wrist Computer, revised some
- in-game art and more
- Further improved footstep system but adding more sound categories (Metal Boxes, thin wood etc)
- Progress on some very spoilery enemies
- Progress on a spoilery weapon type
- Optimization and stability improvements.
- …And so much more!
Conclusion
Tough couple of weeks, but damn was it a rewarding one! The game is becoming increasingly more polished and the general game-feel keeps on improving. We are beyond thrilled to get you this new demo soon!
Have a great couple of weeks, see you in a few!
Wesley
2022-11-03 20:19:14 +0000 UTC
View Post

Hello Patrons,
We’re gearing up for a big demo update so I want to take the opportunity to talk with you about it!
Testing
All active Patreon subscribers will get access to the Big Demo Update somewhere around November before anyone else does (because you're just that cool!). If all goes well and nobody has any issues to report, we open it up to our Discord Testing group for further testing. And then…Oh boy, we put the demo publicly on Steam and start promoting the update. Scary stuff, so we better make it snappy!
Keep an eye out on your inbox. We will be emailing you with a secret Steam code.
Big Demo changes
While we tinker away at the full game, there’s a lot of quality of life stuff being added as time goes on. Most of which will make its way into the upcoming Demo update. This update, unfortunately, will be the final update the demo is going to get. Not because the game is almost ready to ship, but because it is time for us to move on after this and set our sights upon the full game. Admirals will still get the Lab Experiments from soon, so you still have new playable content to look forward to once we get to that point. Lets discuss some changes!
- Pacing changes
We’ve slowed Dawn’s running speed down. There! We ripped the band-aid straight off. This is a massive change for the game and one that requires a bit of explanation. If you’re not as interested in the reasoning, I'll include a short explaination.
Short version:
Selaco is still fast-paced, but we wanted the environments of Selaco to breathe a little more during exploration, so Dawn is no longer as fast as she used to be. Still fast, just not as fast.
Long version:
Back in the day when the project went under the name ‘Project Ominous’, the game was much slower compared to what it is today. It came closer to Doom 3 than, say, the original Doom as far as movement speed is concerned. When I decided to redo the entire game under the name Selaco a couple of years later, I decided it was time to make the protagonist a bit faster. The ‘boomer shooter’ revival was in full swing and, man, I missed how fun it was to play with a fast player character. “F.E.A.R.-like combat but fast-paced could be very interesting!’’ I said to myself. It was time to put it to the test. So roughly 2 years ago, I experimented with a much faster game.
Goddamn I was right. Everything in Selaco felt so much snappier compared to the slow-paced nature of Selaco that I could not wait to flush things out further. It required a ton of work because everything I wrote beforehand was designed around a slower player. With time, everything kept feeling better and I had gotten increasingly more confident in the direction of the game. The small dedicated group I did tests with, really enjoyed it as well. This was the way to go so I locked it in as a final decision. At least at the time..
With the movement being as snappy as it was, I started to feel like there was a conflict going on within the game itself. The immersive environments and the fast movement speed really did not bode well together. We put so much effort into the environments of the game; the lighting, the soundscapes, the little bits of interactivity in each and every corner.. Yet the game played like it wanted you to zoom straight past them. I was not the only one who noticed this problem, as feedback frequently brought this up as well confirming my suspicions. The past few months I messed around trying to find the right balance between speed and realism and I think we found the perfect balance now. Of course, slide jumps are still in, so you will be able to do crazy things in combat. This change took a while because everything suddenly needed rebalancing in order to work properly with the adjusted movement speed.
We're curious to hear your thoughts on this.
2. Gamepad Support
It’s finally in! This update will add Gamepad support along with Aim Assist. There are still a couple of things we want to do here, like adding rumble support, bullet magnetism and a few other tweaks, but these will have to wait for the full release unfortunately.
Steam deck users: We are planning to improve support on the Steam Deck. Hopefully the controller update makes it more playable, but none of us currently own a Steam Deck which makes it really hard to test. In a few months I'll be getting my own Steam Deck so I can properly optimize things for the device. It's on my to-do list!
3. Enhanced gore
We’ve greatly improved our existing gore effects while adding a few new effects on top of that, like brain pieces. intestines and expanding slime pools. This might sound overly gruesome for Selaco, but trust us, we believe it works well and does not make the game too overly violent. The new effects will need to be earned however, so aim for the head or shoot them up close with the shotgun!
4. Performance Improvements
With the addition of multi-threaded asset loading, actor optimization and reworked game code, the game should perform better than ever! With the new version, we highly recommend everybody to keep an eye out for stutters and report their findings to us! Maybe switch back to the old Demo build from time to time and see how things hold up in comparison. We are excited for this one, largely because we fully believe we’ve made some good leaps here. We will discuss this better further along the blog post.
5. Sound/Effects pass
With our increase in budget, we have been reworking hundreds of (sound)effects! In the current demo, we had a limited amount of effects to use so we had to re-use a lot. Destroying a bunch of props would frequently result in the same (sound)effects playing for each of them. Not a problem, usually, but given our focus on immersion I really wanted to avoid repeating the same thing over and over. Once you get your hands on the assault rifle, go and shoot some things! You may notice the mayhem looks and sounds much better than before.
6. Level changes
This is another one that took quite a while. It’s a well known fact by now that the demo level is one of the few things that survived the move from Project Ominous to Selaco and it has been an ongoing struggle to revise the first level in such a way that it works tonally compared to the rest. Another reason why you should never do your first level first. Level 1-1 and Level 1-3 achieve this well, but Level 1-2 never did. The vibes there are vastly different than the other two demo levels and that always bothered me. Given my to-do list at the time, I never quite managed to find the time for it, but now with this upcoming update we really wanted to address that. And, probably the most important thing of all, we’ve added proper toilets to the level. The ones that can be destroyed!
7. Weapon rebalancing
We’ve rebalanced all the weapons, especially the Roaring Cricket (Magnum). This weapon has always been rather divisive and we needed to find a middle ground here and make sure both sides got what they wanted. I don't want this Patreon Blog to be a blog post, but I’ll make an exception for the Roaring Cricket. Let us know what you think of these changes!
Roaring Cricket [rework]:
While we always liked how much damage it dealt, its magazine capacity and recoil might have been too troublesome. We've made some changes to better balance this out and make it easier to use while still retaining its insane stopping power.
- Primary Fire Recoil reduced (1.5 -> 0.7). Alt Fire retains the same stats as the previous version
- Magazine capacity increased (9 -> 12)
- Damage per shot reduced (60 -> 48)
- Max ammo reserve increased (45 -> 48)
- Increased Roaring Cricket ammo pickup (9 -> 12)
- Roaring Cricket alt fire now works with less than 3 shots. It will just deplete the rest of the magazine instead.
- Swapping speed is now nearly instant, making this the ideal weapon to switch to when caught with an empty weapon during a fight.
- Particle trail is now instant between player and target. The previous version made the Roaring Cricket look like a projectile weapon instead of hitscan.
Prefer the old one? No problem! For the full game we have plans to add an unlockable alt fire (which can be swapped out in Safe Rooms) that brings it back to the previous version. I always loved the ‘’high skill high reward’’ behavior the gun used to have, but I can fully understand not everybody had the patience nor the interest to master a weapon this hard to use. Especially for such an integral weapon in your arsenal.
8. Improved AI
This is the obvious one, right? We’re always doing this! In the demo Engineers (shotgunners) always felt rather one-dimensional. They rush and they shoot. Now there’s a good chance the engineer will instead choose to lay down suppressive fire from a distance while another shotgunner is going to try and close the gap. Rifleman have much more intelligent strafe patterns and have an easier time navigating the area when you move around a lot.
9. A flashlight that isn’t ugly
We’ve shown this one off in the last blog post! We’ve gotten rid of the simple (and ugly) point light system, in favor of a cone-shaped flashlight that keeps things atmosphere
10. Quality of Life.
Translation support, proper camera interpolation, Safe Loading system, non-bulletproof plant leaf's… I can go on for hours about the quality of life changes that we’ve made. We will list them all in the changelog when the time comes!
11. We killed bugs!
We also eliminated a whole bunch of bugs and generally improved a large number of things, adding to the general level of polish.
Other stuff
That isn’t all! I want to show a couple of other things we’ve worked on.
DMR
We finally started animating the thing and it’s shaping up to be a damn powerful weapon. Take a look at the firing animation!
Shooting animation

Here is the same shooting animation, but in the dark because Brightmaps are cool!

We’re happy with how this weapon turns out and are confident it will end up satisfying a lot of you. I’m currently working on the reload animation for this thing!
Artwork
Mostly finished, so I’m keeping it low res for now. When it’s done (next blog post), I’ll give the high res version with no logo placement. We made this piece because we always want to include some original art whenever we announce something new and exciting. In this case, it's the announcement of a demo update launching.

Smart autosaves
One of the Quality of Life improvements in the upcoming update, is Smart Autosaving. While not the most common critique, a few players did experience a problem where they would softlock their progress because the game decided to autosave the game right before our hero got killed, this even got captured on a stream at some point. This could be because a bullet was about to hit Dawn in the face, or a grenade was about to go off right in front of the her with no way to escape. Dawn deserves a better checkpoint system, so we got to work.
The new saving system will check for danger and queue the autosave until the danger is eliminated. So, if the game wants to save a checkpoint but there's an active soldier close to you, the save will be rejected. Kill the soldier and the save will proceed automagically.
This only applies to checkpoints by default, but on Admiral difficulty (the highest difficulty), quicksaving can no longer be done in combat. This requires players to beat the encounter or reach a safe destination before quick saving the game. This is done to combat the phenomena called 'Save Scumming', where players frequently save the game in combat in order to cheese it. This is fine for lower difficulties, but Admiral is all about testing the player and their abilities, so the decision to add some additional rules to quick saving made sense to us.
Async Texture Loading
In our efforts to reduce the amount of hitches or stuttering in the game (hopefully to zero!) we have been adding asynchronous texture loading in addition to the audio loading that has already been implemented. This is a much larger project than audio however because it needs to be done both for OpenGL and Vulkan and requires a lot more changes to how the engine works.
Simply put, GZDoom was not built with anything like this in mind, as texture loading is practically an after-thought during the course of gameplay. Typically the engine gets to the point of rendering triangles before it ever bothers to check to see if a texture is loaded or not, and this is deep in the hardware renderer layer and not part of the game engine. This is making it very non-trivial to interrupt the normal process of rendering sprites BEFORE loading their associated images. In addition, I am both new to GZDoom and Vulkan so progress is a bit slower than it could be.
Some progress has been made however. As Vulkan is very friendly to threaded texture loading, and a framework for background resource loading was already created for audio, we have the beginnings of asynchronous texture loading working. Much refinement is needed, but this should allow us to eventually load most, if not all sprite textures on the fly without any framerate drops. These changes should improve framerate stability significantly, particularly during explosions and heated gunfights.
Another happy bonus to being able to load both audio and textures in the background is that we should be able to add animated loading screens between levels, which seems like a small thing but it would be nice if players didn't think their PC was frozen when a new level is loaded.
We hope to have texture loading testable soon. Especially for those players that have high end rigs but are still getting stuttering during gameplay, we expect this to make the framerate rock solid and can't wait to share the experience with you!
Conclusion
That’s it for that week! A lot of words, not much in the way of photos. We are slowly beginning work on the 4th level of Selaco which enters spoiler territory, so it will be increasingly difficulty to show stuff. But rest assured, we have plenty to still talk about.
If you plan on renewing next month, keep your eyes open on your inbox since a Steam Beta Password will be coming your way soon.
Again, thank you for sticking with us! See you in the next blog post!
Wesley de Waart
2022-10-18 17:45:21 +0000 UTC
View Post

Game Status
We managed to finish the 'Starlight Green' level today, and ReformedJoe's 'Starlight Blue' level is rapidly approaching its final stage. This is where we thoroughly test the level and do the final layers of polish for both sound and art to ensure everything has a unique flair. Each of these two levels take roughly 25-30 minutes to complete, assuming no retries with average exploration (half the secrets).
A portion of the art team was, unfortunately, absent for the past two weeks. One of us is moving to a new apartment which took plenty of time, and another artist got very sick, to the point that a hospital visit was in order. Thankfully, everything turned out OK in the end with a full recovery and no lasting effects. They expect to resume work this upcoming week.
This Patreon blog post will be a little shorter, because we are in the middle of things that we cannot show, but we will absolutely discuss things.
REMINDER: 18 months after using Patreon, the mobile app version of this platform still does not support GIFS. I have uploaded them here: https://imgur.com/a/0nzSzoJ
Steam Cover art
Selaco currently re-uses the Main Menu artwork for Steam's cover art, which is never something that really sat well with me. You essentially get to see the exact same artwork twice which I think does not leave a good first impression to newer players. Steam cover art is tricky, because it has to be very wide and none of our artwork is made with that in mind so the composition falls flat. We reached out to Dakota Lee, who also did the Fallen Aces cover art and the Blood collectors edition from Limited Run Games, to help us design something! This is a veryyyyyyyyyyyyy rough sketch of what we are aiming for.

I usually avoid going for the ''Main character does overly badass things'' approach for posters, but I think we managed to find something that worked. Selaco being an action heavy game, we needed an art piece that portrayed the action, a little appetiser before you boot up the game. It will be full of bullet tracers, destructions, smoke puffs and whatever else you would expect from Selaco. Will show more progress when we get there!
New interpolated Flashlight
The new Flashlight is here! We finally got rid of the simplistic Pointlight solution from the demo and replaced it with a proper spotlight. We always wanted to do this, but due to GZDoom's lack of lighting interpolation, it also looked rather choppy when you moved the camera around, since it could only update 35 times a second. That sounds fast, but if you play at a high frame rate, this problem will stick out like a sore thumb! This had to be addressed.
I’m sure that some of you have played Doom mods before where flashlights were used. They have been done a thousand times before within the Doom community but all of them are choppy due to the engines lack of light interpolation (which is not the fault of the modders, it’s an engine limitation!). Cockatrice addressed this by properly updating the lights between the tickrate, matching the frame rate. Being able to make changes like these is one of the many benefits of going standalone.
When working on a dark level of Selaco (literally! There's no light in this level), the pointlight got a little bothersome. It looked ugly and cheap, and that’s not how we do things. It needed more Selaco and less <insert super janky game here>.
After Cockatrice added light interpolation, I got to work on the actual flashlight and its effects. The result is a much cleaner, better looking light that takes far less performance than our previous solution. Take a look and let us know your thoughts below!

And of course, this light will cast shadows when coming into contact with full-height surfaces. Hey, you know we love Doom 3, we would not have this any other way! Of course, a moving shadow caster is slightly more expensive which will primarily be noticeable on slower GPUs, so the option to turn off Flashlight Shadows has been added to the Shadow Settings of Selaco.

Lets take a quick look at what the flashlight looked like in the current demo version:

The new solution is quite an improvement, right? It adds a lot to the atmosphere that a point light just could not capture.
New music

We have finished 2 new tracks this month, ''Siege Street'' and "Starlight Green", with the third one being composed as I speak. Lawrence has one again killed it for both of these tracks. So, behold, here is one of them! Say hello to Siege Street, a track that plays during a combat sequence in the third level!
(Pro tip: Crank the bass up high for this one, please!)
Listen to the track here!
The toilet experience is complete!

With the brand new addition of destructible urinals, Selaco's toilet experience has been completed. At least for now. We also revised all the toilets in the Demo Level so keep your eyes open when the update launches later this year!
Performance
The effort to make GZDoom a viable engine for commercial releases continues! We've shown plenty of frustration with the way GZDoom loads assets during gameplay, and we continue to address that.
A while ago, we introduced Multi-threaded asset loading for sound effects, which ended up solving the majority of the stutters, which makes sense given how audio-heavy we are, but now we are also looking into multi-threading Texture Loading to further eliminate the stuttering. This is the last step towards this little project before we put our efforts into the actual game again.
We announced on twitter that we are looking for testers to help us test this engine upgrade in the near future. If you are a backer, rest assured, you are invited either way! We will inform all backers a week or two early so we can test it with a smaller group of people first, before rolling it out to the rest. Watch this space <3
Conclusion
Despite this blog post being rather short compared to the ones we previously did, we are making faster progress than we ever have before. Largely because ReformedJoe joined the team and I have been able to better utilise my time doing other things than just level design. My goal is to start working on the Mech this week and get the basics out of the way! For newer backers, We've shown the mech before in this blog post (Man, really going all-in on the URL's today!).
Thank you all for your continued support! Looking forward to the next one <3
Wesley de Waart

2022-10-02 20:53:48 +0000 UTC
View Post

Hey all!
For the past 2 weeks we've spent a lot of time improving core game mechanics and doing level design stuff. The demo feedback we've received gave us tons of things to work with and we've continued to address all the things that have been mentioned on both our Discord and Steam forums. We've been fixing bugs, improving performance, prototyping new enemy types and so on. Not everything warrants an interesting story for a blog post, but there's still plenty of stuff we want to mention! Lets start with... *drum roll*... Big box!
Big Box
I know I brought this up a while ago and suddenly went silent on the whole thing, apologies for that! But there's good news on this front. I have a meeting with someone very special to discuss this in detail, really soon. Unfortunately, I have to be vague with the details for the time being. Once I'm allowed to share more, I will! And Patreon will get the scoop.
Level design
We are currently working on the 4th level of the game, called Starlight. I've explained the premise of this level before, but for those who are new, I'd like to explain it again!
Starlight is an unusual level in a sense that it's the only hub-like level in Selaco. You start the level is a gigantic lobby with a rather ominous elevator in the middle of it. Upon closer inspection, the elevator requires 4 different keys in order to become operable. It is your task to find those 4 keys and go down the elevator.
There are 4 paths you can take in this lobby, each path leading you to a separate level
Starlight Green - Offices (SE_04B)
Starlight Red - Manufacturing (SE_04C)
Starlight Blue - Research (SE_04D
Starlight Purple - Warehouse. (SE_04E)
You are asked to enter one of these levels, locate the key, and retrieve it to the elevator.
After a level is beaten, the other unfinished level get a difficulty tweak. For example, beating Starlight Green will add additional Enforcers to the other levels. Or completing Manufacturing adds additional Crawler Mines. There's constant escalation here.
When you have successfully inserted a key into the elevator, a door in the basement opens. The basement grants you a random unlock. Most likely a brand new alt fire for one of your weapons.
The other thing that makes is unusual is the complete lack of Gwyn Machines and Safe Rooms within the levels themselves. Everything is done through the hub, and once you enter a level, that's it. There is no way back until the level has been completed. This makes preparation more important, especially when playing on Hardcore Mode where you are expected to beat every level without a single death. If you scavenge the levels well enough, you will find plenty of resources to help you for the next one.
We're excited for this one! It's a little game-y compared to the rest of the game, but after 3 (or 4, we might still add a level in-between) levels full of mayhem, explosions and hectic battles, we feel like a level like this brings a much needed change of pace to the game.
Oh and, another unusual thing? Nothing here is destroyed.
Here are some screenshots of what ReformedJoe (our newest addition to the team) and I have been working on:




Enemy Prototype: Gunner

(Very WIP)
The gunner is a variant of the Rifleman family, except more of a pain to be dealing with. Comes equipped with a minigun and has the ability to spawn a weapon-mounted shield whenever he attacks. This shield can be destroyed with enough bullets, but it's better to wait for him to stack attacking or, even better, flank him. A well placed shotgun shot can collapse his shield, but this shot will not damage the shooter right away. We're currently testing the waters with him, but will share more when the time comes!
Glass Destruction system

We've completely reworked our glass destruction system!
When Hexen launched back in 1995, it introduced a new feature to the Doom Engine where glass windows could be destroyed. For the standards at the time, this looked convincing enough, but for something like Selaco this never quite worked.
Around the time Selaco was still called Ominous, I replaced this system with one of my own. Unfortunately at that time, the powerful language called Zscript was relatively niche at the time and not something I was familiar with, so I wrote it using ACS (A script system that exists on the level layer). This is not a powerful tool since it doesn't give you a whole lot of information to work with, but I tried to work with what I have.
The result is a window shatter system that looks convincing, but not quite accurate. At this time, the level designer selects the window texture that needs to be destructible, assigns our ACS script to it, then adds an actor at the center of the window pane, then instruct that actor spawn a bunch of glass shards when the window gets hit by a projectile attack. This comes with a handful of issues. The most important ones:
- Time consuming. It takes roughly 30-40 seconds of work to destroy one single window pane. Might not sound like much, but every level has hundreds of destructible windows in it, so we had to find a solution to the problem to ease the workload.
- Accuracy. We do not know how long the window is, so it's quite hard to make the amount of visible shards seem accurate and realistic.
With our improved knowledge in Zscript, we have fully rewritten this system to be smarter. Not only does the particle effects utilize our newest particle system, making it perform faster while also looking ever so slightly better, we now take a look at the height and width of the glass pane and spawn the particles accordingly.
On top of all that goodness, I have completely reworked the sound design of shattered glass. We all agree that it greatly elevated the glass shooting experience especially when using a surround system. The effect is longer where individual pieces of glass can be heard hitting the floor from time to time, as well in additional bouncing sounds for the glass particles themselves. You can hear it for yourself once we update the demo with of the improved bells & whistles.
DMR

The voxel pickup of the DMR weapon is ready! If you want to see the high resolution sprite work of the weapon, read our previous blog post where we shared more of the weapon!
Interactive Laptop

A fun little prop we've been working on! We are giving it a fully animated bootscreen which we could unfortunately not finish in time for this blog post, grrr! We have also doubled the screen resolution since the making of this gif since it felt a little too low. But hey, now you have something new to look forward to when the game launches. A fully animated Post and OS bootup screen that have been teased at you in Blog Post 39!
Interpolated Zooming
During the demo, players frequently brought up a choppy zooming animation. Basically, GZDoom only updates the FOV with every game tick, so it can only update 35 times per second. When playing on a higher framerate, this produces quite a noticeable lag effect, making it look like the game runs at a lower framerate than it really is. I think most Doom / GZDoom players have grown numb to this, but many others felt this was jarring.
We've tweaked the engine to interpolate this effect! See the example below.
EDIT: After posting the gifs below, I noticed the effect is barely noticeable because of GIF / Patreon frame rate limits. I've uploaded the mp4's to IMGUR where they can be seen at 60fps: https://imgur.com/a/57htp6j It's one of those effects that is more noticeable when you actually play the game!

(Current demo version: No interpolation)
(Upcoming demo version: Interpolated)
Gravity Manipulation

The Plasma Rifle comes equipped with a Gravity Manipulation device. We've discussed this in an earlier blog post, but we finally got around to giving it a proper detail and animation pass.
You can pick up most of the objects in the game and turn it into a weapon. We're genuinely excited to see what kind of unintended uses players will get out of this. It's a great gun made even better with an alt-fire that started out as a joke, but worked so well that we decided to just roll with it. Whether we add some fun puzzles with this thing remains to be seen, but we do want to incorporate this tool into our level design somehow.
Conclusion
We are still working hard on updating the demo and do not have an ETA yet, but I do hope that these frequent Patreon Blogs assure you that we are still hard at work! We're still improving Multi-threaded Asset Loading a little further and then we move on to Gamepad support. I already have a rather crude implementation of controller Aim Assist ready go, but it still needs a lot of work in order to be of proper quality. GZDoom's current gamepad implementation is janky at best and requires far too much fiddling around before it can be used properly, which is not what we want. A gamepad should be plug & play after all!
I'm very excited for this updated demo though! It addresses a lot of the complaints we've received and it's a massive step up compared to the current build.
Thanks everyone for your continued supports! <3 See you in two weeks.
2022-09-15 21:44:13 +0000 UTC
View Post

The past couple of weeks have been fantastic for Selaco! Lets dive straight in and talk about a couple of things.
We found an additional Level Designer!
This has been a long time coming! One of our goals with Patreon was to introduce a new level designer at $2000. We’ve been reaching that milestone for a while now, but due to the demo and a lot of other things, we had to postpone the recruitment of a level designer.
The process for this was hard, really hard. We think Selaco captures a very specific look that we have not often seen within the Doom Engine before. So, when looking at what people have made using Ultimate Doom Builder (the tool we use to create levels), it often involves a lot of guesswork when it comes to the question “Will this mapper be able to ‘replicate’ our visual and gameplay style”?
A lot of mappers submitted their work when we made a post about it on Twitter. We’ve also done a lot of digging around ourselves to find someone who felt right for the job. What Selaco needs is a level designer who is great at interior designs, lighting, short-to-medium scale combat encounters, environmental storytelling, as well as someone experienced with working in a team. This thankfully narrows it down, since many Doom mappers focus around epic scale slaughter arena’s which is not what we are looking for (Sorry Bridgeburner!). I often ended up looking at mappers who made a bunch of tech bases, sci-fi installations with interesting corridors and rooms while trying to pull off interesting combat encounters without relying on high enemy numbers. Basically, mappers who managed to do a lot with very little.
There was a mapper who approached us relatively early on and showed us a portfolio that we really liked. They were considered a potential pick right away and ended up being on top of the pile. At this time it was still relatively early on in the process so we wanted to wait a bit longer to make sure we weren’t missing out on other potential. But nobody quite managed to match the portfolio that was sitting there, on top of the aforementioned pile.
Without further ado, we are extremely pleased to announce our newest addition to the team. Some of you may already be familiar with some of his work, since he did a whole bunch of level design for Ashes Afterglow, and tons of mapping for Doom related projects.
Welcome to the team, Brendan Batchelor (Also known as ‘ReformedJoe’)! We absolutely cannot wait to be working with you!
Level designer: Testing Session
The goal of this mapping session was to see if the Selaco Aesthetic could be captured by someone other than me. So, ReformedJoe’s first “task” was to make a couple of environments that looked and felt like Selaco. The screenshots below were done using demo assets and a couple of additional textures we provided later on. We think the results speak for themselves. He did a great job creating rooms utilizing the Pathfinder Memorial aesthetic, and the bonus level we provided to Content Creators a while ago.





Here is some of Joe’s other work:
Ashes Afterglow (A Doom Total Conversion)




LunarStrike (Doom mod)
I have been keeping my eye on this one. Everything about this felt right at home in Selaco when it comes to layouts.



I will still provide assistance and guidance when it comes to level creation to ensure everything goes according to plan and stays consistent with the rest of the game. But knowing what ReformedJoe is capable of, I’m more than confident that we are in good hands!
The DMR is finally ready!
This weapon was a thorn in our butt. We kept struggling to find a design that really worked and looked good in the first person view.
Here is what the final version of the weapon looks like:


Here are some sketches and progress pictures of the DMR:
Silhouette sketches


Detailed sketches


Eventually, we locked down a design that sort of worked, but we felt we missed the mark with after doing some ingame tests.
Perspective illustration

3D Reference Model

Finished concept art:

After seeing this, we felt like we needed to change it up a little. It lacked character and we could not see this fit into the hands of our ACE Security guards or Dawn. So, back to the drawing board we went!

The final design is something we are absolutely thrilled about. It looks chunky, pretty, works well within the first person perspective, and I can see this being used in our game world.
We will now begin to animate and implement this weapon!
New Weapon Voxels
With new weapons come new voxels! A couple of these were already made before and shown before in an older blog post, but now that we’ve expanded our roster (thanks to you guys!), we had to make a few new voxel pickup models.
Heads up, the Railgun weapon design is scrapped! It will look different in the final game

New Grenades
I’m not big on being lazy with Selaco. Originally, we took the Frag Grenade and recolored it a bunch of times to give it different purposes. A blue grenade would be an Ice Grenade, a green grenade would be an acid grenade. I suppose that it works, but it never felt right to me. Especially now that we have an actual budget to work with.

Rather than simply recolors, we’re giving a brand new design to grenade variants. Here is what the new Ice Grenade will look like:

There are still many similarities to the Frag Grenade, which is by design because they are made by the same company, but it now has its own identity!
Optimizations
Our never-ending journey to make the game as performant and efficient as humanly possible continues! Last time we talked about adding multi-threaded asset streaming, this week we’ve spent time cleaning up our codebase, improving average performance and speeding up booting times.
Code cleanup
Having worked on Selaco for 6 years, a lot of code eventually ended up being outdated or not within your quality standard. Sure, we went standalone a few years in and scrapped a whole bunch of things, but that is only half true. A handful of stuff was kept to save up on time and some of that included old and sloppy code made when less experienced with game development and the engine we are using. To sum it up in simple terms, GZDoom uses several scripting languages for the game. One such language is DECORATE, which is an entry-level language that is easy to use, but not the most flexible. The other is one that we use a lot these days, called ZScript. This is an advanced language that is extremely powerful. It basically allows you to do whatever you want to do with the engine since the featureset is much more expansive. All those fancy UI effects in the demo, for example, would have been impossible with DECORATE. Same with our AI.
Modders have come up with a lot of clever ways to abuse the old DECORATE language to make it more powerful, like Inventory items to create For-loops (a programming term to loop a bunch of code over and over until a certain condition is met), or mixing it with ACS (a level scripting level) to apply additional logic. These hacks are clever and certainly get the job done, but they always result in ugly code that is both hard to read, overly long and hard to make changes for. It is not something that belongs in a commercial title and also slowed us down a fair bit because making such a simple change would often involve a bunch of headaches.
Early last year we began to rewrite chunks of code to ZScript but never quite dedicated enough time for it, so the process was slow. The last 2 weeks I’ve dedicated more of my time towards cleaning it all up, making it better, faster, easier to read and making it possible to localize it (all of our text values were hard coded before!). As usual, mapping was also done in the meantime!
Font Mapping / Sprite Sheeting
GZDoom has a very resource intensive start-up sequence. It tries to index every single file one by one which takes a fair amount of resources from both your storage device and CPU. The indexing is required for the engine to read and retrieve certain bits of information. Doing all of this takes a while. For a game like DOOM? Not a problem! Same applies for most mods that keep things relatively simple. But for a game like Selaco that features thousands upon thousands of files? That becomes problematic! At times it gets so demanding that trying to multitask while the game is booting up causes the whole engine to crash, which was actually a common cause for our demo players, who frequently reported crashes. As it turns out, these crashes happened because the player was alt+tabbing into a different application which caused the engine to hang up.
We needed ways to improve this. One such way was by looking at how our font was handled. GZDoom doesn’t have a true font. Rather, every single letter of a font is a seperate PNG file. (A.png, B.png, C.png etc). There is no true font resizing either, so when we need a font of a different height or style (like being bold or italic) we have to store a whole bunch of separate PNG files again. The current Demo version on Steam has 2550 files dedicated to fonts. This is enough to make the boot-up sequence significantly longer than it has to be. We prefer to keep things as clean as possible, so this was worth looking into it.
Solution? Fontmapping! We made changes to the engine to instead look for fontmaps instead of individual font files. This is basically one larger file that features all the text the font contains, meaning it only has to index one file instead of hundreds! Here is an example of the difference
.
Old style: Lots of files. Ugly, slow.

New style: Clean, fast, space efficient.

The engine will read this sheet and look for specific coordinates that contain the symbol it wants to use.
Using this for fonts is just the beginning. The next step is to apply this to sprites (like our enemy sprites) to further improve the loading times as well as simplify the amount of files that need to be streamed in during gameplay, saving performance.
Test Labs
A while ago we introduced the Test Labs feature for Admirals, that allows them to test new work in progress features for Selaco. We are currently working on a Gravity Manipulator alt fire for the Plasma Rifle and need some input from our backers to make it better! Somewhere next month we will set up the first Test Lab environment where the Plasma Rifle can be properly tested! Keep an eye out on your inbox!
Conclusion
Things are still going smoothly with development. Now that we have a new level designer on board, we fully expect things to go even better since I can spend a little bit more time directing the game and improving / adding more content.
As usual, I thank you for still being here with us! The month comes to a close, so some of you might end your subscriptions in September. For those of you, thank you for having been here with us. We hope to see you when we release!
Wesley de Waart
2022-08-30 21:58:08 +0000 UTC
View Post

[WIP sketch]
Last week was all about wrapping stuff up, this week is all about looking forward and talking about what we are working on next! This blog post will be less heavy on the pictures and will be more about ideas we are going to explore.
DMR 3D Model


It is finished! Well, sort of. It ended up being a bit more chunky than we had anticipated, making it appear less like a semi-automatic weapon, so we’re going through with a very slight redesign to make it a bit thinner, adding a longer barrel while also making tweaks to how the first person view looks.
We felt like the side of the weapon was a little stale, so we made some sketches to come up with some more interesting visuals for the weapon.

I am very pleased with how the model turned out and I cannot wait to add this thing into the game. To be continued!
Plasma Rifle effects
We’re doing the final effects and animation pass for the Plasma Rifle. Take a look at what our muzzle flash currently looks like! 4 completely unique muzzle flashes each consisting of 4 different frames of animation.

[GIF is cropped to focus around the viewmodel. Muzzle flash may appear bigger than it really is]
I’m really happy with how this weapon is shaping up so far. Hopefully by the time we are done with it, it’s going to become a fan-favourite for some players.
Purchasable Lockboxes

[artwork WIP]
The credits you obtain in Selaco play a massive role in the game. The demo does not have a lot of that, mainly because we wanted to restrict the demo a little and not show our entire hand right from the get go.
One such feature that has recently been added are the purchasable Lockboxes often found in small security stations scattered throughout the world. An icon on a screen shows the price of a purchase as well as the contents inside the lockbox. Contents include grenades, tools, Sentry Guns, ammo, armour and a few other surprises. They are similar to Storage Cabinets, except are more focused around just giving consumables rather than permanent upgrades.
Exteriors

I cannot show much here yet, mainly because it’s super-duper work in progress. Most of the Selaco levels so far are focused around interiors since we lacked the resources to do a proper exterior scene. Now that is no longer the case, since we finally have proper pieces of concept art and the texture work for it exists. I started mapping an exterior section 2 weeks ago, a courtyard section that connects two wings of a Water Treatment plant. I’m very pleased with the visuals so far, but man, there are some problems that we have to address.
For starters, performance. This was inevitable. Selaco’s visual aesthetic is mostly optimised for medium-scale interior sections so the moment we enter something larger, we have to look for clever solutions in order to maintain a steady framerate. The background buildings and the large dynamic light in the sky are two of my main concerns. Performance-wise, it runs fine, but there's a noticeable difference between interiors and exteriors which I prefer to minimise as much as possible.
We have solutions in mind which we are going to start working on real soon. One such solution is to get rid of sectors for the background. Sectors are playable terrain and it’s a significant waste of resources to use sectors for areas the player cannot reach. So instead, we will create buildings using Ultimate Doom Builder, then put them all in a cluster and export it as a 3D mesh. A mesh is far more performance efficient and allows us to cram hundreds of skyscrapers in the background with far less of a performance hit. Thankfully, general polygon count can be kept low, we do not need background buildings to be overly complex.
The other is very dependent on what the fine folks over at GZDoom are doing. Last year, it was announced that in December 2021, GZDoom would be getting a Static Light implementation. This would allow us to bake lights into the scene itself without having to rely on a very performant Dynamic Light. For things that don't move, like exterior lights, we can get a gigantic performance improvement since static lights are pretty much ‘free’ from a performance budget standpoint. Static Lights also allow for realistic shadows to be baked onto the geometry, something Dynamic Lights cannot do unless it touches a wall with nothing behind it.
Unfortunately, light baking has constantly been delayed and it takes very long for a commercially stable light baking system to appear for the engine. The truth is that these are significant changes to both Engine and Selaco, so before we commit to such a thing, we need to make sure it is actually going to happen and that the issues are going to be fixed. Eventually we reach a point where it is too late to be adding such a thing. Selaco has to release someday, but the introduction of Static Lights will take some development time to properly setup.
If a light baking solution takes too long, we will start looking into a different solution to make exteriors as performant as possible. But for now, we hope things are done within a reasonable timeframe!
We also want exteriors to really feel like exteriors. That means having fancy exterior effects to sell it better. Think about a wind system that changes depending on your location. Being indoors, standing near an open door that leads outside, should play a different sound effect since the wind is outside moving it's way to a small door. I have made something that does this and I cannot wait to tweak it further.
Another goal is rain. We want rain that feels realistic and believable. Standing underneath shelter should produce different sound effects compared to standing in the open. We also need rain to look detailed while also being very performance friendly. Cockatrice has a lot of ideas for this and we cannot wait to work on that soon!
Variations of existing enemies.
Before I explain this, it’s worth explaining how the Rifleman works.
Essentially, the Rifleman features a bunch of subclasses that each define the behavior of the soldier. For example, we have the RIFLEMAN_AGGRESSOR, which is far more likely to assault their target and try to get as close as possible, never letting go of the trigger. The RIFLEMAN_DEFENDER works the other way around and prefers to stay as far away from the player as possible and will not always be on the move. Sometimes, they will hold still and wait for you to reveal yourself. The RIFLEMAN_STRAFER is semi-aggressive and is the most likely to keep moving while taking shots at the player. I’m sure you get the idea! There’s a good amount of these that makes similar enemies feel more dynamic by adjusting how they behave. In a lot of games this would be considered a bad idea, since games should be 'easy' to predict in a lot of ways, but since Selaco is all about adapting and reading the enemy, we feel like it works with our combat encounters.
A lot of these subclasses are predefined by the level creator, but the option is there to randomise these subclasses by spawning the '<Name> Random' version of the enemy. On top of that, their likelihood of doing certain things is adjusted on the fly. An aggressor, for example, may become far less aggressive if its squad is being picked off.
Engineers (Shotgunners) were not as dynamic as the Rifleman and we figured it was time to address that. We do love their role in the enemy roster, since the Engineer can easily ruin the players plans if they are not careful enough, but they are a bit too ‘stiff’ and are often a bit too easy to predict. Partially because Engineers currently lack the sub-classes of the Rifleman. I am working on adding 2 new behaviour types for Engineers.
Engineer - Rusher
They will not stop at anything. The Rusher type will always push no matter how close they are to the player.
Engineer - Suppressor
Suppressors exist to suppress the player by spraying with the shotgun. They will never rush forward and prefer to stay at the same spot for as long as they can. If you stay behind cover often, the suppressor might force you to stay there unless they are dealt with or you see a window to leave.
Engineer - Balanced
Is a combination of Rusher and Regular. Rush when the player is far away, remains more stationary when close.
Engineer - Slug Shot
Almost an entirely different enemy type. These will only be for the final game. While the other Engineers each have orange-colored sprite, the Slug Shot will be bright yellow. Why? Because they are dangerous and have to stand out a little more!
This Engineer type fires one highly accurate projectile instead of a buckshot, at the cost of a slightly longer windup. It is one of the rare few enemies that have a projectile so fast that it could be considered a hitscan attack. Getting hit by a slug shot is devastating and might be powerful enough to kill you right away if you have no armour on higher difficulties.
Thankfully, these types of attacks are easy to read. Not only does this enemy type have a laser pointer attached to their shotgun, making it easy for you to figure out where the attack is coming from, they also have a louder-than-usual windup sound effect and a bigger flare compared to the Shotgunner.
Little side bonus, but I really hope to explore new voices sometime in the future. Currently all soldiers are voiced by the same actor, but it would be great to have a wider cast where every soldier gets a random voice assigned to them. Including females.
AI Strafing Improvements
This was a long time coming. In the current demo version, strafing AI would only consider collision with nearby objects before they would stop strafing and do something else, but completely ignored whether or not player line of sight was kept if they continued strafing. The result is that soldiers would often strafe behind a wall, losing track of their target entirely. There are occasions where this is better, but is often not ideal so I wanted to address this.

[Prototype of the Strafe Node system - Nodes will not be visible in the final game]
We’ve added a Strafe Node system that spawns a bunch of nodes into the direction of the strafing soldier. So if a soldier strafes to the left, the game uses math to figure out where the end destination of the strafe is, and spawns Strafe Nodes across the path.
Each Strafe Node does a number of checks to decide whether or not a strafe is considered ‘valid’. There’s a lot that goes into this but the most important one is ‘’Can this Strafe Node see the target of its master?”. If a Strafe Node cannot see the player, it most likely means that Line of Sight will be lost if the enemy continues strafing, so it might be best to stop there and come up with a new plan. In this case, the Strafe Node tells the soldier it is not a valid location.
There are more checks happening here, of course. If the soldier is low on ammo, it is probably a much better idea to keep strafing so Line of Sight is lost, then reload once line of sight is broken before heading back into the fray. Health is also considered. A target low on health is far more careful and less aggressive, making it desirable to occasionally try and lose line of sight in order to reach a different location.
With Selaco’s intention to make AI feel more dynamic and unpredictable, there will be random cases where this rule is completely ignored. This is by design to put an emphasis on the cat and mouse game that we are often aiming for, forcing the soldier to lose the target and relocate elsewhere.
AI - Altitude Correction
In the current demo, flying enemies always felt rather stiff. This is due to the fact that they weren’t doing much to adjust their height levels. They were basically generic enemies without gravity and an enormous ‘step height’ (this defines how high a surface may be before allowing an enemy to go over it. This is low for soldiers so they cannot get on top of surfaces that are higher than them) to allow them to ‘cheat’ and reach every type of surface.
Now, they actively check for the position of their target and the area around them. If there is plenty of space between floor and ceiling, the enemy will frequently adjust their positions so they are no longer constantly on the same height level.
AI Modules
Another change to the AI that is still being worked on, is breaking everything up into separate modules that each AI can inherit. It is well known by this point that Selaco has been worked on for many years, and a lot of the AI behaviour was kept in one single class with far too many functions and blobs of Spaghetti that has evolved more and more over the years. Now that we are working on expanding the roster, it is becoming increasingly difficult to work with. A flying enemy, for example, should not use the same AI features as a regular soldier.
I am currently breaking everything down into separate components. Then once a new enemy type is created, the designers can choose between a wide range of different modules that make up the behaviour of the enemy type. AI_STRAFENODES is one of them; want the soldier to strafe from time to time? Add this module to the AI and they will pick up on it right away, provided you have the animations and the behaviour specified in the class. Same applies for AI_ALTITUDECORRECTION. Have a flying enemy and you want them to appear less stiff? Add this and it will pick up on it right away.
Conclusion
Work continues! I think, currently, there is more stuff being worked on than ever before. Sorry that we cannot show everything! As mentioned numerous times before, we cannot show everything we are working on. Some enemy types are kept under wraps, as well as most of the environmental designs for levels.
Thank you all so much for your continuous support!
2022-08-11 16:28:05 +0000 UTC
View Post

Two weeks have passed and you know what that means? A new blog post! Let's get started right away.
Viral Tweet!
Hooray, we managed to land a new viral twitter post with almost 87.5k views. The video in question is a little “bug” we had in the form of a toilet. Here is the video: https://twitter.com/Nexxtic/status/1549537674712809473
You know, every shooter needs interactive toilets, right? We’re not going to miss out on that action, it would be embarrassing. Us being Selaco, we wanted to make it even cooler. You can not only flush it, you can also flush objects down through the toilet. Too many objects and it blocks, and throwing too much detergent into it will cause it to bubble up and explode. This brought the unfortunate side effect that even our player character, Dawn, was able to get flushed down the toilet drain. Was this a bug? Yes, it sort of was. What happened here is that I was simply prototyping a mechanic. While recording footage, I was throwing a bottle of Toilet Cleaner into the toilet. While flushing, I came to the realization that, given how there is no actor validation when flushing objects down the toilet, the player character should be flushable as well. I did what every sane developer would do on such an occasion and tried to see if it actually worked.. And I was right, it did! Here is the full uncut version:

(Toilet flush effect is WIP)
This lead to a fantastic tweet and a fantastic piece of fan-art

(Artwork by Mach1nka [https://twitter.com/m4ch1nka/status/1551911220831293440]
Enemy Model: Air Drone
We’ve shown concept art in a previous blog post. The model has been done, the sprites have been animated (although some touch-ups are still in order) and their basic AI has been implemented!
High detail render:

Sprite:

(WIP) Plasma Rifle Alt Fire: Gravity Manipulation

(Apologies that enemies are hard to see. Our sprite illumination system is broken in the current build of the game)
We’ve discussed earlier that the Plasma Rifle has the ability to ‘overcharge’ environmental hazards like Explosive Barrel. This will greatly amplify their damage output and damage radius.
The Alt-Fire for the Plasma Rifle is going to synergize with this mechanic. Pressing alt-fire while aiming at an object will allow the Plasma Rifle to manipulate gravity of this object, essentially ‘grabbing’ it. Pressing Primary Fire while holding onto an object will throw it at very high speeds, capable of dishing out high amounts of damage or, in the case of an environmental hazard, trigger detonation upon impact.
The effects in the video are work in progress. Also yes, the Muzzle Flash has a new effect compared to 2 weeks ago!
DMR Update

Nothing new to show yet. Right after the Air Drone was finished, the DMR 3D model went into production! Expect to see the fully completed model very soon.
Railgun Update:
Design is finished! After the DMR is done, that weapon will enter its modeling stage. We’re not going to show this weapon off, though. You will just have to take my word for it: It’s awesome!
Destructibility pass

We’ve further improved our destructive effects, which includes brand new particle effects, separated ‘voxel chunks’ of certain objects, and a brand new sound pass for ricochets, impacts and devices breaking apart - putting a further emphasis on the power of each bullet. This change will be included in our upcoming Demo update.
Throwing Knifes

We’ve added a bunch of kitchen knife voxels to Selaco. Originally intended to be used for nothing but decoration, but after making them interactive (picking them up and placing them elsewhere), I noticed that these are, in fact, sharp pointy objects that can be quite damaging in real life. I decided to allow them to be used as a makeshift weapon. Pick them up and toss them against an enemy! Juggernauts will deflect them like the badasses they are, but lower tier enemies will take significant damage when hit by a throwing knife. Thrown knives can be reused after an unsuccessful throw. However, when an enemy gets hit by the knife, the knife is lost.
The throwing knife is one of the rare few weapons which allow for full-stealth kills. An unaware enemy will die instantly, no death scream, no alerts.
Microwave

This is a microwave. It pings when the meal is finished. What else is there to say?
Enemy Lines

We’ve added ACE Security Landmines a while ago, that the player can deploy, but the Aliens are getting their own type of landmine! A thicker, less clever one. While the ACE Security Landmine detonates whenever the sensor detects a target that the ACE Database considers ‘hostile’, the Alien Landmine doesn’t have such a luxurious feature; it blows up whenever a medium-sized object comes into contact with the mine. The Landmine has a thick armored outer shell, none of your weapons can penetrate it unless you want to waste a precious explosive. What you can do, however, is look for an object to throw on top of it. Hey, I told you they are not as smart! We have finally turned office chairs and whatnot into a game mechanic.
You know what is smart? Multithreading. Which Cockatrice has been spending some time on.
Multithreading support
Background
After the public demo we received a number of performance complaints, which is to be expected because not everybody has the best computer setup in the world but it started to bother us when it appeared that some of the complaints were from people with top-of-the-line PC setups with brand new GPUs like RTX3080s. It turns out that the RTX drivers are partly responsible for these performance problems but one of the common reports is that the game had a lot of brief freezes or unstable frame rates or "hitches", and then would go back to normal.
This is something I experienced a lot during development because personally my PC seems to be slower than normal at loading files even with an SSD, and we often play the game without pre-loading any of the graphics because it boots the game faster for testing. So I knew one of the main culprits for unstable frame rates was the fact that GZDoom loads sprites and models on the fly during runtime but it does so in a single thread.
Any time a sprite or model has not yet been loaded but needs to be rendered for the scene it is fetched from disk and the whole game engine has to wait for this before it can proceed. Not only does it have to fetch the data from disk (which is a very slow operation, slower still if the player does not have an SSD) but the image or model data has to be uploaded to a buffer on the GPU as well. That makes the disk access a big bottleneck for performance. Any time a number of sprites have to be loaded from disk the framerate is going to take a nosedive, and in a very busy scene it can freeze up completely for a noticeable moment in time.
We can prevent these freezes by pre-loading the data before the game starts, but doing this with the amount of sprites we have creates an uncomfortably long load time at the start of the game and start of levels. Many people would just close the game because it took too long to load, most likely thinking it had crashed. This solution is not acceptable.
But what does this have to do with audio? Well it turns out that loading textures and models is only part of the problem. A lot of textures in Selaco are very very small. It's also quite complicated to load textures in a background thread because we need to write a different implementation for OpenGL and for Vulkan. (Which is something I am currently looking into). After doing some performance benchmarking on disk access it seemed to me that a lot of time during those little freezes in gameplay was actually being spent on loading audio! Of course, this made so much sense because Selaco is *extremely* heavy on audio, probably more so than any other GZDoom project I've seen, and uses many variations of sounds for the same thing. Individual audio files tend to be much larger than textures and almost NONE of them are loaded before the game starts!
Just like textures and model data, audio has to be loaded from disk the first time it is used which is very expensive, and loading audio is easier than textures because it uses only one API (OpenAL) which supports multithreading and is very straightforward, so this seemed like a perfect place to start to try to improve the engine.
(As a side note, one of places where performance complaints frequently came from is during explosions. As it turns out, an individual explosion when played the first time would often load between 8 and 20 sounds at the same time! No wonder there were hitches.)
Audio Threads
Our solution is very straight forward in design, but implementation was a bit of a nightmare. A number of background threads are created (user specified for now, but in the future we will adjust how many loader threads are available based on how many cores/cpu threads are available). These threads can be queued up with a list of audio files that need to be loaded and they keep running until the list is clear.
During gameplay, whenever a new sound is encountered that needs to be played it is queued up in one of the audio loader threads.
On the main thread the queue is checked every frame to see if any audio has finished loading. If an audio file has finished loading, any instances of those sounds waiting to play are played. Most of the time the delay caused by having to load the sound for the first time is barely noticeable.
There are some weird caveats to this approach. For instance, it would be possible for the game to tell the sound engine to play a sound, and then try to stop it before it has even managed to load in the background thread, resulting in the sound playing when it shouldn't be, or worse a looping sound playing forever! This actually comes up quite a bit with weapon loops and doors/lifts. The solution was to check the audio playback queue whenever a sound is changed or stopped, and change or stop the item in the queue.
While this approach is fairly straightforward, it took a while to actually get it working. This was partly due to my unfamiliarity with how GZDoom actually loads files, getting re-familiarized with C++ threading, and the fact that GZDoom file loading is a giant spaghetti mess of abstractions. Getting individual file loads to work was fairly easy, as the default file loader was reasonably thread safe and only took a few modifications to work. The bulk of the work was understanding how the PK3/Zip loader worked and finding a way to make that thread safe.
Results
Loading audio in the background has ironed out a LOT of the hitches and slowdowns during gameplay. Especially during intense fights with lots of explosions, even my weaker than normal system runs the game mostly buttery smooth. The solution still comes with a few drawbacks, but the worst one being that if you don't have an SSD, some sounds are going to be noticeably delayed the first time they are supposed to play. But as long as that doesn't kill the framerate I think it's something we can live with.
We ran a brief test on this change with a small sample of players and for many frame rate stability has improved or was always optimal. I think we are on the right track.
Future
I am hard at work universalizing the background load process so we can have an easier time of loading other resources like sprites and models. The goal is to prevent any unnecessary performance penalties from disk access, and in the end we expect Selaco to be a completely smooth experience for every player, without needing the most modern hardware available while we still push the limits of what GZDoom can do.
The first phase of multi-threading has been pushed to the Beta branch of the Selaco Demo, so if you are a Patron, you can give it a go using the code EPICTESTERS2255.

Conclusion
Another very productive couple of weeks where things got more refined and finished up. We’re currently working hard on some experimental exterior zones to get a proper workflow going, as well as finishing up a new level.
Thank you, once again, for sticking with us and funding our little development team. Selaco is shaping up to be better and better and we are so fucking pumped to get this into your hands soon!
Wesley de Waart
2022-07-26 20:48:38 +0000 UTC
View Post

I’m happy to finally be doing traditional blog posts again. We have a lot of new stuff to show so this blog post will largely revolve around images, rather than text, so let's jump straight in!
As usual, here is an Imgur album containing all the gifs and images in case they do not load on your mobile device:
https://imgur.com/a/bddFCRu
New Enemy: Air Drone (name pending)

The Air Drone is one of our more simplistic enemy types. They see a target and they shoot at the target! Of course, this being Selaco, they will have a couple of more “advanced” moments, like being able to fire while moving, strafing when taking damage, and thrusting themselves forward at a faster speed to get behind you.
They have about the same amount of health as a regular Alien grunt but their damage per second output is lower compared to most enemies, making them relatively easy to deal with as long as you don't engage a larger group of Air Drones.
The Air Drone is currently being modeled and textured in 3D. Similarly to what we did for the Crawler Mine, I’ll be showing a full turnaround once it is finished. I’m expecting this to happen by the next blog post, as well as a better name than ‘Air Drone’.
New Enemy: Invader Turret

Humans have one major advantage over the Alien Invaders: AOS. This supercomputer is capable of doing extensive research for any subject and is capable of providing the best possible solution to any engineering problem. It is the reason why Exon Weaponry managed to perfect the effectiveness of bullet weapons, as well as creating top of the line Sentry Turrets.
While the enemy faction has strength in numbers and tactics, their hardware is far more primitive as a result of not having their own super intelligent AI system. Their Sentry Turret is weaker and much easier to destroy than your average ACE Security Sentry Turret, but packs the same amount of punch because it fires much faster. Given Dawn's lack of understanding of their technology, you cannot hack these unlike the ACE Security Sentry Turrets that have been converted by the enemy. The only way to dispatch the Invader Sentry is by destroying them.
Pro-tip: Alien tech is almost never waterproof and you can use this to your advantage. Throw a drinking mug at them, toss them in the water, use anything you can to make them come into contact with water since it will fry their circuits which causes them to go haywire. They will no longer exclusively target you, they will also target aliens before eventually exploding. The game does not tell you this, so consider this a Patreon Exclusive gameplay tip!
The Sentry Turret is currently being turned into a voxel by Borion. The GIF below is a Work in Progress

Weapon Revision: DMR

We have shown this weapon in a previous blog post and while we did like the design, we felt like we could do better. We made a few design changes as well as a full repaint.
For comparison sake, here is the old design:

Scrapped Content: Railgun

DON'T BE ALARMED! Selaco will absolutely have a railgun, but the design we currently have is going to be scrapped entirely. The model above was made almost 4 years ago and aged poorly. It does not match our current standards at all and rather than sticking with it, we decided to fully redo it.
We don't want to botch the landing with the railgun, so we redesigned it and we almost have a design ready. We’re not sure about showing it off post-launch though! It’s a powerful weapon that you find later on, and I don't want to spoil the entire arsenal. Just know that Silvia made a design that completely blows the design above out of the water!
Weapon showcase: Plasma Rifle
The Plasma Rifle is a fully automatic weapon that fires plasma bolts at high speed. However, out of all the automatic weapons we have so far, the Plasma Rifle has the lowest Rate of Fire. Make no mistake however, its damage potential is much higher than any other of our automatic weapons so far. There are two drawbacks to this, however. You have to factor in slower moving projectiles, which can get quite tricky at medium to longer range combat since enemies always try to move around a lot. Secondly, while far from rare, the ammo supply is much more limited. Unlike the more traditional bullet type weapons in your arsenal, you will not be able to use the Plasma Rifle for each encounter unless you have saved up on a lot of credits and have plenty to buy at a Safe Room.
A lot of guns in Selaco have a unique trait. The SMG, for example, has a taser and the Penetrator Nailgun has increased headshot damage and ignores armor. The Plasma Rifle has a more situational trait. Destroying environmental hazards like Explosive Barrels, Fire Extinguishers and what not, produces a much larger explosion when destroyed with the Plasma Rifle. The increased radius does not apply to the player character, so you will not have to distance yourself further from hazards.
Most of the animations for the Plasma Rifle are done. The only thing left is a cleaned up reload animation, and a few exclusive death animations for when you kill enemies with the Plasma Rifle.
When the Plasma Rifle is done, I will get to animating the Grenade Launcher. Below is a gif of the weapon in action.
<Animations are WIP>




Patreon Content: Extended Demo
Now that the ‘’Early Access Demo’’ is no longer relevant, we have replaced it with a new reward. Introducing: ‘’Extended Demo Access’’!
The Extended Demo will arrive sometime in 2023, a more exact date is pending, and will run on a newer build and have an additional level to play. If you have seen some of the preview content on YouTube, you might have seen this level from time to time. We believe it’s a much better map and we cannot wait to show it off.
Extended Demo Access is given to everybody who cumulatively pledged at least $10 or more after the month of May.
Patreon Content: Test Lab
For many months, Admirals have helped us test the demo and it has been a tremendous amount of help. We have been able to add additional polish to the game, as well as iron out bugs and add fun ideas suggested by Admirals.
Now with the demo out of the way, I would like to introduce the Test Lab feature. All Admirals who still actively pledge $5 a month will gain access to a super secret Steam Beta called ‘Test Lab’. The Test Lab will be a severely stripped down build of Selaco with the focus being on testing a new feature, like a weapon or enemy type. It will consist of a Sandbox Level where these new features can be played around with and tested.
We are not entirely sure how often we can commit to having a Test Lab build ready, so it’s best to not assume something will happen every month, but we will try to keep it maintained and introduce a new toy to play with from time to time. It’s the least we can do after all that the Admirals have done for us. Thank you!
You will receive an email in the future with the password.
Conclusion

Great progress was made these past 2 weeks! Of course, not everything we have been working on is shown here. While all of the above was being worked on, I was actively busy with level design. I don't want to show off all the areas that we are making so I’m keeping those under wraps, but I will provide an ultrawide screenshot of a cute little kitchen that I have built.
Cockatrice has been diving into the back-end and GZDoom and started adding basic multi-threading to GZDoom so sprites and sound files can be properly loaded without causing a stutter to the entire game. This was a common problem during the demo where players would often report hitches when certain sprites (like effects or enemies) would load for the first time in the level. We are confident this will greatly improve the smoothness of the game. We will now work on adding the content shown above and hope to have them presentable for you next week!
Thank you again for your amazing support. None of this would have been possible without you!
Wesley de Waart
2022-07-10 16:54:58 +0000 UTC
View Post

Hey everyone!
Before we begin, it’s important for me to mention that I am exhausted. I wanted to write this blog post a few days ago but I could not bring myself to do it because I am in dire need of a break. Rest assured, this does not mean the game is in a bad state, absolutely not! Things are going great, better than they have ever. Largely because of you, but also because the demo was a hurdle that frightened me for months, and now with that finally out of the way, we can slowly begin working on the full game. But first, I give myself a vacation.
This will be the final impromptu blogpost before things return to normal again. Moving forward, expect Patreon blogs to be full of WIP stuff, new artwork, mechanics and more. We’ve been wrapped up with the demo and have not been able to get a lot of new things done, and I always felt like the development blogs started to suffer from it. We love showing stuff! We know you like it too, so starting next week, you should expect progress that is worth showing again.
After 5 years of hard work, we have finally reached the stage in development where a fully playable build has been shared with the public that showcases a slice of the game. While it only touches the surface of what we have to offer, it’s a good representation of the direction the game is taking. Getting this build ready, man, was not an easy task. The last couple of months have been hard on the team due to all the deadlines and that is something I want to talk about in this blog post.
Before we dive in, I want to take a moment of gratitude and give my thanks to all the backers we currently have. Ever since our big marketing push that took place a few months ago, we have seen a significant increase in the amount of patrons for Selaco and, man, we thank you all so much for this. At this time of writing, we have 319 backers pledging a total of €4100. As I have stated, time and time again in the past, every single cent of this money is spent on the game itself and to ensure that the people involved with the project can cover their expenses while also having leeway to expand the game further. We have reached the point now where we can start looking for an additional developer to assist us with Selaco. In this case, a level designer. Maybe, with a bit of luck, two. But let's take it one step at a time!
In this blog post, I want to dive into a couple of things. Starting with the menu artwork.
Menu Art
This one was hard to miss! If you have played the demo you have without a doubt seen this amazing piece drawn by Arturo Pahua. Let's go through all the different iterations of this piece.
Sketch one

Starting with the idea.
It was never our goal to go with something action packed for this one. Rather, the exact opposite. It should take place after the action and show Selaco being under siege, showcasing the aftermath of a battle that seemingly took place recently. The game is not aiming to be a full-on action game despite action taking the center stage. The game is also about the world, the mystery, and worldbuilding. We needed menu art that people would look at and think ‘’I want to know more about what is happening here, I want to explore this!’’.
The sketch above was the version we decided to work with. Showing Selaco’s exterior, where both Aliens and ACE Security guards have fought over territory. Hovering above Dawn, we can Earth through a crack in the skylight. Albeit earth is burning, abandoned. Telling the player Dawn is currently not on Earth, but also clearly not a spaceship, because there is a sky, right? In a previous blog post we’ve shared more about the setting, so let's not dive back into that again. If you are interested in reading that, click here [https://www.patreon.com/posts/developer-blog-65823378]!
We tried a bunch of different ‘soldier poses’ for Dawn, but never felt like the traditional military pose really worked. Take a look.Some of these sketches show living allies in the background, but we decided against that. We wanted the attack on Selaco to look hopeless and we wanted Dawn to look more vulnerable. So we murdered the friendly soldiers behind her and took her machinegun away to replace it with a sidearm. I think it adds to the image and overall composition.



Now it was time to get to work on lineart. As any artist here knows, these are time consuming. We wanted the entire thing to be drawn by hand, so 3D references were avoided. Getting the perspectives and composition right took some doing, but we pulled it off. I’ll show each iteration below.




With the line-art done, it was time for color.


We didn’t bother with the ‘background’ buildings yet, they were added in the detailing phase.
Almost there..
Here is a WIP Dawn. You're welcome.
Aaaaaand DONE! If you are interested in a fully uncompressed image of this artwork without logo’s smacked on top, you can download it here:
This one is quite a journey and I’m very pleased with the results! Can’t wait for the next big piece to be made closer to release!
https://drive.google.com/file/d/12hUxKMzkJLyQ5u8jivO8drtfueoYDPL0/view?usp=sharing
The Deadlines
Oh man, the deadlines… Long-time backers have probably been fully aware of the current development phase we’re going through. Or rather, the phase we just ended (Yay!). We launched the Patreon Demo almost 3 months ago and I was planning to take a break after that. A few days off to get my bearings together. However, that break was a bad idea because the Preview Event was also right around the corner and we had to properly polish up a new level for it. We could delay it because nothing was set in stone as far as deadlines are concerned, but with Nextfest coming up, we felt it was crucial to get some hype surrounding the game. We needed someone big to talk about us, and GmanLives, JarekTheGamingDragon and IcarusLives were interested. I passed on my time-out and went back to work.
The preview build was especially exhausting. I could feel a burnout approaching, especially knowing the route ahead was not going to allow me to take any further breaks. All the art assets were already made by the art team, so they could just continue what they’ve always been doing; create things for the game with no real time pressure. For me it was the exact opposite. My backlog for the preview build was gigantic. I had to wrap up two new enemy types (Crawler Mines and Enforcers) which were still very much in a glorified prototype phase, rewrite Sentry Guns which play a large role in the Preview Level and the levels (2-2 and 2-3) were still not matching our quality standards. I needed to haul ass and we barely managed to get things ready in time.
Preview done. Maybe now I can take a break? When is Nextfest again? Next month!? Well damn, we better get started! The past month I’ve had zero enjoyment working on Selaco, which is the complete opposite of how it usually goes. I love this project so much, but this whole development phase has been the most stressful and exhausting thing I have ever done in my life. I wish it was an exaggeration, but I strongly believe I have never worked this hard in my entire life. Going to bed at 4-5AM, waking up at 10-11AM just to head back to work in an instant for nearly 2 or 3 months. We’re not going to get a second chance at a first impression, so we had to stick to landing. After many years of hard work, this is it. There’s no way I’m going to launch a demo that is bad.
After weeks of hard work, we did it. Roughly a week before launch we managed to complete the demo and sent it over to our backers for testing. To our surprise, it went surprisingly well. There were no real big issues to speak of other than some annoyances that needed to be ironed out. This did me good, but we weren’t there yet. We had some last minute ideas we quickly wanted to add. ‘’Remember shareware games? Why don't we add one of those splash screens?’’
I pitched the idea to Silvia, and she managed to bring us this 2 days later:
Sketches


Final version

I liked this idea for a number of reasons! The primary reason? The demo does not show a whole lot beyond the basics of Selaco. It shows combat and exploration, but we need to ensure that we have more to offer. So we showed a screenshot featuring a new weapon and a mysterious unidentified creature in the distance, an upgrade screen, a level that doesn’t look very sci-fi , and a screenshot showing a different enemy type. We wanted to show the Mech, but he was not ready enough for the game so we had to pass on that. This is a great way of triggering nostalgia, because I’m sure everyone who played games in the 90’s has seen one of these screens before, but also allows us to tell people ‘’There’s so much more!’’ before ending the demo.
Nextfest was approaching in one day. Time to make the final adjustments. We did lots of testing and ironed out some last minute issues. No problems here.
2 hours before the demo launch we did another round of tests, and holy shit, problems left and right. There was a mysterious bug where, after obtaining the Blue Key in 1-3, dozens of engineers would spawn throughout the map making it almost impossible for a casual player to survive. This happened because I was tweaking the level by adding some new last minute effects which, accidentally, shared the same TID (Thing ID’s are used as an identifier for scripts) as the Engineer Spawning script. Causing them to spawn all over the place. So we fixed that.
Another problem arrived. One of the devs encountered a bug where Siegers became ‘ghosts’ and could not be killed. They were fully capable of killing the player, but you could not do anything to do them. We tried to replicate it, but we could not. “I’m sure it was a fluke, we cannot delay this thing any further”. It’s a bug that has not been fixed to this day and has unfortunately been reported by one player so far. I’m sure there are a few more but did not report the issue. But I’m getting ahead of myself.
It was time to launch the demo with a bug that frightened us. It has never happened before, so we just hoped the bug was always there and was just very hard to replicate. So.. It was time. Time to enter the Steamworks page and hit the green ‘RELEASE DEMO…’ button.
The Demo Launch
To say this was frightening would be an understatement. My hands were shaking, I was starting to sweat, I could barely type messages properly to my team because of how nervous I was for this demo to land.
‘’Can you guys see the download link yet?’’, to which everybody responded “No”. Did we do something wrong? Is the demo not appearing for us? No, I just forgot to click a tiny stupid checkmark. I was so nervous that I could not even read the instructions correctly, which is what I am already awful at even when calm. I ticked the box and hit ‘Save’.


And it was up. Now we wait..
The ‘Aftermath’
After launching the demo we were actively scouring the internet to see activity. Obviously, the first few minutes are dead silent. There isn’t much to say, so me, being a very impatient developer, felt like the demo had already flopped. No idea why I would think such a thing, I probably could not think straight. Surely we will ignite activity in a few minutes. And then it happened!
Hooray, the Steam Forums started getting activity. Some praise, some critiques, and a couple of rotten apples who felt the need to be a little too harsh with their opinion and decided to just insult us (which have been dealt with in the way of a certain ban hammer).
I wanted to take a vacation after the demo launch, but it was clear there were some issues. People had difficulties with the difficulty (haha) and were fully convinced there were some balancing issues, especially since the jump from Commander (difficulty 3) to Captain (difficulty 4) was bigger than it had any right to be, as well as some minor technical issues that needed to be ironed out. So, you guessed it, vacation delayed once more! Let's fix the critiques and launch a quick patch this friday. We delivered the patch, monitored activity and noticed people felt like it was much improved. You know what that means, right?
Vacation
This is where we are now. After all the hard work, all the hours, all the blood, sweat and tears, I have finally decided to take a break and take it easy for a week, maybe even two, we’ll see. The team will continue to work on the game which makes me feel awful because usually I’m there to work alongside them, but being able to just relax is a nice change of pace. And, contrary to how I usually feel, I think I deserve it this time. Everybody knows what they can do so I am not needed outside of approving things and helping brainstorm; which is fine, that’s one of my favorite things to do anyway!
The future of Patreon
Now that the demo is out there, the ‘’Early Access to the Demo’’ award is no longer relevant. Same with Admiral, “Pre-demo” hasn’t been a thing for a while now. After my vacation we are going to have a discussion on what to do with the outdated reward tiers
Rest assured, the new rewards will absolutely be worth your time. You have done great things for us, so we will return the favor.
Conclusion
There’s a lot more that I want to say. I could ramble on and on about how hard this week has been for me. How, after so many years, it’s hard having to deal with being in a ‘spotlight’ all of a sudden where the game is being played. People were always talking about Selaco this week, Twitter and general internet activity was rather high at all times. It made me feel vulnerable and quite scared whenever I saw that a user mentioned us on Twitter, or when hitting ‘’Search’’ on Google. Steam Forums we’re especially a nightmare. Many good critiques were given, and I am fine with those, but I would be lying if I did not feel personally insulted time and time again by how some people word their critiques. As a developer, I should learn to understand that not everybody is good at giving critiques, and I should also get used to the idea that the larger the community becomes, the more frequently we will get “attacked”, because rotten apples tend to speak up more often than the players who like your work.
It’s been a tough phase for Selaco. Highly productive, very rewarding and it paved the way forward. Now, I am glad to be taking off for a while and getting my bearings back together.
Thank you for reading this. I know it’s not the most structured blog post we’ve ever done, but it feels good to get things off my chest.
If you are not extending your Patreon in July, this will probably be the last blog post you will be able to read from us. So, thanks for joining us on this journey and for helping us out in some way!
For everyone else, we see you in 2 weeks with a traditional blog post showing new stuff that excites us. But for now, I have to pour my drink and raise a glass to each and every patron here. Talk to you when I get back! <3
Wesley de Waart
2022-06-20 18:59:10 +0000 UTC
View Post

We’re back for another dev blog and, phew, what a couple of weeks it has been. I want to take a moment to discuss the results of the previews and the changes we've made for the upcoming public demo. Usually we show tons of new features and additions in these blog posts, but with the demo on the way, we mainly focused on refinement.
As usual, if you are on a mobile device, you can find all the GIFs and images here: https://imgur.com/a/lfao0hE
Previews

The preview from GmanLives and JarekTheGamingDragon has done some great stuff for us. Our wishlists went up significantly, giving us 3500 wishlists on the first day of Gman’s video, followed by at least a thousand wishlists for the days that came after. This is still going. Jarek’s video that appeared a week later brought it back up too, keeping it going!
We saw a much needed increase in Patrons as a result, as you might have probably noticed. If you are new here, we are eternally grateful for your support, this was a boost we really needed.. We now have the budget for a new level designer (maybe even two, if the momentum keeps going) and are going to start looking right after the demo releases. Not only will this allow Selaco to be a longer game, it allows me to further refine features, polish the game up and assist Ken with the writing process. I am beyond excited for this. Big thanks to both GmanLives and Jarek for putting the word out. It got people talking and we got exactly what we were hoping to achieve out of it.
You can view the previews here:
GmanLives: https://www.youtube.com/watch?v=qatHGKV0opk
JarekTheGamingDragon: https://www.youtube.com/watch?v=SCoPn4VhYmg
New feature: Use-to-pickup


When analyzing footage from players testing the Patreon Demo, we often noticed a massive flaw in the way we handle pickups. Items, like ammo boxes and portable medkits, are often placed on top of desks, furniture or other objects. Not only do we think this looks better aesthetically, it also sort of acts as guidance. It’s always worth focusing your eyes on furniture to check whether or not you see something shine. Makes sense, right? It’s easy to get used to this design choice as a player.
A problem arose when we noticed players would often ‘hug’ a desk to pick up an item from a desk, just to realize they are not within the pick-up radius of the item. A solution to this is to either jump on top of it, or circle around to the other side of the desk where the item pickup is closer and within pick-up range.
While I love the idea of Dawn jumping on top of tables to pick up ammo, it feels rather clunky in practice. So we added the ability to press the Use button to pick-up all sorts of items. Not only that, a label will describe the item and tell you the quantity of the ammo pickups. See the screenshot to see what I mean!
Additionally, we have added a feature called 'Manual Pickup mode' (Gameplay -> Immersion) that prevents items from being automatically picked up. Useful in hardcore mode where you don't want to accidentally pick up items you currently do not need.
New feature: Jump Kicks

One commonly requested feature was to add the ability for flying kicks. F.E.A.R. has it, so surely we should have it too, right? Well, not exactly, sort of.
The problem with flying kicks is that I was struggling to find a use for it. We already have sliding kicks, which is a more powerful melee alternative that puts your slide on an extended cooldown as a trade-off. From a game design standpoint we feel like this made sense. However, how is this going to work if we add flying kicks? Do we give a full slide cooldown when a flying kick is executed? That doesn’t make sense and won't feel very intuitive. Do we make it identical to a regular weapon melee? That sells the wrong idea, because if the move is more complicated to execute, surely we need to reward the player for it. What if we just make it more powerful? That would make regular melee completely worthless because flying kicks will always be available. Making it another cooldown would make melee too involved because that would mean both Flying Kicks and Slide Kicks would have their own cooldown. Decisions, decisions…
Then I realized that I was being an idiot. What if we allow the player to turn slide kicks into jump kicks? We already have a Slide Jump mechanic that people love, let's upgrade it!
While performing a Slide Attack, you can now jump to switch to a flying kick. This will keep your feet up and this allows you to kick the enemy in the head. It functions nearly the same as a slide kick does, however, the amount of knockback is always based on the velocity of the player, so if you time your flying kick just right, you might be able to knock the enemy down just a little further than usual. This is not always the desired outcome, so watch your kicks carefully!
Artwork Progress (WIP!)

We showed this piece a while ago, but unfortunately had to put it on hold to focus on some demo stuff. With the demo being mostly ready to go, Silvia took some time to get back to work on it and this where it is currently at. There are still some things missing here, like some smoke and particle effects (it is Selaco, after all), a sky and some additional tweaks. What are we going to use it for? Nothing specific, really. I think it's important to always have some spare artwork available that we can use for a random announcement or blog post to draw some eyes. Since we’re all caught up with the demo, and all of Silvia’s stuff is put on hold until we can focus on the full game again, she went to work on this piece. It turned out fantastic, don't you think? I’ll share it in full res glory once it’s finished!
Demo Preparations
If you took a quick glance at this blog post to count the amount of pictures, you might have noticed there’s a little less of that than usual. That is because we are preparing for the final deadline: Demo!
We basically refined as much as we could. The demo level being the first level I made for this game, it needed some changes to match the newer levels of the game. Let's talk about some of the improvements we’ve made. This doesn’t cover all of it, but a good amount.
Admiral tier backers, we will be updating your client soon with a demo test! Keep an eye out for the Test Server, I'll ping everyone there when it's ready!
Layout improvements

A number of combat encounters have been adjusted. Expect some new rooms here and there that allow both you and the enemy to have more movement options in combat.
Color Grading

All maps have been re-colored almost entirely. I always liked the lighting in Selaco, but noticed I could do a better job with giving the illusion of bounce lights. A red light in a bright blue environment should never be solid red, it always looked a little out of place. I redid all of those, adjusted sector lights, new little fog effects and more. I am not sure if everybody will notice the changes, but I do think it’s more pleasing on the eyes than it usually is.
Scripted sequences

I rewrote a number of them and added a whole bunch of new ones. While I always loved the opening, I felt like not enough things were exploding and the intensity was lacking a bit. So that’s what I improved on. While you run and look for a weapon, a lot more is going to happen, as well as a slight tweak in the maintenance shaft section.
Pathfinding
Another thing I addressed was enemies getting stuck between objects. If they are in pathfinding mode (player out of sight, trying to reach the player), they will no longer get stuck inside objects and have a much easier time locating the player.
Improved effects

We are now fully utilising Cockatrice’s Particle System. Not only did we refine a bunch of the effects themselves, we are now also capable of adding more particles with less of a performance hit.
Improved audio experience
If you work on a game for many years, you learn a lot and get new talent onboard. Many of our older sounds did not really fit anymore, so got to work on replacing a bunch of older sounds. On top of that, I continued my never-ending journey of fixing the mixing (that rhymes!) problems. Once again, expect sound decibels to be more believable. A piece of broken monitor hitting the carpet floor will no longer match the audio levels of a gigantic explosion!
Slidings are more reliable

Slidings are now more reliable than ever. GZDoom uses a state-based system meaning that only one thing can be done at once by an actor. As a result, firing your weapon while sliding (or any action, really) would completely cancel out any slide damage you could apply. When I wrote slides many years ago I didn’t know any better, but now that we fully utilize Zscript, It can be written to be more reliable and allow for proper multi-tasking. If Dawn’s legs are visible, you will apply slide damage. As an added bonus, pushable objects will now get pushed out of the way and crates will be destroyed instantly from slide damage.
Reanimated and re-rendered player sprites
Dawn will have updated sprite work where she looks less out of place and a little less ‘’happy’’. We are still working on these, so apologies for the lack of a screenshot!
Eliminated all floating items

In my last blog post I discussed replacing all pickups with ‘stationary’ ones, meaning they will no longer float. I strongly believe in the visual design of the game, but having both floating and stationary items always threw me off a little. I was not quite sure what to do here. Floating items trigger my nostalgia, but grounded items are more believable and aesthetically pleasing in a game like this. The choice ended up being rather easy, so I decided to lean into grounded items. This now includes weapons, health / armor shards and much more.
Key art
Same as last blog post! In progress. WIll show more later <3
(Heads up: This next part is not written by me. If you want to get angry over the amount of bro puns, take it out on Cockatrice. Just Bro with it.)
Space Bro:™:
Hey Broseph, are you a real BRO? Do you love SPACE? Then you're going to love SPACE BRO.

That's right, SPACE BRO is actively in development, and we hope to have a solid taste of the favorite arcade game of Selaco's finest ready to play for the public demo release. Get ready to boldly BRO where nobody has BROne before, and save the earth from deadly asteroids and aliens. Prove that you have what it takes to be the ultimate SPACE BRO! Credits are required of course, so keep some handy while you explore the demo levels, Broba Fett.
In SPACE BRO you will compete to beat Tychus and Dawn's high scores using your ship's laser to turn asteroids and aliens to dust. Activate the TURBRO engines to boost around at high speeds (watch your heat!) and use your limited screen killing NUKES to save yourself from impossible scenarios. More action is planned but we can't guarantee how much will make it in the demo release.

On the technical side
SPACE BRO is being written from the ground up using GZDoom's basic 2D drawing capabilities. It uses none of the sprite or gameplay features of GZDoom has to offer as it technically runs inside a menu in the UI context. We have gone this route because it means not interfering with level design in any way besides placement of the game cabinets. We are proud to have sounds, particles, screen effects and even a crude physics engine running in this tiny little game-within-a-game.
What you see in the screenshot above is an early prototype but we are rapidly developing SPACE BRO into a properly playable arcade experience.
Conclusion
As you can see, the past couple of weeks have been all about refinement. The Patreon Demo went really well as far as feedback was concerned, so now we took the time to improve what we already have and get things ready for the public launch. We’re super nervous, but we’re also confident.
Thank you all for being here and for supporting this project. The month is about to end, so some of you might end the subscription today. Take good care and see you when the demo launches <3
Two weeks left!
Wesley de Waart

2022-05-31 02:08:11 +0000 UTC
View Post

Good morning / afternoon / evening Patrons,
We did it! A new milestone has been reached! Selaco has a preview version now which we can hand out to content creators and press. There are a good amount of things we want to talk about this week, so let's dive right in.
REMINDER: Gifs do not load properly on Mobile. Refer to this imgur link to see all the images and gifs shown in this blog:
https://imgur.com/a/RheerrZ
Key art
We have the first sketches for our big key art piece and have begun refining the line-art. We expect this to be done shortly before the demo hits, but we will share it here on Patreon first, before sharing it publicly on Twitter! I would love to do it earlier and show the sketch right now, but I prefer revealing it in its entirety when it’s done, then do a patreon exclusive breakdown on why we went with certain decisions and how the whole thing came to be!
A couple of things to note:
- No, Dawn will not stand on a pile of corpses doing badass things. We wanted to do something new and not pay too much homage to classic shooters.
- It puts an emphasis on the journey rather than the action. Showing Dawn by herself in the aftermath of Selaco.
Preview Preparations

We have a working preview version which we are currently handing out to content creators and press. The Preview Version of Selaco is similar to the Patreon Demo in many ways, except it runs on a newer build with additional polish, and features the second level; The Backrooms. The level introduces 2 new enemy types (Enforcers and Crawler Mines), 3 new weapons (Smg, Nailgun, Landmine), showcases Swappable Alt fires and introduces the player to the Workshop which allows players to upgrade and adjust the behavior of their weapons.
Sentry Turret Changes

Repositioning
Dawn is capable of dishing a good amount of damage by herself, but sometimes the odds will become too overwhelming for one soldier to handle. Frequently throughout the game, the player will be ambushed by multiple groups of enemies, turning into a short game of Wave Defense.
AI Changes
Doom AI is always challenging, especially because Selaco tries to have them behave like actual soldiers rather than “simplistic” demons. Our past AI systems did not know how to deal with friendly sentry guns and would instead always focus on Dawn and not retaliate properly. In the newer build, they prioritize them better, making them target the sentry gun when Dawn is out of sight or when shot at by the turret.
To help against these odds, we have added the ability for Dawn to not only Convert sentry guns, but also to pick them up and reposition them. Upon repositioning, the turret needs a second to recalibrate before being able to fire, but once that’s done you will have a reliable companion on the field!
Sentry gun variant: Alien Sentry

Finally getting to work on a turret variant for the enemies!
The idea I used to have was that the aliens hacked ACE Security turrets (which is actually a minor plot point!), but Dawn could reverse the hack and have them fight for ACES again. However, if a Sentry Gun had a bright red light attached to it, these would be unhackable. This comes with a major flaw from a visual design standpoint. Having to rely on a point light to communicate with the player whether or not a turret is hackable is not exactly easy to read, especially because the model is identical and our eyes look at silhouettes first. It should be easy to read even when in a brightly lit environment. We could change the color of the turret, but that would still not be enough, because color blindness exists and gameplay elements should, in my opinion, never rely too much on just color variations. This goes double for a fast action game where split second decisions need to be made.
The solution? Let’s just make a brand new turret for the enemy faction!
I always wanted to flesh out the weaponry of both ACE Security and the Aliens, so this addition further builds upon their arsenal.
Just like the ACE Security turret, this model will be voxelized.
Junction Boxes

Apologies for the poor GIF. To my knowledge, Qubicle does not allow rotation per-model.
We often introduce new environmental hazards as the player continues their journey. One of which is junction boxes. Firing on a junction box will cause it to explode, electrocuting every bastard that happens to stand within its area of effect. The damage output is minimal, but it stuns enemies and makes them an easy kill, or a perfect opportunity to temporarily shut them down and focus on other enemies.
As a stupid, shitty detail, you can also open them up with E, which makes them affected by water particles. Tossing a mug against an open junction box, or causing any type of splatter, will cause it to explode.
A second (more powerful) variant of the Junction Box is being worked on, which has an increased area of effect and adds the chance for aliens to explode during the shock

Workshop

Given how the Preview Version has the Workshop, we had to improve our Weapon Upgrade system and make them actually usable! We showed the Workshop back on Realms Deep, but back then the Workshop actually didn’t do anything since Weapon Upgrades were not implemented yet (Which made it a perfect ending for the video because it meant we didn’t have to show anything!.
Now on the other hand, the system works and all weapons have fully functional upgrades and alt-fires that can be swapped out. Don't want to use the Nailgun zoom? Replace it with a Nailbomb or Nail Turret alt fire instead.
We will add a whole bunch of alt fires for all the guns, which can be found by exploring levels and picking up Weapon Kits.
Pre-demo replacement
We are still discussing a brand new reward for Admirals and have a very cool idea that allows Admirals to be more involved and have a chance to play with new toys as they become ready for testing. Will share more when we have some more details!
Space Bro™

Last but not least, development on SPACE BRO™ has begun. There isn’t much in the way of gameplay, but at least the spaceship can move around. Now to do a proper art pass and actually work on this minigame from time to time.
Conclusion
Next target? Public demo! The upcoming blog post will be a difficult one, because we’re going to spend lots of time just cleaning up, improving code and trying to keep performance as high as possible. So I’m looking for some content to talk about for the next blog post. Do you have any questions regarding Selaco, its history or game development in general? Comment below and we will answer them for the next blog post!
As usual, thank you all so much for being a Patron. It continues to make a massive difference on how the game is shaping up and, once again, none of the things described above would have been possible without you. Thanks!
Wesley de Waart
2022-05-17 21:51:24 +0000 UTC
View Post
Hello wonderful people!
We’ve reached our first massive milestone this month! It was a ton of hard work to get here, but we have finally launched the demo for our backers and the feedback we got from you was astounding. I would like to use this opportunity to discuss some of the feedback we’ve got and to talk about what we will be focussing on next.
Reminder: If you are reading this using the Patreon mobile app, GIFs will not be played correctly. Please refer to this album to see the GIFs in their full glory:
https://imgur.com/a/cnHHGse
Selaco

Concept art - City area of Selaco
Selaco is not an underground city on Mars anymore. As discussed in a previous blog post, we were never quite fond of the setting we used during our modding days. It felt a bit too similar to Doom 3 and the underground base was far too limiting for us and hard to pull correctly. Having such huge similarities with another game is fine for a free mod, but for a product that is going to end up on a store shelf, this was nowhere near good enough. So Ken and I reached out to one of our concept artists to discuss the new setting, the setting Ken always intended to make but we simply could not pull it off due to the lack of manpower in the team in the early days.
Enter no-longer-an-underground-city Selaco! Selaco is a “space”-station, or a dome rather, that aims to recreate Earth’s atmosphere as much as possible. With the help of AOS, the super computer that functions as Selaco’s brain, massive advancements were made in achieving that goal. Selaco has climate systems, natural plant growth, fully breathable air, Sky Simulation technology and much more. While impressive, it is nowhere near flawless. The sky simulation, for example, often just turns itself off in places and has a tendency to glitch out, which gave birth to the rule that all citizens of Selaco must wear a light strap on them at all times to ensure visibility in a potential glitch or outage. Remember that there is no natural light here, if the skies break there is nothing to see (we are totally not foreshadowing here!). The imperfections add their own fair share of charm, and it does a good enough job at making the people feel at ease, given how much they miss their prior planet.
For us, the goal is to create a near-utopian city. It’s a given that people are longing to get their old life back, they miss Earth daily and honor Earth every year through an Earth Memorial Day celebration, but they are also trying to make Selaco the best place it can be. This is our new home now and we need to do whatever we can to make it work. For the children, for their children's children. All of humanity sharing the same emotional baggage brought them closer together than they have been. One large community, giving the best they can. Making it work.
Humanity is not going to lose their home again.


Dawn - Work in progress art piece
Particle System
Now that we have discussed a portion of the lore / universe, let's dive back into some good ol’ game development stuff! In the past few weeks, Cockatrice has spent some time fine tuning the way particles are handled in GZDoom.
As many know, in GZDoom there is no particle system so we are forced to use Actors to represent particles. Actors represent pretty much every entity in the game, such as the player, enemies, projectiles and even potted plants. Actors are extremely flexible and quite handy at representing particle sprites and their movement with the state system. They can do all of the basic things you expect from a particle such as bouncing off surfaces, fading in/out and changing in size or rotating, but all of this flexibility comes at a cost.
In modern game engines, particle performance is increased by grouping similar particles and having their behavior (and rendering) run as batches, often in hardware on the GPU instead of on the CPU. This frees the CPU up for doing more important tasks. GZDoom has no such concept so we had to improvise.

To speed up particle performance we came up with a ZScript implementation that skips the normal physics processing of an actor and applies some VERY simple rules to move the particles around, such as moving with velocity, rotating the sprite and bouncing off of floors. Optionally we can also tick the state system of the particle. Obviously performance is dependent on using the fewest calculations for each tick and if the particle is not expected to change state there is no need to use the state system.
Another way we improve performance of each particle is to skip (or delay) the code that checks where the actor is in the world, which identifies the floor and ceiling heights and the sector that the particle is in. This doesn't really need to be done every tick, as that information is only necessary when the particle approaches those surfaces.
There is a small limitation to this system, where it is not possible to bounce the particle off a wall without using the standard engine physics. Most of the time such behaviour is not necessary anyways, so it's only a minor issue and we can always fall back on engine physics when absolutely necessary.
An additional benefit to writing a custom particle system is that spawning particles is much more straightforward, and is done in a way that is more familiar to those with experience in other engines. It allows us to do effects with particles that require very little coding to achieve. Such as this prototype rain effect.

Lastly, the nice thing about the particle system is that we can automate particle density based on the player's settings without having to think about it. No extra code is needed to support Ridiculous particle setting vs Low. To quote an industry giant: "It just works!". I'm sure that quote won't come back to bite us in the future.
Here are some particles on Ridiculous.

Demo Feedback
We have received lots of feedback from you and I would love to discuss the most frequently brought up topics.
Too many systems are introduced and it gets confusing
Fully agree, and trust us that this is only the case for demo purposes. There is a lot that we want to show, and not much time to show anything. Launching a demo comes with a large set of challenges. We have to find a balance between “not making the demo too long” and “Keeping it simple while also showing our feature-set”. The feature-set is unfortunately impossible, things like The Workshop, Upgrades and Swappable Alt fires could not be present in the demo because combined with everything else the demo has, it would become far too involved and there is only so much information we can give the player at any given time.
Do not expect this to be the case in the full game. Things will be properly spaced out to introduce a steady supply of features, mechanics and weapons, without it being too overwhelming.
Floating items
This was commonly brought up. The inconsistent usage of floating items (health/armor shards, armor, credits bags, weapons) felt jarring and ruined the immersion. This is something that I fully agree with. To tell you the truth, my design philosophy began as “If it does not exist in the lore, it should float”. Armor and Health shard do not exist in the lore of this universe, so I made them float. Same for powerups like Double Damage and flying pieces of armor (Dawn’s suit is unique, so why would it exist around the game world?).
I don't think this was the right decision to make, so we are going to change that and make it so that every item pickup in the game is physically connected to the world. This will take some time, as it requires me to move every pickup in the game and change bits of the levels to have it make sense. Armor, for example, should not be chilling on the floor in the middle of the hallway, it needs to be somewhere. On a shelf, on a bench, near a dead body.
I fully expect the June demo to have these changes.
Difficulty
Selaco is not easy and was never meant to be easy. Thankfully, most of the feedback was very nice about it, letting us know that the game is challenging but also fair. This has always been a design decision. Dying should be the fault of the player and never the fault of the game being dishonest or unfair. Player death is a learning opportunity, not a punishment.
With that said, I am not fully satisfied with how the difficulty levels work. The jumps between difficulties are all over the place, especially when jumping from Commander to Captain where the difficulty spike is enormous. I always felt this way and some of the feedback we got confirmed that this was the case. I’ll be looking into this and try to balance it out a little better. The recent inclusion of ‘Admiral’ makes this much easier, since we can have a difficulty mode that pushes the boundaries a little.
Then there’s our bonus gamemode Selaco Must Fall, which remixes item and monster positions to be as punishing as possible. This became a favorite for many and that makes me happy. As the description of Selaco Must Fall explains: It is not meant to be beatable. For me as a game designer, this allows me to design encounters without having to hold back in the slightest and to put far less thought into everything. Do I want this medkit to be the only medkit in the entire level? Do I want to shove 100 explosive barrels in this encounter that causes the entire room to explode if one gets shot? It allows me to think less and worry less about delivering a balanced experience.
Posters mention ‘Mars’, so does AOS, windows show us space. Where are we, exactly?
As discussed above, we are in the middle of a setting change and we could not get things ready in time for the demo. The timing is a little unfortunate, but we saw no other way. When we launch the full game, expect the windows to show a beautiful city instead of an outer space, and for all the art assets to no longer mention Mars.
Gun balance
Gun balance is an on-going process. As the game is being made, so are the numeric values and behaviors of certain weapons. We tried to address weapon balance concerns as much as possible with updates, and I think all 4 weapons in the demo are currently well-rounded and balanced out, but if you still think some weapons feel too weak or too powerful, know that this will still be subject to change!
Now that the demo is out, what does it mean for Patreon?
The ‘Pre-demo testing’ for admiral reward is no longer relevant, since the demo is about to come out. We have some amazing ideas that we are going to explore. I can’t say much yet, as we need to make sure that it works, but long-time backers will be in for some good, you have my word! <3
Closing
Our next target is to deliver a preview build to a small number of content creators by May 16. The short 30-second demo clips that many players have shared on Twitter were an effective way to spark interest in the game from people less familiar with Selaco. Our wishlist numbers have proven for this to be the case, which is good timing since that means people are curious and would love to know more. This in turn will hopefully help content creators to get more viewership!
The preview build features a new level, weapon upgrades, a new weapon and more.
As usual, thank you all so much for your support. This month has been crazy and we managed to shatter our personal Patreon record. A good portion of that money has been put aside for something big. Something that we will hopefully show in the coming weeks.
If you only pledged for the demo and are not renewing next month: Thank you for being here and for trying the demo out! We truly hope that you enjoyed it and feel like the game is in good hands. Thank you for helping us reach our highest Patron count yet.
For those who are renewing: We have lots to show soon, including key-art. Of course, as always, I’ll be fully available in the Patreon-lounge if you have any questions regarding the game.
Have a fantastic month everyone!
Wesley de Waart
2022-04-30 20:47:39 +0000 UTC
View Post

(Early sketch of Selaco's exterior level)
Lovely backers,
At this time of writing, the Patreon Demo arrives in 5 days. Seriously, holy shit, I still cannot believe we’ve finally reached this point! We’re hyped as hell to launch this demo and are excited to hear your thoughts on this. With this Dev blog, I would like to focus on a short little FAQ in regards to the demo as well as provide a status update on two of our weapons: The DMR and the Plasma Rifle.

The last couple of weeks involved tons of hard work to get the demo prepared and ready to go. This includes making a separate Steam client, iron out the most problematic bugs and, because of the setting change mentioned a while ago, replace a whole bunch of stuff that no longer makes sense in the current setting. Most of the references to the original Underground Mars setting have been eliminated, with only a few complicated ones remaining. In Friday's demo, you will still hear AOS’ voice mention ‘Mars’ at some point. Unfortunately due to a lack of time, we could not replace this in time. Just pretend AOS is confused a and needs her batteries recharged.
Weapon Updates
On to the guns! The DMR concept art is mostly finished, we’re planning to revise the purple ring a tad but that’s about it. We will begin modelling next month! Please let us know your thoughts.

The Plasma Rifle model has been completed! Here is a render:

Demo Faq
When the demo launches, we highly recommend joining our Discord server (discord.gg/qDvNcMmSee) in case you have a problem, want to let us know your thoughts or have any suggestions, that’s the perfect place to discuss it along with your fellow Patrons.
If you have any questions right now, comment it down below and I’ll get back to you as fast as I can.
Enjoy the demo everyone!
Q: When is the demo launching?
A: If you have signed the NDA, Steam Keys will be sent to your email on April 22.
Q: I have not received an NDA.
A: We have sent them to the email address that you provided to Patreon. If you have not received your NDA, please contact us at Contact@AlteredOrbitStudios.com
Q: Can I give my opinion on the demo publicly?
A: Absolutely. It is even encouraged! Tweet about it, tell your friends, let the world know your thoughts.
Q: How about footage?
A: You can share screenshots or video footage as long as the video is shorter than 30 seconds. We have many reasons for this, but it basically boils down to spoilers. We want players to have a fresh experience when the demo launches in June. Keep the clips as short as possible!
Q: So no livestreaming then?
A: Unfortunately not. But feel free to stream the moment the demo goes live in June!
Q: How about family-share? Can I have a friend play the game?
A: If the friend or family member is with you in the room and wants to play the demo on your system, then that’s fine. Sharing the demo over the internet however, would break the rules established in the NDA. Please keep the demo on your machine and on your machine only.
Q: Is this the same demo that goes public in June?
A: No, sort of. It will feature the same level except more features are complete and some additional polish has been added. Story-related content will be (mostly) absent in the Patreon Demo, but will be in the public June demo. Some story hints will be present, however.
Q: What can I expect from this demo?
A: The demo features the first level of the game, ‘Pathfinder Memorial’, albeit slightly altered for showcasing purposes (e.g some sections are made shorter or moved around). This version of the demo will be primarily a gameplay and world showcase. Expect lots of action, explosions and exploration.
Q: Do we get a taste of the story?
A: You get glimpses. It is mainly the dialog that is missing.
Q: I’m having framerate issues. Is performance final? What can I do?
A: Performance is not final and we expect the June build to have significant performance improvements. In case your framerate is low, it could be boiled down to a number of things. Ideally, it would be best to either join our Discord or email us about the issue so we can assist you. But in general, here are some things to try:
- Either reduce the resolution or reduce the ‘Quality Preset’ option. It is set to ‘High’ by default. With Selaco however, we feel like it’s a better choice to keep the graphics high and instead try to reduce the resolution to gain performance, since a low resolution can be considered aesthetically pleasing in a game like this; I often intentionally play on lower resolutions for the sake of it. If that does not work, reduce the graphical settings.
- Change the Graphics API from Vulkan to OpenGL. You can do so in the ‘Video’ menu.
- In case you only have frame drops in combat: Try reducing the Smoke and Particle quality settings.
Q: There's a micro-stutter from time to time. How come?
A: GZDoom caches sprites the moment they appear for the first time. For example, the first time an explosion occurs, there will be a very short hitch that only happens once. Some won't notice it, but others might, it really depends on the speed of the storage device Selaco is installed on. SSD users will have much less of a problem. Of course, this is not ideal and in a future version these things will be cached properly. This will make the loading times of a level slightly longer (which are already super short anyway!), but will at least ensure performance remains smooth. Just know that it is not your end, it’s on ours!
Q: Are accessibility options available?
A: Yes, you can find the Accessibility Options in the Options menu. Most features work, but Colour blindness is absent for the time being as it requires a bit more figuring out on our end.
Q: Gamepad/Controller support?
A: Not in this build. We expect this to be available in the June build of the game.
Q: The Wrist Computer has a couple of buttons that do not seem to work.
A: These are work in progress! The Wrist Computer is quite an advanced system that takes a good amount of time to pull off correctly, especially in this engine. We will try to get the Invasion Tier and Manual tabs working in time for June.
Q: Enemy seem to get stuck from time to time
A: This is a known issue. We will be fixing this.
Q: Why does Dawn look so happy in her mirror reflection?
A: Current player sprites are mostly a test. I expect them to be improved in an update somewhere in May.
Q: I do not like the HUD visor. Can it be disabled?
A: Of course! Go to Options -> Interface. You can disable a number of things here.
Q: Oh no, I have found a bug! What should I do?
A: Report them to us! It is encouraged to do this using Discord, but email is fine if that is your preferred method of communication.
Q: Can I run the demo without Steam?
A: After downloading it through Steam, you will be able to launch the demo without having Steam enabled.
Q: This game is difficult. I’m having a very hard time dealing with the enemies.
A: This could be related to the difficulty you have selected, but one thing we have noticed during playtests is that players are too aggressive starting out. This is absolutely a viable option, but requires more experience with the game. We highly recommend taking it slow at first. It is OK to stick closer to cover while you’re trying to get the hang of enemy behaviour. Once you feel more comfortable, start moving around a bit more. The skill ceiling in Selaco is higher than what most players expect and we’ve seen playtesters struggle at first and completely dominate the higher difficulties as they became more experienced.
Alternatively, there is no shame in dropping the difficulty down!
Q: I’m playing on the bonus ‘Selaco Must Fall’ difficulty that is described as being ‘intentionally unfair and unbalanced’, and I keep getting my ass kicked. This is nonsense.
A: That’s what you signed up for when clicking on that button!
Q: Why is the blood purple?
A: [The developer got frustrated and left the blog post]
2022-04-17 19:38:16 +0000 UTC
View Post

Good day, everyone!
Last blog post didn’t show much significant progress due to technical difficulties, but we’re fully operational again and we’ve managed to get back on track. There’s a lot to show here, so let's jump in.
This blog post is filled with GIFs. Remember that the mobile app for Patreon does not play these correctly.
Plasma Rifle Progress
Because of the demo announcement we’ve seen a significant rise in the amount of patrons (Thank you!), allowing us to move forward with the Plasma Rifle a little earlier than originally planned. The model is in the works and is almost finished. Here is what the model currently looks like.
We have shown the concept piece before, but here it is again for easy comparison!

And now for the model:




There are a couple things we are going to revise. After seeing the model, I am not quite fond of the scope. It looks too small and impractical, so we’re expanding it a bit, as well as getting rid of the tube that is also on the other side of the weapon; it’s only supposed to be on the left side.
I’m expecting the model to be finished before the next Patreon blog hits, so I’m looking forward to sharing the model!
Brand new weapon: DMR (Designated Marksman Rifle)
The Plasma Rifle was supposed to be the final weapon in the weapon roster, until we realized we have a severe lack of reliable long-range weapons in Selaco. Sure, the Roaring Cricket (Magnum) has pixel-perfect accuracy but does not have the ability to Zoom. The UC-36 Assault Rifle works, but the amount of kick and recoil makes it tricky. Railgun? Possible, but you don’t want to waste a powerful Railgun shot for a low-tier enemy who just happens to be far away. Our solution? Introducing a new semi-automatic weapon.
Before we begin our design process, we start discussing the weapon and the personality we want it to have. The key characteristics for this weapon are:
- Long range, so it needs a scope.
- Bullpup. We want to avoid similar silhouettes to the Assault Rifle, Nailgun and SMG, which all have their ammo containers in front of the gun. We lack a good bullpup, so that felt like a good direction to take for both readability and aesthetic purposes.
- Semi-Auto. It should not look like a machine gun.
- EXON style. The DMR comes from the same family as the UC-36 Assault Rifle and UC-11 Compact, so we needed visual similarities while also being unique.
From a gameplay perspective, the DMR can be compared to the Roaring Cricket Magnum. They are both semi-automatic weapons with high accuracy but share plenty of differences. As far as DPS is concerned, Roaring Cricket is the clear winner. However, the drawback with the Roaring Cricket is that it kicks like a mule which is a flaw the DMR doesn’t have. When dealing with a far-away enemy, every shot with the Cricket will kick so much that you would have to reacquire your target and line your weapon up all over again, which you do not have time for in the heat of battle. As of v0.30, the Rate of Fire of the Roaring Cricket has been decreased a notch as well, as players had a lot of trouble controlling that thing. The Rate of Fire limiter can be removed in a workshop.
The DMR, on the other hand, deals moderate damage and allows you to fire quickly with small amounts of recoil, on top of being able to zoom and having a bigger magazine. Use the Roaring Cricket if you need raw DPS, use the DMR if you need precision or want to easily pop some heads.
Let's talk about the visual design process. The first sketches are super rough and exist mainly to find a silhouette that works. Here are some sketches.
First sketches:

Second sketches:

Third sketches:

The weapon was slowly beginning to take form, but it still looked too much like an assault rifle.
Fourth sketches:

On the right track, even if the barrels are a tad bit too long.
Fifth sketches:

The team felt drawn to design E and leaned into it further.
Sixth sketches:

Detailing:

We favored B and started working on it. We are not entirely sure about the orange bits yet, we’ll see how that turns out when doing a proper render.
Mockup:
The next step is to make a simplified model in Blender and test the shapes in First Person Perspective. We do this because we’ve had plenty of scenarios in the past where a weapon looked fantastic as a standalone model, but fell flat when seen in the arms of Dawn in a first person perspective. The concept models are a great way to fix this.

In-game tests:
In-game testing versions are always super janky and rough, as these are just prototype versions to get a good feel of the weapon before we start making detailed concept art.. Sharing something like this takes some courage on my end but I’m faithful that our backers have a good understanding of either the development process or how rough first iterations can be.


We’re getting there, but I was not quite satisfied enough so we went back to the drawing table to make some tweaks. This is where I have to end this story with a cliffhanger, as we are still in the middle of the design process. Here is where we currently are and what we are going to iterate upon further:

Destructible Chairs
I promised this in our previous blog post! The chairs in ‘The Broken Seal’ can now be destroyed! As with most of our voxels, destruction is tier-based. This one has 4 stages of destruction.
GRRRRRR! I had to severely cut the video down for the sake of the GIF, so if you want a full version, here is the YouTube Version:
https://youtu.be/ocM-dseUIVo
Shorter version


Crawler Mines

Completed!
The Crawler Mines were a challenge for many different reasons. We have a small enemy type who always shows up in larger groups and they all explode when they get near to the player. How on earth do we make such an enemy fun to fight against!? Not only that, we also had to make sure everything was simple from a visual standpoint as readability must be maintained and we cannot have the framerate take too much of a hit from this many enemies.
Smaller enemies are infamous for not being interesting to fight, especially the ones who do nothing but walk towards you and jump to deal damage. Additionally, they are hard to hit! One such example is the Mechsect from Ion Fury, an enemy who has not been well received by many fans of the game. Encounters with the Mechsect gave you two choices:
- Do I waste ammo by shooting them?
- Do I use my melee weapon to kill them in a single hit and save up on ammo?
In almost every single case, melee was the go-to option and the game encouraged that strategy because the Mechsect would instantly explode from a melee hit while other weapons would require several bullets to bring them down, in a game where ammo is scarce to begin with unless you actively hunt for secrets.This takes choice away from the player and forces them to take the (in my opinion) least interesting approach. The enemies were simple, easy to dodge and easy to figure out. On paper, this is good game design, but good game design is not worth anything when it isn’t fun or gives any sort of satisfaction to the player. I never felt threatened, nor did their presence ever force me to take risks; I was safe behind cover and was only required to circle strafe endlessly until the threat was eliminated.
Of course, this is all based on my own opinion and experiences! I’m sure some enjoy this approach, but I personally prefer something more dynamic or tactical.
So, how did we make them fun? On the presentation side of the Crawler Mines, I am giving them tons of different animations, I animated 4 different walk cycles to show variety as they walk in large swarms and in order to prevent too much repetition and patterns, a whole bunch of pain reactions, multiple death animations and other context sensitive responses like having them flinch when a nearby Crawler Mines dies.


As for gameplay, there are a lot of ways to take them out. Shooting is the obvious one, and will often result in a small chain reaction where the destroyed Crawler Mine goes flying, lands on top of another Crawler Mine and kills them instantly. Some might explode when killed, eliminating another small cluster of Crawler Mines.
You can also punch them with the Quick Melee button right before they explode as a defensive option. If you’re lucky, the force of your melee swing sends them back towards the group and they explode. Or, shock them with the SMGs taser to stun a whole group at once, making them easy targets. Or freeze them with an Ice Grenade. There are many ways to take care of the Crawler Mines and on many occasions you are required to think on your feet as you have a limited window of opportunity to respond, especially on higher difficulties where they run ever so slightly faster.
One more fun option, for the sake of it! Shoot them with the Nailgun and pin them against the floor!
Currently, I am also looking into the ability to convert them if you manage to interact with one who has not been alerted, which turns them friendly and have them charge towards the enemy. But I am still unsure whether or not this will make it into the game.
Pizza
We have pizza boxes now! Opening them up is a coin toss. You could get a full pizza, it could be missing a slice, it could miss a bunch of slices, or, in case you are very unlucky, miss the entire pizza(!). Rest assured, the chance for an empty box is 2% which, upon recent realization, probably makes stumbling upon an empty box so much worse.

Voxels
Several new things are in the pipeline!
Buttons:

(Interactive) Fluorescent Lights

Pizza
Trashbag

Kitchen stuff



And a few more which we will keep as a surprise for now!
Conclusion
We’re back in full swing and making progress rapidly again. We are currently putting all of our efforts into the Demo to make sure that it’s great and makes you a proud backer of this project.
Once again I would like to thank everyone for sticking with us and continuing supporting this game! It means a lot and you are making our dreams come true. We won’t disappoint you <3
Wesley de Waart
2022-03-28 21:47:03 +0000 UTC
View Post

Hello beautiful Patrons!
Before we begin with this developer blog, I’d like to rip the band aid off right away as I promised to always be honest with all of you; the past 2 weeks have been slow and development went through a bit of a rough patch. I have been dealing with covid which thankfully did not make me feel very sick, but did make me feel exhausted and tired all day, making it very difficult for me to work on the game. On top of that, two of our artists are having technical problems (one has a broken drawing tablet, one has a broken laptop SSD), putting the concept art department in a full stop. I promised I would show some environmental art 2 weeks ago, but I am afraid that we will have to wait for a little while longer. My apologies.
Of course, this does not mean we have spent the last two weeks doing nothing! So let's begin.
(UPDATE 16-3-2022: Laptop problem has been solved! Work is resuming)
Time-lapse
(Apparently it is not possible to properly embed a video in a text-blog post...)
Mech Timelapse Video
Last week we showed completed renderings of our new enemy type, the Mech. Before we began the modeling process, I asked Arturo if he could record the entire process because I always felt like that would be a fun reward for our backers. It is 80 minutes long and plays at 8x speed, but if we made it any shorter, it would have been too hard to pick out the details. Feel free to skip certain sections and look for the parts that seem interesting. Alternatively, you can play it in the background and listen to that awesome Safe Room theme that Lawrence composed a while ago. Enjoy, I think it’s a very fun watch!
Aim Assist
For the players who prefer to play with a controller, I started working on an aim assist feature which will help you snap onto targets easier. This is needed because of how mobile the enemy is. It is still in a prototype stage so I can’t show it off yet, but know that I’m working on it! Hopefully I can get a basic implementation working before our Patreon Exclusive Demo begins.
Main Menu
The menus have been proven to be quite challenging. None of us like the default GZDoom menu as it is one bloated and outdated mess that still looks nearly identical to how it was 30 years ago. So we wanted to modernize it a little by rewriting the whole thing and come up with our very own menu system. This one is still far from being completed, but I’d love to show what it looks like so far.
This week, we’ve added some visual effects to the main menu by adding a 2D smoke and embers as an overlay, demonstrated in the GIF below. The artwork of Dawn shown here is a placeholder. The goal is to show key art of Selaco there, a nice overview of the city to familiarize the player with the setting straight from the get go.
(Upon making the GIF, I realized that it is very hard to notice in this format. Apologies)

Then we have the Difficulty Menu. This one looked awful in the early days. Here is a difference between the new one and the old one. I wanted to label which one is the old version and which one is the new version, but I think it should be obvious enough. The GIF compression does not do the smoke effects any favors however.

After selecting a difficulty, the screen fades to black and prompts you with 3 choices. This is an important one, as this choice has a huge impact on how you play the game.

(Very work in progress)
We’ve mentioned it before in the past, but I’ll briefly explain it again. Traditional Mode is the standard mode. You can save the game at any moment, your health regenerates up to 35 HP and automated checkpoints are enabled.
Hardcore Mode takes the ability to automatically save the game away from you and requires you to spend credits at a Gwyn Machine to save your progress. You can compare this to the original Resident Evil games where you had to use ink ribbons to save, which could deplete. Additionally, there are no checkpoints, no health regenerations, and some portions of the game have been altered to be more deadly. For example, touching a texture that has a spinning fan on it will not damage the player in traditional mode, as that would be too punishing. In Hardcore Mode however, touching the texture will damage or kill you. Some item placement will also be altered.
We have plans to show this prompt again when a Hardcore Player finishes the first level, allowing them to switch back to Traditional Mode if they feel like Hardcore Mode is not their cup of tea.
Randomizer Mode is something we will most likely not finish on release and will be added for free post-launch, probably between the release of Chapter 1 and Chapter 2. Randomizer Mode is one of our answers to replay value and will be unlocked after the player finished the game (a cheat can be used to unlock it right away). It’s a mode that turns the game into a chaotic mess by randomizing a whole bunch of stuff, like enemy placements, weapons, pickups and more. That room that used to have a Shotgun might now contain a Railgun. That small group of soldiers that spawn in that one area of the game might now consist of 2 large Juggernauts. That infamous area with the Juggernaut? It might now be guarded by a large Mech. Of course, in the background through the power of scripting, some things will still be controlled to ensure that the game is beatable and won’t just endlessly throw mechs at you. It may, however, still make your playthrough extremely difficult if it wants too, making the Randomizer Mode unpredictable but very fun.
Other screenshots of the menu:




New chairs!
In the last blog post I showed an image of The Broken Seal, a lovely little old-fashioned restaurant owned by a man who is nostalgic to the past, so made it look as earth-like as possible. We used plastic chairs as a placeholder because we didn't have any chairs that really blended well will the environment. Thankfully, we have Borion! He made a few new chairs that match the environment much better.



A third stage of destruction is WIP. Will show it in the next blog post!
Maintenance Areas
Not a lot that I want to share here as I strongly refuse to spoil too many environments post-launch, but I’m working on a new environment. We try to make sure that Selaco keeps switching things up as far as environments go, so we continue to make new tile sets. Say hello to the Maintenance Shafts, which you will frequently visit in the second level as you battle your way through the rooftops. They’re dark and unstable. As you traverse, lights will frequently snap as missiles and other explosives keep hitting Selaco. Just like The Broken Seal, the amount of sci-fi in this area is kept low, but it's still present in some areas!




Patreon Exclusive Demo
Still on track! If you are a $5+ backer, expect an email with more info to come your way very soon. This demo will feature the first level of the game, consisting of 3 segments which takes roughly 40 to 50 minutes to beat in total.
Conclusion
While level design and some of the back-end stuff have progressed very well, anything else has been a bit slow for the past two weeks. I am confident we will have some more things to show next time. We are currently working on an audio pass for the Crawler Mines, so I’ll show these off in action next week. We’re also going to spice up the death animations when killing enemies with a shotgun, so stay tuned for that as well!
I would like to thank everyone again for backing us! None of this would have been possible with you and we're really excited to hear your thoughts on the upcoming demo!
Wesley de Waart
2022-03-15 16:42:44 +0000 UTC
View Post

Almost one year of writing developer blogs and I am still a complete idiot when it comes to writing a good opening. So I’ll just drop something generic and move on to the fun stuff:
‘’Holy shit, has it been two weeks already?’’
Setting Change
The original idea for Selaco was to have it take place in a city located underneath the surface of Mars. This is an idea that I came up with in the early days when Selaco was still a Total Conversion mod for Doom II, a mod which was very much ‘’Doom 3 meets F.E.A.R.”. The similarities with Doom 3’s setting got a bit too obvious, and when Ken Coghlan (our writer) offered to write the story himself, he asked if he could change the setting into something else because he felt this underground city didn’t quite work with the story he wanted to write.
I declined. Mainly because at that time it was just the two of us and there was not enough manpower to suddenly change the entire setting of the game. After lots of thinking, I cannot help but feel like this whole underground thing does not quite work anymore. It’s hard to feel connected to something you cannot physically see in its entirety and it’s relatively restrictive from a design standpoint. I want to explore large and pretty open spaces but that’s hard to do when the entire game is essentially just a cave that humans have built a facility in. If the player is tasked to defend this place, the player should feel like it’s a place worth defending. The player should want Dawn to succeed, you want to see this place secure again. Currently, I do not feel like this has been achieved.
Arturo Pahua, who did environmental concept art for GhostRunner, is currently working on some sketches of the new setting. All ideas have been pitched and I’m fully confident that this is going to be a huge improvement for the game. Thankfully, we haven’t begun working on exteriors yet so this change should not slow down development too much. Existing maps will, for the most part, only need minor changes. Other than that, it’s mainly asset replacement and getting rid of all the Mars references. So, that's one of the things that we will be doing for the following week or two; asset replacement.
Stay tuned for more. Hopefully somewhere within the next 2 weeks.
Physical release / Big Box Release
The chances are becoming increasingly likely that this is going to happen, let's say that I am 90% sure. Things have been signed but I cannot confirm anything more right now. I will have to keep you guys waiting for just a little longer :(
WIP: New Level (OM_02A)
(The Broken Seal bar)
We started working on the second level of Selaco (mind you, more levels are already made. Levels are not made in chronological order). A large portion of Selaco takes place in environments where small to medium range combat takes centerstage, this level is spacious, large and open. The level features many different routes to take and allows the player to enter different buildings which all have their own small little story and environment going for it, which all interconnect to the main path. I think this will make for a great second level. The player has spent roughly an hour in the level prior to it and got used to the core mechanics by that point, so opening things up once you reach the second level is going to be fun. The first task the player receives is to visit Sal’s Bar, who owns a hidden workshop he and Dawn used to work in, before the invasion happened. It is here where the player is introduced to the Weapon Upgrade system. From this point on, ‘Weapon Parts’ can be found in the game world which is used as currency to upgrade your arsenal.
In the screenshot above is the ‘The Broken Seal’ bar. A bar that’s very back to basics as far as technology is concerned. There’s not a lot in the way of sci-fi here. Hell, The Broken Seal even refuses to use keycards so everything here is done with primitive traditional keys. I don't think most people living in Selaco even know how these work.
It’s a very fun change in environment and a breath of fresh air to both us and hopefully, the player. Something different for a couple of minutes before going back to full-on Sci Fi mode. Many assets have been made specifically for this section but the chairs are still going to get replaced with ones that suit the environment better. No worries!
Mech
The mech has been finished (Dawn for scale)! The next step is to apply a rig and begin animating this thing. Here are some renders.




Plasma Rifle
The concept art has been finished, complete with ammo pickup. Modeling will hopefully begin somewhere next month, as we’re taking a short break from modeling due to our monthly spending being a little higher than usual due to an art push.
In an older blog post we mentioned how we weren’t satisfied with the nailgun. Slower projectiles did not quite suit the weapon especially because it was supposed to be a weapon that pins enemies onto walls. After speeding up the projectiles and turning it into a semi-auto weapon, the whole gun felt much better than before. After this change however, we no longer had a slow projectile-based weapon so we needed to come up with something else.
Enter the Plasma Rifle! The addition of a Plasma Rifle suited us perfectly, especially because we needed a weapon that shares an ammo pool with the Railgun. Projectile speeds are roughly the same as in the original Doom game, but requires a bit more mastery to be utilized correctly because of how mobile most of our enemies are. The Plasma Rifle will shred armored enemies with ease (like the Mech we shared above!), and is certainly useful against lesser armored enemies as well, but their mobility requires you to lead your shots accordingly. It’s a short range beast, anything long range will be better suited for a different weapon.
Gwyn Menu rework
In one of our very first gameplay videos, we have shown a very poor attempt at a Gwyn Store menu (Selaco - A brand new upcoming GZDoom shooter). This was entirely done in a scripting language not made for user interfaces, called ACS. It was a painful endeavor to turn GZDoom’s Action Script into something that would produce a menu interface and it was an absolute nightmare to maintain. A fun hack, but an ugly one. Selaco was still going to be a free Doom mod by the time this was made and it was acceptable for it’s time. For a commercial project however, we had to opt for something that’s a little more high quality.
The Gwyn Menu is currently being rewritten entirely using our very own CockUI. It is still in its development stage, but it currently looks like this:

Gwyn is not a nice character. Her primary goal is to exploit customers with medicine that barely works, but her likeness, attractive appearance and the paranoia of people getting sick makes them an easy sell. For the UI, we wanted to go with something that resembles a scummy mobile game store. Something you would see in RAID: Shadow Legends, Cityville or many other Zynga games.
What are we currently working on?
- Finishing the Gwyn Menu
- Adding diving animations for our enemies so they can dodge grenades
- Rigging and animating the Mech
- Asset replacement
- Level design
- Music production
Conclusion
We continue to work hard on this game and it’s progressing rapidly. We hope to get the Patreon Demo available around the end of March, or at the very least early April. We’re still on track for March at our current pace!
See you all next week and thank you are usual! 💙
Wesley de Waart
2022-02-25 20:14:00 +0000 UTC
View Post
Good day everyone! The two blog posts that came before this we’re all about showing new ideas and concepts that we wanted to explore. For the past two weeks, we've been working on implementing said ideas and doing some general polish to the game. Before we dive in, it is important to know that this Blog Post has not been proofread by anybody in the team. I'm taking my chances with this one and I'm not afraid of the potential outcome. Lets go!
Reminder: Gifs do not load on the mobile app.
Mech Enemy type - High Poly
We’ve shown a rough sketch of the Mech a while ago and have continued working on it. Here is what the current high poly looks like


Paper Effects
One thing that I was never quite satisfied with in earlier testing builds, was the way how paper reacts to being shot. Our visual design rules have changed quite a fair bit over the years, so a poorly made 16x16 effect sprite would no longer cut it. It felt out of place compared to anything else in the world and it always felt jarring. I redid the sprite work and made the paper more realistic. It’s also completely interactive!
Behold, pieces of paper!

It doesn’t stop there though! We try to add as many simulations as we can when it comes to special effects and particles. Once pieces of paper have hit the floor, the footsteps of you and your enemy will kick it back up the air.

This was surprisingly challenging. Especially because you want to make sure that the frame rate does not tank once all kinds of particles are flying through the air in combat. With some clever clustering, I think I managed to achieve a look that looks both believable and performance friendly.
Engineer Rework
As mentioned in a previous blog post, we were forced to re-use our enemy models and color swap them in order to make them visually distinct. Now that we have a proper budget, we can make separate models for our enemy types. A WIP shot of the engineer was shown last time, but the model has been completed and is currently being rendered into the game!

Performance
As usual, we try to optimize GZDoom as much as we can to ensure that Selaco runs well on older hardware. Cockatrice has been diving into the engine and made a bunch of tweaks to how lights are handled.
On top of actors now being able to ‘sleep’ (which makes them ignore the tick system of the engine and thus saves a ton of CPU performance), we’ve also made it so that smaller lights no longer cast a shadow by default. For whatever reason, GZDoom makes it so that every light in the scene is attempting to calculate a shadowmap, regardless of whether not said light actually needs to. With our heavy emphasis on dynamic lights to fill the scenes, this quickly became an issue. We don't want 40 different small lights in a single area to cast a shadow, especially when there is simmply no benefit for it due to a lack of one-sided linedefs to even cast a shadow for, that’s insane! If you can’t see them, why spend precious hardware resources on it? The updated system makes it so that every light source smaller than 48 units automatically ignores shadow map calculations. On top of that, we have updated the editor to allow level designers to disable shadow maps manually from every light source.

We are not entirely sure why GZDoom does not allow level designers this kind of control, especially given how often GZDoom is considered to be ‘unoptimized’ by its users. Perhaps someone can elaborate in the comments.
Here is a framerate comparison between the current Pre-Demo test version and the most recent updated build.
Outdated build (Vanilla GZDoom. this version has no ‘Sleep’ function, outdated janky code and all lights cast shadows at all times):

New build (Selaco’s GZDoom. Added Sleep state for actors, optimized outdated code for improved performance, smaller lights no longer cast shadows):

The gains for this are massive!
Intermission Degradation

(Full resolution shown in our Discord Server. #Patreon-Showcase)
Some artwork of our hero. We have some fun ideas in regards to the Intermission Screen. Hopefully we can show that off in the next blog post!
Stats
We have added in-depth statistics that can be accessed from your wrist computer. The goal is to make it track as much as humanly possible. Want to know how many sandwiches you’ve eaten? How many light switches have you been pressing? Or maybe how often you made your character burp due to eating too much? It’s all here!
Here is what the stat screen (and the wrist computer in general) currently look like. All windows can be closed, resized, dragged around and what not. Just some GZDoom magic done by Cockatrice.
Mind you that this is very WIP. You might see some weird quirks or errors in the stats.
Conclusion
Solid progress on a number of things as usual! My goal for the upcoming two weeks is to further improve AI and do some mapping. Cockatrice is going to continue his on-going efforts to improve GZDoom as an engine and Wrist Computer, the artists will continue to kick all kinds of ass like they usually do. Things are going well! I'm very excited to see what everybody comes up with.
To close things off, here’s the Employee of the Month.

2022-02-11 00:08:27 +0000 UTC
View Post
Dev Blog - New stuff!
Good evening everyone! Last time we showed a bunch of rough sketches of new stuff that we are working on. We won’t have as much to show this week, but we can at least talk about some progress!
Crawler Mines
The Crawler Mines we talked about last week now have a 3D model and are rigged up in Blender ready to be animated. Which is where I am currently spending a lot of time on!
Crawler Mines will more often than not attack in large swarms and we do not want all Crawler Mines to share identical running cycles. To make a swarm look more intimidating, we are adding a buttload of death, walk and attack variations to ensure that you always see new animations in battle.
I’ve done some internal testing and while they are not presentable yet, I am confident that these enemies will be satisfying to kill. They will break in tiny pieces, they will cause chain reactions, they go flying as they explode and much more.
Here are some renders and animations. Mind you, some of these are work in progress.



Remember: Super WIP!

Plasma Rifle

Still in its concept art phase, but is now more developed. We still have to add proper texture and details onto the model but at least you can get a good idea of what the weapon will look like.
Mech

We showed this Mech last week. It is currently being modeled! Not much more to show for now unfortunately, but hopefully in 2 weeks! We are recording the entire process of its creation, so we will share a time-lapse when it’s done.
Burning Sprites

We have added the ability to burn enemies down. While we don’t have a flamethrower weapon, we do have other methods to light people on fire which I’m sure players will figure out once they get to play.
Silvia and I tag-teamed this one. I made a reference animation using Blender which was essentially just a silhouette or an Alien Model pretending to be on fire. I rendered 9 angles of this animation and sent them over to Silvia. She painted on top of it to make it look like they were burning. This is a fully 9-angled sprite similar to the one that is done in Blood, except more ‘cartoony’ looking to fit within our art style.
On top of that, additional particle and smoke effects are spawned in-game to make the effect more convincing. I’m happy with how they turned out! The only thing missing are the screaming of a burning character. Oh boy, I can’t wait to ask our VA to pretend to be on fire. That will be fun (and difficult).
Selective Biliniear Filtering

Bilinear filtering is one of the most basic features supported by early 3D hardware that is still used to this day. As everyone probably knows, GZDoom supports bilinear filtering. But if you are like me, and I feel the majority of doom players, using it for low resolution textures just looks terrible. That's why we all turn it off after downloading GZDoom.
From HandWiki:
"Bilinear filtering is a texture filtering method used to smooth textures when displayed larger or smaller than they actually are.
Most of the time, when drawing a textured shape on the screen, the texture is not displayed exactly as it is stored, without any distortion. Because of this, most pixels will end up needing to use a point on the texture that is "between" texels"
So, we know it makes our sprites and wall textures look like crap, so why do we want it? We want to use it for the UI!
Selaco is aiming to have a more modern UI experience that looks good on a variety of monitors and at different resolutions. Ideally we would want to be able to play the game from classic early-PC resolutions like 800x600 and go all the way up to 4K and beyond. At present our target display resolution is 1920x1080 as it is the most common screen resolution by far, and most of the UI experience is designed with that in mind.
To make the game support lower and higher resolutions than expected, we can reuse the same graphics made for 1920x1080 and move them around a bit, but at some point it becomes necessary to start scaling those graphics up or down in order to fit everything into the screen. If we don't use some sort of filtering, scaling the HUD or Menu graphics will start looking terrible.
This is where we run into problems with GZDoom. The engine does NOT support selective filtering. You either turn it on for EVERYTHING or nothing. The same filtering, or in terms of how the engine actually communicates with the hardware the same sampling method is used for everything that is drawn on screen. So we can't have our lovely low-resolution sprites and wall textures while also having scalable high resolution HUD and menu textures. GZDoom seems to have been designed, in regards to the HUD and menus, to take very low resolution graphics and scale them UP only. Which looks fine with no filtering at very specific scale intervals, but that's not how we want to do it.
The Fix
We have resisted actually modifying GZDoom itself for quite some time, but to solve this filtering problem it became necessary. It turns out it was actually pretty easy to add support for selective bilinear filtering when drawing 2D images in GZDoom.
GZDoom defines a number of texture samplers for OpenGL, OpenGLES and Vulkan that tell the texture drawing operations how to sample the texture as it is being drawn on screen.
(Sampling at its most basic level is just the method that the video card uses to determine what pixel from a texture (or "Texel") is to be assigned to a pixel on screen, or it's corresponding Fragment in the shader. With bilinear filtering (or the more advanced trilinear and anisotropic versions) the sampler will interpolate data between texels to come up with the final color for the fragment. However with point sampling (essentially the same thing as "no filter") when the image on screen ends up being larger or smaller than the source image, each pixel on screen ends up with the closest corresponding texel color with no smooth transition between them.)
All we had to do was define one additional sampler that always has bilinear turned on, and provide a flag to all drawing operations available to ZScript that tells you whether or not to use this new sampler or the existing ones based on user preference. The benefit is that now we can properly scale various UI elements on screen to fit the resolution without terrible artifacting. This is most noticeable when scaling the image DOWN, as small downscales with no filtering look significantly worse than the equivalent amount of upscaling with no filtering.
Before (Scaling down to 720p in current Pre-Demo build)
This is pixelated and not a pleasant look.

After (Scaling down to 720p in our current Development Build (hits the Pre-demo soon!))

As you can see there is a lot of improvement, however some small elements still don't scale down very well and that will be fixed eventually. You can see the poor scaling with the text on the Datapad count at the bottom left and the text in general. Some work is going to be done to make certain elements more readable and more scalable in time, but you can see how much the addition of bilinear filtering has improved the quality of scaling the UI.
Level Design
Still going strong. Level 3 (Starlight) is a long one and I’m currently working on the second sub-level of this area, called ‘The Factory’. It’s a large and interconnected map that is struggling to maintain a steady supply of power. It’s dark and you will have to rely on your flashlight in order to see clearly, which the Crawler Mines are not quite fond of.
I'm very excited for this map! I haven't done a dark atmospheric level in a while so this is a breathe of fresh air. It sort of feels like I'm mapping for Ominous again, which was how the project was called a few years ago when the focus was on being a horror experience.
Conclusion
Another productive 2-weeks! Hopefully with a bit of luck we have a full 3D model of the Plasma Rifle to show in the next blog post. Silvia is wrapping up the concept art then it will be sent to our 3D artist right away. On top of that, the Patreon Demo is shaping up very well and we’re still on track for a demo launch in Q1 2022.
We hope to see you again in our next blog post!
2022-01-27 20:07:00 +0000 UTC
View Post
No 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
2022-01-12 21:22:28 +0000 UTC
View Post

At the time of writing, we are one day away from entering the new year. 2021 has been quite an interesting year for me, maybe even one of the more interesting ones, given how the year has proven to be one of the most challenging years I ever had to put myself through. As is usually the case with game development, or any job really, there are plenty of things that could be improved. I would like to take a moment to look back and reflect on all of the things we have managed to do this year, both good and bad, and discuss how I would continue moving forward in 2022.
Patreon
We launched Patreon on April 2nd 2021. While it had a relatively slow start, nowadays I consider the Patreon to be successful, and I could not have been happier about that. Straight from day one the goal has always been to use 100% of the funds towards the development of Selaco, to pay the artists involved and ensure that things kept moving forward at all times. I never took any of the money for my own and will continue to do so. My share comes from the sales we get when releasing the game, which is partially done to encourage myself to actually release the game within a respectable time frame, but also because the team deserves it. Their insane amount of hard work surprises me to this day and the positive energy from everyone involved certainly shines through in this game.
I notice that I often go on and on about my thankfulness towards our patrons in each and every blog post, but that comes from a genuine place. I always wanted to use the funds to make the best possible game I can make, and all of you allow me to do so. All of you have put faith in me and I want to honor that. Thankfully, it won't be long until I get to showcase Selaco to all of our patrons. We are targeting a Q1 2022 release date for our demo which will feature 3 different levels, lasting roughly 40 minutes on a normal playthrough without collectible / secret hunting.
Additional Level Designer
One of the funding goals on Patreon was to get a new level designer on board once we hit the $2000. I assumed this would be do-able, but I quickly learned that that will not be the case. Given how “large” (for my standards) the team is, it is simply not enough to keep everyone well funded. I am raising the Patreon Goal to $2500 as I strongly believe that is a much more realistic goal.
The other goal of 35 million dollars a month remains the same, as I am confident that that is more than enough to warrant an additional couple of subway sandwiches.
During some of my spare time I have been searching the internet for a level designer, but as discussed in a previous post, it’s a tricky one to figure out. Mainly because I think Selaco has a unique style going for it which I have not yet seen replicated in the Doom Engine. Not because my level design is overly complex or anything, but I do try to put a lot of time and effort into the soundscapes and lighting. There are some crazy mappers out there, but finding one who can join me in making levels and environments that match the style of Selaco is not as easy as one might think.. It is not impossible however! I will find someone who fits and can join the team.
Wishlists
I put Selaco on Steam on April 16, 2021, 2 weeks after the Patreon launch. While I do not feel comfortable releasing exact numbers of how many wishlists we’ve got, I can confidently say that we are in a very good and comfortable spot for an indie developer. Especially given how it has not been more than a year since getting a store page up. I consider this number to go further up as we start handing our preview versions to a select few people in the media. Civvie11 and Gman both got to play a janky unfinished version (also known as the Pre-Demo) and provided me with their thoughts, but I’ll allow them to (hopefully!) share their thoughts themselves through a twitter post or a video in the near future.
Development
Phew, where to start. I definitely made some missteps here, mainly on the ‘mental’ side of things. Let's start with the good things first.
Holy shit did I learn a lot this year. After announcing the game at the end of 2020, a lot has changed for me. I always took Selaco seriously but never quite to this level. I never wanted to consider myself a ‘true’ game developer for some reason. Before announcing Selaco, seeing all the things other developers are making always made me feel inferior and intimidated. That feeling of being inferior still chews at me from time to time, but to a far lesser extent than last year. The indie field of game development has so much talent going for it that I never felt quite up to their level. I consider myself creative, but not that creative. I think I can create something that is fun to play, but nowhere near the level of <insert random talented developer here>. If anything I always considered myself painfully average which put an endless pile of doubt onto my faith with the project.
However, this year was the first time I actually felt like a hard working developer. I was more eager to learn than I ever was before and rather than feeling intimidated by fellow developers, I actually started feeling inspired by their work. As far as creativity is concerned, I think that part of my brain kicked into overdrive this year. The inspiration was everywhere and diving deeper into the world of indie developers has had a positive impact for me. A lot of fun ideas came to be and many other fun ideas are still on the backburner to be implemented at a later time for Selaco. I am much more confident than I ever was as far as the game is concerned and the kind words from our community managed to keep my mind in a mostly healthy place.
As for my workload this year, that has been quite a crazy thing. A bit too much, even. I have been doing social media & community management, game development, game directing, budgeting, advertising, networking, recruitment, voice directing and much more. While I don't consider ‘community management’ much of a job in my case, because talking with the community is a lot of fun and has resulted in quite a lot of laughs and interesting conversations. It is mainly Jason (aka Re-fund) who has been doing the hard part of community management. About the only thing I consider myself truly good at is the game development side of things; Like level / game design, coding / scripting. Everything else was new territory for me. New things frighten me. They always have. But being out there with Selaco and gaining a bigger audience than I could have ever wished for has forced me to become more skillful in things I have zero knowledge of. I can confidently say that I am proud of my achievements and I have absolutely grown further as a level and game designer on top of everything else. So far so good I guess, but if there is one thing I want to change moving into the next year, it’s reducing the workload to put more emphasis on the game because the side-effects of being far too busy wearing many different hats is eventually going to bite you.
Now for the bad part. While 2021 has been very productive and one gigantic learning experience for me, the mental aspect of game development has managed to negatively impact me in a lot of ways. I’ve mentioned it before, but university combined with full time game development was simply too much for me to handle and even now that I do this full time since I bailed on university, I still feel like I am not taking nearly enough breaks to ‘relax’. I go to bed at 4-5AM every day because I simply try to get an unreasonable amount of things done each day, just to wake up relatively early to make sure everything remains on track as far as Selaco is concerned. Combined with the pandemic that prevents me from doing the things I used to do, like visiting the gym (which I used to do for 3 years straight but currently all of the gyms in The Netherlands are closed and will continue to be so), I’ve fallen into the habit of “laziness”. While I used to be outgoing and active, I currently live in my bedroom, staring at the same 4 walls over a year, sitting on the same office chair and having very limited physical exercise. I’ve noticed that I have become increasingly tired every day and never felt quite as energized as I used to be. I know I am not alone with this, as I have heard similar stories from many other people who are dealing with this pandemic.
I want to get my habits back under control. I want to be more strict about my working hours and get proper daily exercise in 2022 to get my mental state back in a healthy spot. Besides, my weekly subway meals have to feel earned!
The game
Oh yeah, I got sidetracked there. Let's get back to Selaco for a bit and talk about the game itself!
The game is steadily progressing at a faster pace than ever before, not just because of me, but mostly because of the team’s efforts! While I do want to bombard this blog post with work in progress screenshots, that will have to wait for the time being. There’s lots of blockouts going on and most of the maps are nowhere near finished as they are currently in their detailing pass. Map development is part of my responsibility with this game and there are a lot of ideas currently being worked on. Which includes an all new enemy type who does not bleed purple (HINT HINT!), and levels that are very different in tone compared to other levels in the game. I think, as far as variety is concerned, you will have nothing to worry about. I know most of the levels shown on promotional material are blue in color tones with many tight hallways, but I can assure you that not the entire game will be like this. There will be exteriors, there will be larger areas, there will be different colors and the entire game will not revolve around moving from shooting gallery to the next.
Pre-demo tests with our Admirals have proven to be highly effective. We have been actively reworking a lot of our systems based on the feedback we have received, so that the Patron Demo that goes live early next year is as polished as possible. This includes a brand new Objective display, reworked object manipulation, reworked melee, weapon rebalancing and a few other things.
A lot went right, but if there is one thing I want to improve upon, it’s the ‘directing’ side of things. Currently, I am very involved with each and every creative process. I often talk for hours on end with the artists about what they are working on so I actively provide feedback, provide instructions and bounce ideas back and forth. While very effective, this is a massive time-sink. I think that currently the artists involved with Selaco have a good idea of our ‘art design rules’, allowing them to do things without having me watch over their shoulder as much. I will make sure that everything goes well, but I want to keep it to a minimum. It has become very apparent this year that the team knows what they are doing and I should put more faith into their involvement. It is long overdue anyway, they are amazing and a bunch of wizards.
Conclusion
Am I forgetting anything? I’m sure I am, there’s a lot to unpack when it comes to reflecting on a full year of development, but not all of them are as interesting to write in a blog post. The main takeaway from all of this is that I have to streamline the game’s development process. Get more work done in less time so I have more time available to do things that are not related to work. To relax, watch a movie, play a video game or do some physical exercise.
To anyone out there who has been through a burn-out before, I’m sure you know what I mean. We all want to keep growing, we all feel like we have something to prove to the world and we will stop at nothing to succeed. I get that. I know that I am in no position to tell anyone how to do their job because I have made hundreds of fuck-ups myself, but with another year ahead of us while a pandemic is still out there, all I can hope for is for no one to make the mistake that I made. I have never felt more productive yet emotionally drained than I ever have this year and it all boils down to not allowing myself to take breaks. Being passionate is good but it should never come at such a cost.
I know exactly what I have to work on and I am committed to getting myself back on track.
Happy new year everyone,
Wesley de Waart
2021-12-30 20:28:16 +0000 UTC
View Post

We are late, very late. Sorry about that! We’ve been super hard at work to revise a lot of older systems. So allow me to talk / show about some of the things we are working on! If you are on mobile, an imgur link to all the gifs can be found at the bottom of this post.
Patreon Demo release date
We are targeting Q1 2022 for the Patreon Demo, which features 3 levels. ''Prologue'', ''Pathfinder'' and ''Lockdown''. Currently we are doing tests with our Admiral Tiers and the results have been amazing. We've done a form which gave us a total of 40 submissions, all of which saying that they really liked it.
We have received some useful feedback as some things weren't quite on-par with the rest of the game. Slidings being a broken was a big one. Thankfully, all of the critiques we got are "easily" fixable, so we're getting all these out of the way first!
Grenade Launcher

WIP screenshot. Screens are missing
I did some tests and came to the conclusion that it needs a small revision. The weapon looks great, but the screen came out bigger than I thought it would, so we are going to revise that. On top of that, I think it could go with some additional detailing.
Interactivity
We have added all new interaction prompts which we had shown off in our last blog post, but we also rewrote how the pickup & throw system works. It’s a lot like in Half Life 2 where you can pick up objects and toss them around. Useful for puzzle solving, adds immersion and allows players to reach areas you could otherwise not reach. We’ve seen some very creative use with this system in the Pre-Demo tests that we’ve been doing. One player could not find a secret so instead stacked a bunch of objects to climb through the window on the other side. This was unintentional in level design, but it works, and that’s awesome! Can’t wait to see all the exploits and tricks people are going to come up with! There's already a trick to skip an entire battle in the upcoming Patreon Demo, but I don't want to spoil that!
Gasmask

The third level of Selaco forces Dawn into a very dangerous area, one that is not hit by the alien invasion, but contains a completely different threat! It is not likely that we will show this one off in any of our marketing material or in Patreon Blog posts. I strongly believe things are more effective when they are fresh.
New Voxels
We’ve added a whole bunch of new voxels to Selaco. Here are a few of them! And yes, they are all destructible!





So many props! What's not to love here. Having all this stuff to work with makes decorating the environments so much easier. Keeping everything interactable also helps make everything feel more grounded.
New enemy type: Enforcers

We are working on two enemy types right now. One of which is a big spoiler, the other we can show! Meet The Enforcers. Highly tactical, aggressive and far more trained than any of the other enemies you will encounter. We will discuss these guys in a later blog post!
Challenge Overhaul


Selaco uses an in-game challenge system. These aren't quite the same as achievements (which we might also add at some point!), these are simply repeatable challenges that are given to the player for doing things. Killing enemies, finding items, discovering secrets, reading datapads etc. There's a lot we reward curious players for, while not making it mandatory. Selaco can be completed just fine by ignoring challenges completely, but they will make life easier on higher difficulties. Why? Let me explain!
Completing challenges gives you credits, credits are spend on Gwyn machines for either health, a permanent upgrade called the ''Awareness Booster'' which shows radius circles around secrets you have been near to to make them easier to find, or to purchase Save Games (Hardcore Mode only). Workshops allow you to use credits to buy ammo and armor. Of course, these are scattered around the world as well, but the Workshop allows you to stock up on ammo for your favorite weapon or carry around a little more than usual just to be safe.
We are currently overhauling this system because the last implementation was very outdated. It did not scale, it looked ugly and was poorly coded. It will now use the almighty CockUI! Which looks much better than the ACS Implementation I made almost 3 years ago.
Magazine Sketches

We're working on a large quantity of different magazine voxels for Selaco which will be ongoing throughout development. It's a fun way of worldbuilding. As soon as these are all finished, they will be projected onto a voxel model. I'll share a table turn once that time comes!
Conclusion
That's all we got for now! Apologies that it is taking so long for us to show a working Grenade Launcher. As stated in a previous blog post, it's a complex weapon to work on and combined with the many other things we have in the pipeline right now, we cannot put all of our efforts into it.
I'll make sure to get another blog post out before new years, but we will probably not see each other again until after Christmas. With that said, I wish you all a Merry Christmas! Here are some Dawn stickers!



As usual, I cannot thank you enough for your pledge! We hope to see you again in the next blog post!
(Using mobile? Use this link to see the gifs!)
Wesley de Waart
2021-12-16 17:58:30 +0000 UTC
View Post

Just a little heads up:
For those of you who are planning on pledging for the entire year, the annual feature has now been added, which allows you to pledge for the entire year at a 15% discount.
Basically, the fluctuating number of Patrons each month makes it very hard to make decisions from a budgeting perspective. The Annual Subscription System saves you some money while giving our little indie studio more financial stability. It's a win-win to those who are planning to stick with us for the long haul!
This also makes you eligible for all of our Patreon Merch from the get-go. However, you will still have to wait 3 months per item. We don't make the rules on that one unfortunately. If it were up to us, you would be getting all of that and more!
If you prefer to use the current method, that's fine too. Nothing will change on your end, but I figured it might be a nice addition for those who are interested.

Kind regards,
Wesley de Waart
2021-12-02 20:02:36 +0000 UTC
View Post

[Practice drawing of Dawn]
This will be a short blog post, apologies for that! We've been hard at work on a lot of things, but most of it is not quite ready to be shown off yet. But I do want to provide some updates on a couple of things!
I know I say this all the time, but remember that GIFS do not load on the mobile app.
Life update
Let's start with the big one then, at least for me! In the past there were multiple things preventing me from working full time on Selaco. University played a huge part in that. I kept having to balance things out and it wasn't quite working out for me. My efforts towards college have been an all-time low because my passion is simply not there anymore. Selaco is something I am very passionate about, it's a project I fully believe in, something I want to actually realize. I have made the decision to put my college on-hold and drop out for the time being, allowing me to work fulltime on this dream project of mine; Selaco.
For you, as a backer and (hopefully) fan of Selaco, this means that the game will take a good jump in quality and gameplay length as I no longer have too many distractions preventing me from working on this. There have been plenty of occasions where I could not do something awesome for the game due to a lack of time. I often found myself going back to level design while completely abandoning an awesome gameplay idea that I’ve had. This also means I can spend some additional time to get my sanity back. The last couple of months have been rough because I was juggling around too many things at once. It became unhealthy and became a constant source of headaches as I have explained in an older blog post. Hopefully these days are behind me now. Let's turn Selaco into the best game we can possibly make, together with you guys!
Level Progress

Here is a fun little progress picture! This is the difference between a block-out and a detail pass.
We have been hard at work with level 3 which is not a level we want to talk about for the time being. It's a mysterious one, one that switches things up a bit as Selaco is not going to be a non-stop action shooter against the same bad guys all the time - no matter how good the combat loop is, eventually you want to switch things up for just a little while to make it fresh again. Same applies to environmental art, we still try to give every level it’s own visual style, along with a completely unique texture set. That door you once saw in the first level will most likely never be used again in a later level. It keeps things fresh! Finishing a level should always feel like a breath of fresh air.
Grenade Launcher
Model is in the works! Last week I showed the concept art, today I can show you the 3D model. Keep in mind that textures have not yet been applied!



Context-Sensitive Interaction Popups
The name is a work in progress. But we’ve changed how GZDoom detects interactable objects and allows it to display information next to the crosshair, kind of like an im-sim game. If you, for example, approach a keyboard, a prompt will pop up to explain what will happen if you interact with it. See the GIF below for a short demonstration!

Conclusion
I know it’s a short one, sorry about that! Patreon is a great platform but once you start working on areas you don't want to spoil it becomes a little hard to talk about things and make lengthy blog posts. I don't want to be annoyingly vague, I don't want to spoil the entire game before we get to release, so I think it’s best to just keep the blog post a little shorter than usual. If you have a fun idea that you want us to talk about in the next blog post, let me know! I am not much of a writer so coming up with things is hard for me. I’d love to dive deep into certain mechanics but I need to know what people would like to read first!
For now, Believe me that we are all working on some awesome stuff! I’m sure you’ll see why when you get to play Selaco in the future! Hopefully we are done soon so we can get back to making stuff we can share with you guys.
As usual, I cannot thank all of you enough for sticking around on Patreon. We are in a very fortunate position because of all of you and we hope that once we release the game, you look at it with pride. You allowed us to make this game, you allowed us to make this awesome. And, hopefully, you also made it possible for us to create something memorable!
See you all soon!
(P.S: Tier 2 patrons, remember that we have a Showcase channel on our Discord Server! We use it to show tons of behind the scenes stuff.)
2021-11-30 20:35:19 +0000 UTC
View Post
New update!
There are some minor spoilers in the gifs below. They don't spoil much, but it does show some (concept) artwork from the prologue and contains 2 screenshots of a later level.
New Weapon: Grenade Launcher [Concept art]

Info
Say hello to the MGL-II! This is Sal's second attempt at creating a hi-tech grenade launcher (The first attempt ironically kept exploding). Dawn and Sal have always had their suspicions about how ACE are running things as the two of them have been thoroughly investigating the whole thing for years. Now that Dawn is a captain at the ACE Security Force, she is getting closer to the truth and is in more danger than ever. If the occasion would ever arise where the two of them would have to fight against the most powerful organisation of Selaco, they’d better gear up and make preparations. This Grenade Launcher should function as a great way for Dawn to keep a crowd under control by using either lethal or (incase of civilians) non-lethal grenades. In case things get really out of hand, Frag, Ice or Acid bombs can be used.
The MGL-II supports multiple different grenade types which can be swapped out using Alt Fire. This weapon will be introduced relatively early on in the game, but more powerful / advanced grenade types will be introduced later on, which will be a common theme in Selaco. New toys will be given all the time and the grenade launcher is no exception. Let's talk about the grenade types!
Grenade Types
- Fragmentation. This is the most common ammo type and will appear frequently as an ammo pickup. Almost identical to the hand grenades; the physics are similar and the damage output is the same. However, the explosive radius has been reduced and the detonation timer is much faster. Grenades don't explode on contact by default so you will have to time them properly.
- Ice. Average radius and deals no damage, but applies different effects depending on the enemy type. Lower-tier enemies will get frozen in place and will be unable to move (and shatter in a single blow from your weapon!). For Higher Tier enemies it functions as an immobilizer; Juggernauts will get their firing rate reduced and lose their ability to jump and dash, Siegers will permanently lose their ability to fly (hit them high in the air to make them drop to their death!), Sentry Turrets get stuck and become easier to hack and so on. This grenade type goes deep and does a lot more than you might expect, so experiment with this one! On higher difficulties the Ice Grenades become a near-essential part of your toolkit.
- Acid. Pure pain. This turns the MGL-II into a weapon of mass destruction. Large radius and the highest damage output out of all the guns in your arsenal. In case the enemy does somehow survive the initial explosion, the acid clouds will apply a damage overtime effect, hurting them further until nothing but their bones remain. This is a rare ammo type so use sparingly!
Like all other guns in Selaco, the MGL-II can be upgraded in a workshop. ‘Explode on Contact’ will make grenades explode whenever it hits an object that isn’t a wall. ‘Increase Radius’ increases the radius of an explosion, ‘Mini-clusters’ will spawn additional tiny bombs after the initial explosion.
Can be upgraded to be made more powerful. Including ''Explode on contact'', ''Increase Radius'' and ''Mini-clusters''. Hold Alt Fire for 1.5 seconds to engage Panic Mode, where all remaining grenades are fired within a second around a 90 degree arc.
This is probably the most technically complex weapon we are working on. Lots of overlay trickery and 3 different ammo types to implement and worry about. The grenade types are currently implemented and the 3D model is currently being made.
A*-Pathfinding

The original Doom engine is a very fast engine, and it had to be! Graphics like these were hard to pull off in the early 90’s so compromises had to be made in order to make it work. Doom’s so-called “A_CHASE” method relies a lot on randomization and luck in order to find the player. It’s fast, it’s efficient and in most cases it gets the job done nicely. Actors will face you (even through the walls!) and rotate around 45 degree angles to reach you. If they can't reach you, they will try many different angles until they finally manage to get close.
Pathfinding for Doom has been relatively effective back in the day but for today’s standards these can be lackluster.
Selaco puts a heavy emphasis on AI, it’s where the meat and potatoes of our combat is. We felt the need to improve upon this by implementing our very own pathfinding algorithm while keeping some of Doom’s DNA intact.
The A*-Pathfinding system we currently use ensures that enemies will try to take the shortest route towards the player. This is achieved by placing so-called ‘Path Nodes’ in the level. After a level is loaded, these path nodes are connected with each other to serve as a database for each and every path the AI can take to reach a certain location. When a soldier tries to chase you, they will check for each possible route and chase you down. In case multiple soldiers are chasing you, they will often take ‘second best’ or ‘third best’ approaches which increases the likelihood of being flanked. We’ve done some tests using this system and the combat is cranked up to 11 because of it. You can no longer safely hang back and take your time because A_CHASE was struggling to reach you.
A_CHASE is still being used to some extent to add some randomization to the paths they take; making them ever so unpredictable. The A* Implementation is used to assist them.
This change will be added to the Pre-demo soon, so if you are an Admiral, you can help us improve this system!
It’s a hard thing to show on video, but I’ll see if I can upload an impromptu video to show the differences at a later time!
Timelapse
[If you cannot see the GIFS correctly, refer to the imgur link at the bottom of this post.]

Here are two time lapses of how Selaco’s artwork is created. We often make bits and pieces using 3D Software then use these models as a drawing reference. This allows for assets to be fully consistent. Illustrated above are the ACE Ships evacuating a large portion of humanity, and a younger Dawn arriving at her (shitty) apartment in Selaco.
[If you are on mobile, click here to load the GIFS in Imgur]
Conclusion
It’s a shorter blog than usual. Most of this has to do with the fact that we started working on the later levels of Selaco which we are hesitant to show off. We want Selaco to be fresh when we release, hence why we only really showed the first few areas of the game. Here are 2 work in progress screenshots of Level 3-3 (Full Bloom Florals), the facility responsible for replicating Earth’s plant life. 

Thank you for your continuous support! We hope to see you again for our next blog post. If you are a Tier 2+ Patreon, I’ll be making an additional blog post this week with some early concept art of the Grenade Launcher.
Much love,
Wesley de Waart
2021-11-16 20:21:32 +0000 UTC
View Post

What would a First Person Shooter be without some awesome weapons? Selaco being a sci-fi shooter leaves tons of room for experimentation and we certainly make good use of that. In this bi-weekly blog post, we dive deeper into how weapon designs are made.
Before we begin with a new gun, we start with the obvious: an idea. Coming up with a fun idea is, in many ways, the easy part. Sit down, close your eyes and give yourself 10 seconds to come up with a weapon design. You most likely came up with something that looks great, didnt you? It’s easy! Imagining things is easy. Now, try to take this weapon you just pictured in your brain and turn it into an actual gun that you can physically look at. Draw it out on paper, or model it in 3D. Suddenly it becomes much harder, because you either don't know how to draw, or the idea you always had in your head ends up not looking nearly as good as you thought it would.
And that’s not everything. This awesome idea of yours also needs to work within the game. Did you come up with a 50-barreled rocket launcher? Awesome, but does it work in Selaco? Most likely not. Did you come up with an assault rifle? Cool, but what can we add to that assault rifle to make it unique and different compared to the other assault rifle in the game? We try to make a roster where every weapon in the game has a purpose in your arsenal. We don't want to add 5 different assault rifles, 3 shotguns and 35 Bazookas. We want a right weapon arsenal where each gun serves a purpose without becoming too situational. Ideas are easy, being clever with an idea is (in most cases) not.
For this example, I’ll be mostly referring to the Nailgun, one of my favorite guns in Selaco right now. The idea began simple: ‘’We need something like Doom’s plasma rifle. A projectile based weapon that deals more damage than the machinegun, but uses slow moving projectiles as a trade-off’’. This is not unheard of in first person shooters, so coming up with a gun like this was a no-brainer. We love F.E.A.R., it’s our main source of inspiration, and that game uses a Nail Gun to good effect. It’s not much of a projectile weapon there, but maybe we could turn it into one. And thus the addition of a nail gun was considered!

The next step is to do prototyping. This stage is fun! Mainly because you get to goof around and try weird stuff before settling in with a final idea. I am very visually oriented, so I always need something to look at. Solution? Rip a gun from another game and use that as a placeholder. I always liked Quake 4’s nailgun, so I decided to use that.
The original intent was to have a nail gun that shoots blue crystalized shards (shown in the GIF). It’s a gun our Sieger Enemy type uses, so we experimented with that here. We thought it would be a cool idea if killing a Sieger would drop his gun for you to use, but eventually, things changed and the decision was made to turn it into a weaponised tool. A nail gun used for construction, but heavily modified by Sal (Dawn’s friend) to become a powerful weapon to use in combat.
Up next is the concept art stage. This is, without a doubt, my least favorite part because it makes me anxious. I like all of our weapons and I don’t want to work on a gun that is not as good as the other guns. The community has many expectations and we have to meet those. I explain my ideas to the concept artist (who will be named Silvia from here on out!) where I try to explain ‘the idea’ that I came up with as best as possible.
Silvia is a very stubborn concept artist (in all the good ways!). She is more than capable of coming up with ideas that are far better than mine and, in many cases, we end up with something completely different from what I had originally intended. After discussing things, she starts making some shapes and sends them my way.

This is where the anxiety kicks in for me. Weapons are crucial in this game. Selaco is all about firepower and feeling like an action hero, so we need something that looks powerful. Given how strong the Nailgun was going to be, we had to properly reflect this. What I wanted was a hybrid between c2 and c3. So that’s what we started working with from that point on. Try to merge the two together and come up with different designs that resemble it closely.

Now we are getting somewhere! All of these guns look great and making a decision did not get any easier. I felt drawn to C2, but felt it was too beefy. So we took that design and started sketching.
Now I started to feel like it was becoming too small and compact, so I asked Silvia for a quick perspective view of the weapon to give me a better idea of how the gun might end up looking when you see it in 3D space. This made a huge difference for me, the thing was beefier than I thought and I loved it!

A huge part of the identity of a weapon is the color it is using. Most of our weapon roster ranges from black to grey because most of them are branded from a fictional weapons company named ‘EXON’. The Nail Gun on the other hand, is a heavily modified construction tool from Sal. We needed the weapon to have a completely different color palette to reflect that. The Nailgun gets acquired later in the game, so the sudden jump in color might be appealing. It feels fresh. The choice to go for Yellow was quickly made. It gives the weapon that construction tool feeling, wouldn’t you agree?
With a color in place, we start making the final few touches of the sketch. This is where we start to lock-in an actual design and start polishing it up.
And now the Nail Gun is taking shape! The design is mostly final and from here on out we start making tiny tweaks until it is perfect.

Here, Silvia is going to create a quick reference model. These are made to get a good idea of the proportions. This model is also used by our 3D Artist, John Lloyd, who uses this model to ensure that all the details are correct when making the polished 3D model that is used ingame.

We take this render and start drawing on top of it.

Polish it up and do a cleanup.
Add the details

And here it is! The final iteration of the weapon. Complete and ready to be modelled properly. Now we send everything we have to our 3D Artist, John Lloyd, and start turning it into an actual gun that can be used in the game.

With the 3D model made, we start adding it into Blender, pose it, animate it (see the Animation blog post for how we do that!) and add it into the game.

And that’s how the nailgun is made! I cannot understate the importance of a concept artist. Being able to bounce ideas back and forth to come up with something awesome is a very fun, collaborative process. This is the first weapon we made using this approach and I think it shows. It quickly became a favorite for many of us and for a good reason. It packs a punch, it looks cool and it has a clear purpose to exist within the player’s arsenal; a damage dealer that requires mastering in order to be effective because enemies will try their hardest to not get shot by projectiles!
We hope you enjoyed this blog post about weapon design. Wrapping these weapon projects up is always a highlight for me when working on this game. It is one huge collaborative effort and the quality at the end speaks for itself, I think. As someone who is not easily pleased when it comes to adding stuff to Selaco, new weapons constantly fill me with joy.
Currently, we are working on a Modular Grenade Launcher (MGL!). We will show you that as soon as we can!
With the month almost being over, we hope to see you again next month. If not, thank you so much for pledging and supporting our work <3
Wesley de Waart
2021-10-31 23:15:58 +0000 UTC
View Post
(This is a quick impromptu blog post. A regular blog post will be posted tomorrow, where we dive deep into how we created our guns!)
The Pre-Demo Test has just been pushed onto Steam for our Admiral Tier backers! If it is not downloading for you, restart your Steam client.
A while ago we have sent Steam Keys to each and every Admiral Tier patron. If you did not receive a code, please message us over at contact@alteredorbitstudios.com!
Remember that you are allowed to give your impressions on the Pre-Demo Test publicly and let everyone know how much you liked or disliked it, but please do not share any footage! There is too much that is still subject to change or unfinished, or in a worse case, a placeholder from our modding days.
Heads up:
If the following problems are occurring:
- Green crosshair...
- Console riddled with errors (You can check by pressing (~) in the menu)...
- Excessive headbobbing...
- Tiny Dawn, the camera height being below a desk...
...That means a certain file is not loaded correctly, resulting in gameplay that is nowhere near intended. Let us know in if this is the case so we can help you out!
I would like to thank everyone who backed us for making this all possible. Thank you so much!
2021-10-29 18:32:54 +0000 UTC
View Post