Postmortem of Among Darkness


I haven't written many posts, but someone years ago said that a journey of a thousand miles begins with a single step, so here I am.

Content

  1. TLDR
  2. Lessons and Experiences Gained
  3. Technical Details
  4. Misc

The game takes roughly under 6 days, with later days working like 12~16 hours a day, I am inclined to say that maybe I should live more healthily.

TLDR: Will focus on Game Design more in the future, as I start to feel kinda confident in technical things now, but I should probably get comfortable with Godot's Animation System instead of doing animations with code (basically all linear_interpolation now).
And I have written down some technical problems I encountered when developing this game.


Lessons and Experiences Gained

Gameplay

I focused too much on technical details and implementations that I only had little time to design gameplay. in 5 days of the development, I made the levels in the last day and then roughly tweaked the gameplay. It turns out that the Mission - Resident is quite hard, and the items are kinda scarce (especially when players are still exploring the map), this does not give player constant rewards, which might make the game less fun. I remember some addictive games give players constant but not really hard challanges/decisions, which makes the players in a game flow and want to play just one more turn. I think I should gain more experience in this regard.

Implement Pause Early

When developing, Pause Menu does not really get in our considerations, but when it's near release and you realize oh I haven't implement pausing yet, it might be very difficult to pause correctly, especially with timer and such. With some Game Engines you can handle this with ease, but it's not always the case.

Long Term Progression, Player Created Content

These things add more depth to the game, but more difficult to design. Especially with player created content, like city building games, players tend to come back and see their own creations. I really should start experimenting with these things now, a journey of a thousand miles begins with a single step.

Audio

I discovered that, Audio changes the game a lot, and I cannot emphasize this more, when you switch back to No Sound after adding audios to your game, it feels... weird. Adding music to the game would almost instantly make the game more like a game, rather than a tech demo. Also, I think it's important to give feedback to whatever thing the player does, we always say the core game mechanics are the most important but juice might be part of the fun?


Technical Details

Light Only

When the theme announces, I chose the *In the Dark*, and as I just happened to discover *Light Only* in Godot's CanvasItem Material, I decide to make it *only flashlight can see them*, a very simple but kinda effective trick, not very typical of Godot.

Godot Audio System

My initial impression is that it's kinda inflexible, I miss the SoundCue in UE4, in Godot we have to code ourselves if you want say randomly play one of [streams].

I start to incorporate audios in start of Day 5, and then my audio handling code is scattered in many classes, next time maybe I'd develop a event bus or something to solve this. like Event Queue.

Some interesting frustrations facts:

AudioStreamPlayer only plays a single stream, we have to develop a class to generate AudioStreamPlayer on demand. I called it AutoAudioStreamPlayer2D, I didn't really think about its name...

AudioStreamPlayer2D does not inherit AudioStreamPlayer, as AudioStreamPlayer2D extends Node2D and AudioStreamPlayer extends Node, now that's prime code reuse in inheritance architecture. Composition Over Inheritance.

There's a Resource called AudioStreamRandomPitch.

Misc

Code of Jam Game's tends to be spaghetti, starts from Middle of Day 3, when the game scope is clear, I start to implement things as simple and ituitive as possible, gained many lessons and experiences that I'd definitely apply to my next game.

The inheritance approach still feels not very easily extensible, I might revert to Entity-Component-System next time.


Also, just got the discord server running, and thanks for reading!

Files

AmongDarkness-html.zip 13 MB
Jan 19, 2023
AmongDarkness-windows.zip 24 MB
Jan 19, 2023
AmongDarkness-linux.zip 27 MB
Jan 19, 2023

Get Among Darkness

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.