Postmortem - Design and programming


1. Game idea

The idea of The Nameless City emerged from creating a horror game, as I always wanted to create one. I never had a PS1 (or any Playstation at all), so I don’t feel the nostalgia for that aesthetic, but playing some PSX inspired indie games made me realize it was an interesting aesthetic that was perfect to create a creepy and mysterious atmosphere for the game.

At that time, I was also reading a lot of Lovecraft short stories. So, why not create a game inspired by a Lovecraft story? The Nameless City was a short story that I liked a lot, so a game about it would be easy (spoiler: not really). And the PSX aesthetic would fit a story about indescribable creatures and thousand-years old ruins.

With those ideas (PSX horror + Lovecraft), we started developing the game around three years ago. At that time, AI generative tools were starting to get more famous. When I first used them, I typed random words that didn’t have a lot in common to see what was the output. The results were something really weird and creepy.

And what was also weird and creepy? Lovecraft’s stories. So I typed things like ‘cosmic horror sea’, ‘nebula horror’ or ‘crocodile with human hands’. And the generated images looked like a really good fit for the game that we were developing. And that’s how the third key idea (AI generated images) was added to the game.

2. Designing the demo

The game started mostly like an experiment. I tried different layouts for the starting levels and different visuals. When I was more or less sure that I could go for the aesthetic that I wanted, I started designing the game.

For the demo, I designed these levels:

  • Intro cutscene
  • Outer area
  • Underground area where you get the first two glyphs

And these mechanics:

  • Crouching
  • Torch
  • Glyph incantations (Dispel and Koth)
  • Barriers that needed to be dispelled
  • Sanity
  • Day night cycle

2.1. Crouching and torch

Even when crouching is difficult to describe as a mechanic, exploring narrow spaces was important for Lovecraft’s short story, so it was a key point of the level design. A torch to illuminate dark spaces was important too, as both mechanics would create a tense atmosphere.

2.2. Glyphs incantations and barriers

Inspired by Eternal Darkness, the player would collect different glyphs that, combined, would allow them to cast some incantations to be able to progress during the game. They were divided in two groups with different meanings: verbs and nouns, so that each spell would be a combination of one verb and one noun.

As the game is an adventure/walking simulator, the purpose of these glyph spells is basically to unlock new areas, and a way to guide players through the level. For the demo, only one incantation was designed: the dispel barrier, which is a combination of Dispel and Koth.

2.3. Sanity and day night cycle

Another mechanic inspired by Eternal Darkness is the sanity. Basically, it’s the health of the main character, and when reduced to zero, the game would end. For the demo, the only way to get the sanity reduced was to explore the city during the night.

A day night cycle was designed too, as the city was dangerous during night time in Lovecraft's short story. The idea was that the night would approach slowly while the player was exploring, so they should go back to a refuge (the camp) so they won’t die.

The idea was good, but the implementation was not: there’s actually a working day night cycle, but it’s irrelevant during a regular playthrough, as it takes too much time for the day to become night, so players have more than enough time to explore everything.

The night time is triggered by a script instead, so players are able to experience the city during the night, though.

3. Publishing the demo

After a while, we could publish a demo of the game. None of us are very good at social media, but the game had quite a lot more impact than we thought, regarding that we did almost 0 marketing.

In general, people liked the glyphs mechanics and the AI visions. The voice over and the atmosphere (sound design and graphics) received a lot of praise too. However, most people were expecting a longer demo, as it barely lasted more than 10 minutes.

4. Designing the rest of the game

After the demo was released, it was time to design the rest of the game. This was one of the bigger mistakes that I hope I don’t make for next games: not having a clear idea of what the rest of the game will be about before releasing a demo.

4.1. More glyphs

The Dispel glyph was inspired by one of Lovecraft's stories: The Case of Dexter Ward. In that story, there were a pair of symbols: the Dragon’s Head and the Dragon’s Tail. It’s implied that one of them was used to negate magic (Dragon’s Tail) and the other to create it (Dragon’s Head).

We had Dispel (aka Dragon’s Tail) in the demo, so there was no doubt that the final game would have its counterpart, Cast (aka Dragon’s Head). If Dispel Koth would disable a barrier, Cast Koth would create a barrier. If Dispel Dho would destroy a bridge, Cast Dho would create one.

The glyphs were key for the demo. So, only one more glyph wouldn’t be enough. For this reason, we thought about adding these glyphs:

  • Verbs:
    • Cast
  • Nouns:
    • Dho (bridge)
    • Cthugha (light)

How is creating a barrier useful for the player? Well, that was a problem to solve when I started designing the new levels.

4.2. More levels

Designing new levels was difficult, as there was no clear idea of what the rest of the game would look like, apart from loosely following Lovecraft’s story. There were some key ideas:

  • Players must collect new glyphs, so each new level should be designed around getting each one of the glyphs and using it to unlock new areas.
  • There was a day night cycle. Players must go outside the city during night time or they would die.
  • The game should more or less follow Lovecraft’s short story. The last part of the game should be a long and dark underground corridor where most of the story is unveiled.

It was impossible to fulfill all of these aspects without adding some clunky mechanics (e.g.: a teleport that would allow players to go from the camp to the interior of the city), so the day-night cycle was finally scrapped, and the game would have save points inside the city instead.

4.3. How is creating a barrier useful?

And I didn’t even answer how creating a barrier would be useful. Answering that would be the most annoying pain in the ass level and mechanic that I had to design and implement: the cliffs with the wind statues.

After several attempts, the idea that looked less bad was that the player would explore a cliff with some statues expelling wind. If the player moves near this wind, they would be pushed to a pit and die. As silly as this sounded, it was the best idea I could come up with, and maybe it wasn’t that bad after all. It was also loosely inspired by Lovecraft’s short story, as some wind guided the main character to the entrance of the main building of the city.

Some of the lower ‘mouths’ of the wind statues were broken and they didn’t expel wind, so players would need to crawl to avoid being hit by the wind. At some point during the level, that wouldn’t be possible. And that’s how creating a barrier is useful: it would stop the wind, so the player won’t be pushed to the abyss.

Coming up with an idea for this level was hard, but the implementation was hard too. The first version of the level was just a big flat cliff with the statues. Exploring it was too boring as it lacked verticality and things to examine, and so narrow that sometimes it was disorienting. This was fixed after several time-consuming revamps.

4.4. The level that teaches you what the Cast glyph does

The Cast glyph looked like a major milestone in the game. It was the second verb that the player would get, and that would allow them to combine a lot more glyphs (not that many in the final game though).

Because of that, it made sense to create a separate instance in the middle of the cliff level that served as a tutorial for the Cast mechanic. In that instance, some sort of switches would allow the players to disable (Dispel) and enable (Cast) barriers. By the way, this was designed and implemented by Andrea, so I don’t have a lot to say about the design and implementation process. But I can say it’s a cool level that helps create the weird and eerie atmosphere of the game.

4.5. The long and dark underground corridor

Once the player finishes the cliff with the wind statues level, they go to the long and dark underground corridor.

Surprisingly, this level was quite easier to develop and implement than the cliff one. Everything came together fine: this pitch black corridor existed in the short story, and it made sense that the main mechanic was to Cast a Light (Cthugha). For this spell to be useful, the torch must disappear: so the player should not be able to use the torch at some point during the level.

A narrow corridor was a bit disorienting to navigate in such a low resolution, so the level must be quite linear to be easy to know where to go. This should also help to create a claustrophobic atmosphere: players can only go one way, so they have no agency at this point and they are at the mercy of the city.

4.6. The level and the glyph that never were

After designing and implementing a rough version of all the previous levels, something was clear: we didn’t want to create new ones.

We have already worked in the game for almost 3 years, and the motivation to create the final level was scarce.

The idea was there though: it would be the place where the inhabitants of the city live and that is insinuated at the end of Lovecraft’s short story. It was the perfect level to go wild and create mechanics for the Dho (bridge) glyph:

  • Creating a bridge would allow players to reach new areas.
  • Destroying a bridge would prevent potential enemies from reaching the player.

It would also be a good excuse to create a mechanic for Dispel Cthugha (light), as this is not really relevant in the final game. Maybe a light source that damaged the sanity of the player? We can only imagine.

Even if we didn’t have a real deadline as it was a passion project, adding more content to the game after that long time would have meant that we never finished the game at all. So I think it was a good idea to scrap it, even when the idea was interesting.

5. What went wrong

5.1. Finding the motivation

As it always happens with this kind of project, finishing the game took a lot more time than I thought. It didn’t help that this was my first ‘big’ game, and I underestimate the time needed to do the simplest of the games. I didn’t know Unity that much, as I used it years ago but always on very simple games, mostly 2D ones.

Also, I was only able to work in the game one day per week, so I didn’t spend that many hours. Sometimes, it was soul-crushing seeing that months passed with almost zero visible progress.

To avoid that, I tried to speed up things: creating with little previous planning, doing things in Unity without knowing exactly what I was doing, and creating bad code. And for sure I knew that was a bad idea, but I still did it. Lots of things broke with no apparent solution, and they were fixed with sweat and tears.

Publishing the demo and seeing people play the game was good for motivation. But that motivation doesn’t stay forever, especially when we haven't published anything new after that long time.

So, for future projects, it would be better to not focus that much on visible progress. Sometimes it’s better to step back and think ‘what is the best way to do this?’ and ‘should I learn how to use this tool better?’. In the end, planning and learning is part of the ‘progress’, and it will make things much easier in the long run.

5.2. Using Unity

Unity has done some strange stuff during these past years. They had deals with the US military, bought companies while laying off employees, the CEO has some polemic opinions about how to monetize games, they want to get money for each game install, etc. It’s difficult to stay motivated when the engine that you are using looks like it’s going to shit.

At some point during the development, I decided that I didn’t want to use the engine anymore. This makes motivation even more difficult, as everything that I do and learn on Unity will be wasted when I move to a new engine.

However, for future games, I plan to try new engines. My idea is to use Godot, and it being an open-source and free project is more motivating than using an engine created by a public company that will shift their efforts from pleasing users (developers) to pleasing investors.

5.3. Using PSXEffects

Using PSXEffects was also the wrong choice at the time. I was overwhelmed by learning shaders, so I decided that it was better to use a plugin for getting the PSX aesthetic.

Using it was quite nice when the project started, but as the game became more complex, some problems arised:

  • Using more than one camera has some unexpected results
  • It’s limited to the standard render pipeline
  • It has some differences between Mac and Windows

Apart from that, it looks like it’s an abandoned project. The last update was more than one year ago, and the developer doesn’t reply to messages sent to them.

It may have been a better idea if I knew how to code shaders to create a PSX shader from scratch or to try to fix the issues that I had with this plugin.

6. What went right

Even though we had a lot of problems, I’m proud of lots of things that we achieved:

  • For our lack of skills in some areas (3D modeling, texturing, shaders), the game looks nice.
  • We managed to create an eerie atmosphere with the combination of music, sounds, colors and dialogs.
  • It’s really difficult to translate a book to a game, as they are very different art forms. This is especially true for cosmic horror stories. Even when we didn’t try to do a faithful adaptation of the short story, I think we still kept most of the emotions when you read it.
  • The Nameless City won’t be the best game ever, but it’s our game. We are faithful to our ideas and tried to create a unique experience.
  • If I started the project again today, I’d do things quite differently, but that means that I learnt a lot. So I’ll apply that to future projects.

Get The Nameless City

Buy Now$6.00 USD or more

Leave a comment

Log in with itch.io to leave a comment.