Home Artists Posts Import Register

Content


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

Comments

Anonymous

Congrats to ReformedJoe! Those maps already look fantastic.

Anonymous

Seeing these new maps made me happy. Definitely a good addition to the team.