itch.io is community of indie game creators and players

Devlogs

Designing Refactor Deep

Refactor Deep
A browser game made in HTML5

Here is the concept art I made while  designing Refactor Deep for the Godot WildJam #89. 

My main inspirations were:

On the first day, we discussed what kind of game we wanted to make. The announced theme was "Repurposed" and I originally was intending to stick mostly to game design and writing. Banado suggested, gameplaywise, a factory style bullet hell automation or a world war two squad commander. I went with the former and you can see in the initial concept art I made the lingering influence of the first game I worked on. I understood the factory system as an analogy for a digestive system (thanks ville kallio) So you are inside of this organism and can rearrange its digestive organs to form a digestive tract. You swallow microorganisms and break them down for parts, repurposing them to expand the metabolic throughput of the machine or some other arcane end. 

These microorganisms would shoot back which is the bullet hell component but the twist is that you could suck up the bullets in a special chamber or module and re-use them to shoot back at the microorganisms. 

Gameplaywise this is a riff on Tower Defense where you arrange the track. The track consists of chambers that you can connect and the goal is to break down microorganisms while preventing a breach of the digestive tract. You can line the walls of the digestion chambers with turrets and special attachments. 

If you've ever played any of the Bubble Tanks games, the visual style of the bullets shooting should be apparent. 


So from the start we overscoped and the digestion chamber mechanic ended up being scrapped.  Only a single bullet type, turret type,  brick type with just horizontal or vertical position, and core type made it into the game. I planned for a twist final boss    ending where the player would get sucked into their own digestion factory system to see if they could make it through their own creation. Lysing the cores/parts of swallowed bioships  would have given a percent chance to leave parts floating that could be salvaged and reused (repurposed even) for ships of your own creation. 

I was already thinking about what the ingested microorganisms would look like and play like. I thought of Shellcore Command. It's a game where you have a 2D pixel core and can surround it with parts (that have various abilities) in a ship editor and scavenge parts from destroyed other shellcores. Banado ended up implementing the ship designer and shooting/collision/movement logic. If the core is destroyed the rest of the organism explodes into little parts. We didn't end up implementing any animation for that.  All of these designed creatures made it into the final game with minor variation. The pellet dropping mechanic was not implemented and no special armor brick type was implemented. It  wouldn't be too hard to implement though: just duplicate the regular brick, give it more HP, and change the sprite.

See some initial concept art for different brick and bullet types/patterns: 


Here you can see an early design where the whaleship was originally imagined as a human body moving through space. The course plotting and terrain map made it in. 

Banado floated around the idea of a terminal command line type of game where you could program the machines. The next day (the 2nd day of the gamejam) the other programmer announced that they weren't really feeling it but didn't offer much in terms of specifics citing the direction of the game. I expressed curiosity and found out that it was because the terminal command line idea of gameplay just wasn't very appealing. I also held a similar sentiment and the design decision was made to switch to a drag and drop node (directional flow-network) connection system for programming. Still, the other programmer dropped out. 

Banado described a window/viewport into each machine where you could see a minigame play out where you program the machine's behavior. This initial vision I had of a realtime component probably would have required a programming node complexity similar to Hexcelle Arena and that just wasn't feasible in only 9 days. So this gameplay had to be scrapped for the time being. 

What was retained was the design of having a ship moving through space. Banado proposed an isometric tileset for the map/interior of the ship but we didn't end up implimenting a ship interior asides from the UI. Here I thought of Deepolis with its colored zones depicting oceanic depth and creature encounter intensity. So that's what Banado coded for the minimap with the features of clicking to move to a location and shift clicking to que a path with point icons and a line between the points. The map was linked to a color checker linked to spawntables which would roll for encounters after a given distance interval.


On the 11th you can see the schedule that we tried to adhere to and me speculating about whether I should try a cropped paper aesthetic for the art style. The linking of the node system, shipyard, and encounter system took longer than expected. I ended up going for pixel art. In the future I may return to the paper aesthetic in game. You can see the spawn tables I drafted and mockups of the game UI.

The bottom UI layout ended up being remarkably similar to what we ended with excepting the flip up holo projector. 

On the 12th I switched into programming mode and started coding stuff like the message system, achivement system, and other miscellaneous items like the ship's variables such as mawsize and energy. 

On the 13th I sketched some icons for the nodes, achievements, and features of the shipyard/programming UI. I also had an idea to implement a fog of war for the map which is what the unimplemented sonar was for. That would have taken extra devtime so we had to cut it. If I were to inmplement it now I'd do some kind of masking operation where a black rectangle was overlayed on the map and there is a circle around the ship that unmasks the black rectangle. To retain visibility of paths you've already traveled I could make another layer that gets painted on to create an "additive mask." While I'm not sure which exact methods to call, that's my initial idea.

There is an undated concept art page of the start menu which looks much closer to the final product. I'm quite proud of the start menu as it communicates the oceanic whale theme very effectively and I coded it solo. I also fleshed out the message system.

Thematically, I was torn between Outer Space and Ocean. I initially wrote some lore about being set in Outer Space in the far future where no planets or stars remained. There would have been nothing but quantum vacuum fluctuations and the fauna capable of surviving off zero point energy. That includes the microorganisms and the player whaleship that feeds on them. The vacuum fluctuation would have led to an animated map but for time's sake that was scrapped. So I leaned into the Ocean theme and besides, there is something so wonderful about Whalesong and those large aquatic creatures we share the Earthly biosphere with.

Some tools used:

  • Gimp
  • MS Paint
  • Godot Engine 4.5.1
  • Pencil and Paper
  • PC

Here are some assets that didn't make it into the game because we ran out of time:

From left to right: 1) Mine node, would have spawned a mine that explodes if a non friendly runs into it 2) Teleport node, teleports you to a set distance in a particular direction 3) Multiplication node, would have amplified the output of the node it is outputting to. Nodes were originally planned to be scavengeable.  4) Sonar upgrade, would have been used with the fog of war on the map and would display anomaly icons that could be flotsam or boss encounters.


Achievements that sort of made it into the game:

From left to right: 1)Giga Encounter, triggers inside the upper middle chamber and forces a boss encounter with a giga bioship. 2) Deliverance, triggers at the exit of the map and is the game end but the achievement doesn't do anything asides from appear when you get to a specific spot. No end screen was made. 3) Big Eats triggers inside the upper middle chamber and gives you a bunch of parts. Supposed to trigger after you travel a specific total distance if the giga bioship is not defeated before then. Represents whaleship lysate from a whaleship sent to    rendezvous  with you.   The message system distance linker bugged out and it would have been cool to see what the whaleship would have looked like if you manage to defeat the giga bioship that lyses it before it gets there.

I also dabbled in the programming and made the main menu and settings menu which I was really proud of. Ran out of time to hook up the audio buses to the sliders though. We also didn't have a sound designer and didn't implement any sound effects aside from music. If there is interest, maybe Banado and I could continue work on this game.


For info on the overall development process see the post-mortem here:  https://banado.itch.io/refactor/devlog/1332806/refactor-deep-development-post-mortem

Files

  • build9.zip 27 MB
    4 days ago
Download Refactor Deep
Leave a comment