soundgarden

Back to main

Tutorial time šŸ“–

I made some adjustments to the tutorial and overall gameplay structure. At the start of the game, the collectible stones spawn in the playerā€™s view, leading them across the island. As the player collects these initial stones, barriers that unlock access to more parts of the island disappear visibly in front of them. My intention here is to 1. teach the player that collecting stones leads to some outcome, 2. gradually familiarize the player with the layout of the island.

I have also placed an illustration in the tutorial area, showing a cryptic depiction of the stone collecting task that might even add some sense of mystery to this lonely island.

The drawing was generated with ChatGPT, using the following prompt: Create a cave drawing, the drawing only, without a background (which could be plain white for example). The drawing explains the viewer to look for stones and take them.

I hope the tutorial will make gameplay self-explanatory without resorting to text. Thereā€™s still no explicit pick-up action, and I wonder if itā€™s needed after all. However, without text, Iā€™m not sure how to communicate an eventual pickup mechanic to the player. It could be through an adjustment of the collection illustration, maybe depicting a key that needs to be pressed. Since there is gamepad support, this would mean at least two additional illustrations for the keyboard key and gamepad button.

Thereā€™s also the issue of adjusting graphics settings. While the game certainly looks nice, thanks to Unreal, itā€™s relatively demanding in terms of hardware. As with the text, I would like to have an in-game menu for that. It would be nice to set graphics settings via a splash screen on game start, so itā€™s removed from the actual game. On that note, maybe this is where I could add an explicit gameplay instruction like ā€œpick up stones with left click/right triggerā€.

Soundwalking šŸš¶

I conducted a soundwalk on the island. Not listen to whatā€™s there, but rather to what isnā€™t.

I was looking at the leaves that werenā€™t rustling,

I was listening to the wind that wasnā€™t howling,

Saw a swamp as still and lifeless as ever.

I was a ghost that walked weightlessly upon the sand, the rocks, the mud, the dirt.

Thereā€™s an endless ocean all around - but no sound.

This little exercise in sound mindfulness lead not only to the spontaneous poetic outpour above, it has helped me to come up with a list of sounds to fill the sonic void.

What was already there

Added after the soundwalk

Still to add

Also to consider

Frogs šŸø

Whenever it makes sense, I want to combine a natural and musical sound, or connect the natural sound to the music system in a meaningful way. For the frogs, I wanted to pitch the calls so that theyā€™re in harmony with the music. For that, I cut apart a sample featuring multiple frog calls and changed the pitch of every frog call sample to correspond with a C note. This allowed for pitching the frog sounds dynamically along the given musical scale. However, testing the sound in-game showed that the pitch of the sound is not clear enough for the harmony to be audible, so I will need to either add another layer with a clearer discernible pitch, or use different frog sounds.

The frogs follow a specific rhythmic pattern: one source is triggered in intervals at the length of one bar in the overall music. Three more sources each use increasingly (minimally) longer intervals. The small differences in intervals accumulate, leading to an ever-repeating moving rhythmic cycle where the sounds continuously run in and out of sync.

Parrots šŸ¦œ

Here, I adapted a field recording into a procedural version of itself. I listened to the original recording, analyzing the frequency and duration of birdcalls that would usually appear in clusters. After extracting the individual bird calls from the sample and grouping them into loud and quiet calls, I created a MetaSound patch which would play back these calls in a similar manner as heard in the original sample. With everything being procedural now, played bird samples are randomized. I have also added an intensity parameter that modulates the occurence and duration of clustered calls (intensity 0 = no calls at all, intensity 1 = call clusters consisting of many calls played successively). I want to connect this to an eventual day/night cycle.

Trees šŸŒ“

As above, I cut apart and procedurally recreated the original sample. I would like to connect the actual swaying of the trees, which is currently random and controlled by a shader. To change this, I would need to implement a wind system and adjust the tree shader, which is out of the scope for now. Also, the illusion of an actual connection between the swaying movement and sound is good enough for now.

Soundwalking also made me think about the sounds the player would make, which lead to general thoughts on player embodiment.

Player embodiment šŸ§˜

I was thinking about player embodiment: How to evoke a sense of player presence? How to make the player feel as if they are on the island? There is an inherent act of player embodiment that stems from the interactive nature of a game: moving around the game world, influencing its objects can be seen as acts of embodiment. Isnā€™t it through enhancing and expanding these interactions that we as game designers facilitate embodiment in the worlds we create?

One common way would be the addition of player character sounds. I should add footsteps, and possibly other sounds that would stem from player interaction (e.g., picking up a stone). Iā€™m also thinking about adding microphone support: The player can make sounds which are then shaped by the game environment. This would require a convincing implementation of spatial audio that would benefit any sound regardless. Microsoft Acoustics would be a solution for that. Going to look into that soon.

More thoughts on MDM šŸ“„

I certainly enjoy the newfound creativity that MDM has brought me. I feel like I know what it means to design and make games again, and I love trying out ideas in this context. Frequent journaling and extensive commit messages not only help me get better at formulating my thoughts and tracing design steps, they enable me to actively think about my work. They help me to think ahead, unlike before, where thinking was usually the result of some roadblock, and design merely a reaction.

I also noticed that my thinking is now focused on the bigger picture, and the conceptual background, rather than on specific features and how to implement them. I seem to think in bigger steps: A step is not a task anymore, it is an idea, consisting of several smaller steps. Curiously, this had an impact on my commit pattern. Going from multiple commits in a day, with Soundgarden, there have been commit intervals of as big as one week. Now, I commit once an idea is complete, rather than at every step of incidentally developing it. While I think having the big idea in mind is good, fewer commits are not - overnight data loss is real! And frequent commit messages just facilitate more thorough documentation. I should do commits more often again, even if that means an idea has not been completed yet.

Another thing I noticed that may be due to MDM. I implemented some code for spawning the collectibles which I think I would have implemented in a more efficient manner had I used my agile Trello board. I do think the board helps thinking in terms of more traditional software design terms, which can be handy to know sometimes. Working on Soundgarden, I had a moment where I realized that using a certain data structure would simplify a solution I had implemented. Here, technical knowledge helped to implement a gameplay idea in a technically more efficient way, after I had arguably spent some time on a less efficient and slightly broken solution. However, I find that MDM actually facilitates thought that would lead me to this conclusion. Even if MDM was the reason for spending a little more time than usual on one thing, it also helped me to arrive at this realization in the first place. It is certainly possible to think about good technical implementation whenever it becomes necessary. This is essentially an inversion of my Trello workflow where I would stop and think about design whenever something technical would not be working, whereas now I think about the technical whenever it is in the way of design/gameplay. This makes for a much more creative workflow and more interesting outcomes. MDM rules!

Further thoughts šŸ’­

I was thinking about a game mechanic where the player can speak basic syllables to interact with certain objects in the game environment. I was also considering having combinations of syllables as passwords/magic spells that would, for example, open a pathway or activate some musical object. There should be some way to input syllables without speaking - I could map AEIOU to keys on a keyboard and buttons on a gamepad.

The character controller has jumping enabled by default. I placed some invisible walls so the player wonā€™t go for a swim in the ocean or swamp. With some clever jumping in the right location, itā€™s possible to circumvent the tutorial barriers without collecting all stones, and reach other locations as well. I could disable jumping and add even more barriers to prevent this. However, I would much rather reward the player for their curiosity and exploration. I could place some sort of easter egg in such locations, or even a special type of stone collectible that could unlock some more ā€œout thereā€ consequences, like turning the sky green or letting it snow.

Next ā­ļø