Midnight Transmission Logo

Midnight transmission is a 2D top-down exploration game about a surreal interconnected world; explore abstract and absurd areas collecting tools that can change the environment or improve exploration.
The game was developed in Godot with GDScript by a team of three core developers and a small team of collaborative developers. The unique visual style comes from how much we’ve capitalised on the game as a collaborative effort, using composers, artists, and developers with a wide range of aesthetics.

See Game for information about the game itself, and Development for information about my development on the project. Also, please see the Collaborator list for everyone who helped make this game real!

You can play the game at the Itch.io website linked below:

The Game

Tune In…

In Midnight Transmission you play as Toby, crawling through his TV and exploring an interconnected universe of worlds. Each world has its own story to tell and secrets to discover, and the focus of the game is exploring the branching routes.

Midnight Transmission is a Yume Nikki fangame, a genre of games inspired by the 2004 RPG Maker game Yume Nikki, which is where the basis of the mechanics and aesthetics comes from. However, this game takes many liberties that other projects don’t, notably the use of 3D rendering for the player character and the lack of tile-based movement, distinguishing the project with a more modern twist. Inspiration was taken from several YNFGs, such as Yume 2kki’s collaborative development, and Collective Unconscious’s aesthetic style.

Waking in a panopticon of TVs, there are 7 ‘starting’ worlds to choose from, each leading to more worlds and creating an exploration spiders web; some pathways are only one-way, or require unlocking from only one side, adding a sense of progression to exploration. Alongside this are effects to collect, tools to change the environment or ease progression, such as the racecar effect that gives the player a massive speed boost but tank controls, or the fracture effect that gives the player a ‘checkpoint’ they can place down and return to at will, solving problems with one-way paths. In the most recent version of the game (0.3.0) there are 40+ worlds to explore and 7 effects to collect.

Midnight Transmission Cassette Lake screenshot Midnight Transmission Clay World screenshot Midnight Transmission Snowy Forest screenshot

Development

Development was taken out by three core devs (myself included) with a team of collaborators that helped with artwork, music, and level design. Development was done in the Godot engine in GDScript, the custom language developed for the engine, and using a github repository.

My Role

As one of the core developers I was the Lead Programmer, handling over 90% of the code for the project. However, I did delegate certain tasks to other developers looking to help with the programming, such as the implementation of some effects and the temporary implementation of UI menus. Developers also did their own world-specific scripts, such as characters changing sprites depending on events in the world, or really area-specific interactions and events.

In addition to my role as Lead Programmer, I also developed four worlds (as seen below) and a song for one of these worlds.

// insert gifs of entering exiting and lighthouse

Since I was collaborating with a huge team of people, the vast majority of my work was spent on tools development, making prefabs world makers could use to ease their development. The main ones included door transitions between levels, and door teleporters between areas in these levels; ‘door’ prefabs allowed customisation for interaction animations, custom sprites, and included a dropdown selector of the screen effect that displayed when the player used them, giving the developer more control over how the transition occurred.

Since development was taking place in a new engine to me, this was my first game in Godot, a collaborative developer named VirtuaVirtue with a lot more experience taught me some of the tricks to do with static typing and Godot quirks.

// insert gifs of the house and anatomy world

Progress

Our team utilised github for version control and issues tracking, with developers submitting bug reports and suggestions directly through the repository. About once every few days the core devs would assign out each of the repo’s issues to a developer (with me handling any coding bugs or suggestions) and then solving them through repository pushes. We also maintained archive and release versions as branches on the repository, as well as archiving old releases on The Internet Archive. Using this our team could all develop simultaneously without interrupting each other.

Worlds were developed using a mind map of levels currently in the game, with little icons identifying potential connections to new worlds. Developers who wanted their worlds to be entirely self-contained with only one entrance or an additional link to another one of their worlds can indicate this in the mind map, avoiding confusion when other developers developed parts of the game. The most modern version of this mind map can be seen here:

A mind map of Midnight Transmission worlds

The core developers worked hand-in-hand with the collaborative developers, even developing worlds for some of the collaborators that couldn’t work in-engine, submitting ideas and design documents alongside artwork. Management of the project and collaborators was undertaken by a different core developer, Rat, who also handled access to the github repository.

Development Team

The development team was split up into three divisions: developers, world creators and musicians; developers are collaborators that also wrote code and did additional engine work. The three core developers were GiantBoar (myself), Rat, and Operator Haven. The three of us met in college and collaborated together for the foundational ideas behind the project.