Noirmancer June update: Lucky Horseshoe

Published on 2025-06-09 by DistractedMOSFET

Time for an obligatory monthly update for my mind-erasing stealth game Noirmancer. In this blog post I ramble a bit about what I've been working on in the past month, and some thoughts about level shape. If you don't feel like reading, a TL;DR is that horse-shoe = good and that I'm still on pace to hopefully have a demo out in late July or early August.

A cropped image from the cover of Sly Cooper, a PS2 game about a thief, where a horseshoe can be seen on the protagonist's backpack Where do you keep your lucky horseshoe?

Dopamine Economy In Crisis

Sadly, I have no funny moving pictures to show you for this month. Apologies for the shortfall in your projected dopamine activation. This isn't going to be the most gripping update but hopefully July's one will see your brain engagement juices skyrocket, so look out for that.

Let's get the boring stuff out of the way: I reworked some guard AI search point selection to remove some manual work from me and also improve it generally. I did some performance work that I had procrastinated. Specifically tooling stuff related to merging a bunch of level geometry brushes to reduce the number of draw calls. I just wanted to check that it would work out the way I hoped so that I can go forward with making levels with the knowledge that that should be all good. I also upgraded the version of Godot I was using. This conveniently solved a crash I occasionally was encountering right around the time of the last blog post.

Story Time

After doing that, I spent quite a while working on writing stuff, mostly being creatively blocked on writing stuff specifically. I had procrastinated a lot of writing decisions in favour of focusing on general game-play up to this point. I had many ideas but not that much concrete, but I've settled on a goal for the story now. It may change later, but I'm optimistic and it gives me something to go forward with. This was important as part of starting the design for upcoming public demo level; I needed to know what story the demo was going to tell.

Finding that story was also key to solving a game-play problem: I want the player to have more abilities during the course of the game rather than just dumping them all on the player immediately. Which means less game-play ideas to design the level with, and there's a concern about there not being enough variety in the level.

My solution to this is to have some unique objects with some unique effects in this level, related to its story. It both helps make the level more distinct generally and can help with the shortfall in player options created by the lower number of abilities.

And no, I won't be spoiling the story for now. Sorry :)

Level Shape

With my level's story and game-play identity decided, next I needed to define the geometric identity. This is often called a parti. I don't know if the parti of a level is really noticeable to the player, but in the worst case it's at least a helpful tool for the designer; it gives you something to fill in. And while I'm not sure players can really identify the parti, I suspect they'd realize if your levels all have the same shape. So it's good to make sure you use a different one each time.

At first I kinda wanted to do a ring-shaped building and you emerged in the court yard in the middle at the start. This design means I can spread some ingress points around the player's starting location and give them very different angles of attack for them to discover and choose from. But, since this level is a key early level, and meant for this public demo, I kinda want to give the player a cityscape vista, so I decided to break the ring shape, producing something more like a horseshoe.

Now, horseshoe shapes are NOT uncommon in level design. Here's E1M1 of Doom.

An isometric view of Doom's E1M1 Thanks to Doomer GCP for the isometric map

Here's E1M1 of Quake. A 3d view of Quake's E1M1 Taken from the models resource

I noticed a familiar shape in the first level of Thief 2 last time I played it.

A screenshot of the map screen from Thief 2's first level

John Romero has talked a bit about the Horseshoe before. My usage of the horse-shoe is a little different though. I think the reason why it works well often for first levels is that it's basically as simple as possible without being boring; it's a line, but a curved one. So you don't feel like you're just walking down a line. It's easy to position some little tangents coming off it, easy to allow you to see the start of the level from the end which is always a strong feature in level design. But I'm using it for the previous mentioned goal of surrounding the player different ways to get inside.

I'm enjoying getting to play around with breaking symmetry. Symmetry is very normal in many of the large buildings I look at for architectural reference but it can also be very boring. The obvious tricks are about having symmetry but avoid homogeneity; use a broadly symmetric shape but fill that shape with extremely different components, or subdivide them in different ways.

The Next Month

So, at this point I have the core ideas for the demo and have the rough shape of the level blocked out in the editor. I'm now going through and breaking it up into smaller rooms and thinking of the game-play ideas to fill them with. Sadly, the ideation process has gone slower than my last time making a level, I think a large reason is that I simply feel a lot more pressure for this one to be good. The July target still seems doable though.

Follow along

Wishlist the game on Steam. You can follow this project via RSS (Don't know RSS?), or by following me on Mastodon. And of course feel free to contact me via email, or Mastodon with any comments or questions.