Circuit Slimes: Final Demo

Francisco Nicolau
Nico’s GameDev Projects
7 min readDec 26, 2020

From a 2D Jam Prototype to a finished 3D Demo!

What is Circuit Slimes?

In Circuit Slimes you play as an Electrical Slime Engineer trainee, your job is to repair and complete circuits by deploying your slimy assistants and wrangling them in just the right way to get the job done. To complete levels you must conduct the electric slimes from their power source to their respective outputs. In order to complete circuits, you use different types of slime to alter and add components on the board. Will you be capable of mastering these little creatures and getting them to collaborate?

Circuit Slimes Trailer

Play it here: https://sumthingfell.itch.io/circuit-slimes

Project Description

This Demo was developed during the first semester of 2020, by myself and three other software engineering IST students for our game development methodology course. However this isn’t the first incarnation of Circuit Slimes, this project began as a prototype that I and another team-member submitted for GGJ 2020 based on the theme “Repair”. Previously I wrote about my experience making the 2D prototype, you can read all about it here.

Later that same year, joined by our two other colleagues, a new version was built completely from the ground up using Unity. This version was presented in a local games showcase here in Lisbon, MOJO 2020 at the end of May.

2D Prototype (on the left) and the final Game Demo (on the right).

Gameplay

When it came to gameplay we were pretty faithful to the original design since we got pretty good feedback and it seemed to hit the goals we had set out to achieve. Instead of reinventing the base concept, we focused on perfecting the game loop and polishing the user experience. I’ll briefly summarize the core mechanics.

Electric Slimes, Flow from power sources (Batteries) to power outputs (LEDs). To beat a level the player must make sure that the path is clear for them and also create/repair any broken connections.

Solder slimes are totally inoffensive towards their peers, in fact, their only interest seems to be consuming as much of their favorite food as they can.
This is really useful since they use the food to produce connections and generate new paths for the charges to flow through. Just be careful not to feed them too much!

Water slimes are the complete opposite, they are extremely vicious and prey exclusively on electric slimes so watch out because unless you distract them with some other means of sustenance they will absolutely combust and ruin the circuits. Maybe you can use this to your advantage?

Development

During the course, we were encouraged to post updates regarding the project. We ended up creating a devlog where, every week, each member highlights the features that they worked on as well as the design process.

You can take a look at the Circuit Slimes Devlog posts here.

For this project, although I worked a little bit all across the board (gameplay systems, level editing, menus, etc), I was mainly responsible for the visuals of the game, including all game assets (models, textures, and shaders), player interactions, and technical art.

Game Look and Feel

Given how we were working from an existing prototype I already had a really strong sense of what kind of feel I wanted the game to achieve. From the feedback we had gotten earlier that year, I knew that people were really charmed by our cute slime creatures and that they felt they had a lot of personality, so recreating that was a big focus for me. Additionally, the jam prototype had the kind of relaxed, laid back gameplay that really made it a great fit for a casual mobile game. This became our main target platform, as such, I also had to concentrate on delivering a presentation style that lent itself to a small screen and evoked a fun, friendly atmosphere.

Art Style Exploration
Early Shader Tests for the three main slimes

Early art tests proved that we could achieve something very close to the original in 3D, but it was still a little too visually busy, so we started exploring cartoon-style shading to reduce the detail needed and make our art pipeline faster.

Art style refinement. The low-poly models and simple textures fit the toon shading much better!

I created a toon shader with custom illumination and plenty of control for the lighting ramps and shadow colors. Our assets were starting to look really consistent and easily recognizable.

Asset compilation in the new toon art style.

I also created a way to control the expression of the slimes so we could add a bit of animation and personality in a pinch!

Facial animation shader tests

By this point in development, we were already pretty pleased with the way things looked but we came across a pretty important challenge. Phone screens really made it hard to see a slime’s face. So the solution was to refine the style further. We made the outlines thicker, gave the slimes new textures, and made the faces much larger!

A slime is pretty much 100 % face by definition anyway 😊

Player Interaction

I was tasked with developing a couple of key features for the game, among those were camera control, touch input management, and board interaction.

Mobile camera controls (left), solder connections dynamic tileset (middle), and visual collision grid system (right).

The game was built from the start with the primary focus being mobile platforms but we also wanted fully functional builds for PC and Mac. As such, we had to create pretty robust input management and make sure that all platforms were considered when implementing any sort of interaction.

Another interesting challenge was figuring out a visually pleasing and efficient way to draw the solder lines. Due to the nature of these connections I had to implement an automatic tileset algorithm to dynamically decide which tile to choose at runtime. This ended up being quite an elegant solution and gave us really simple and clean lines that players could read easily.

The last image above shows yet another system I developed, this time to telegraph to the player where pieces could or could not be moved at any given moment. With this system, a piece can have any shape and take up as many grid spaces as we like, and, below the model, a little visual cue is drawn using color to indicate if the piece is colliding with any other existing piece or not.

Visual Polish

For this demo, we really wanted to make sure that the strong gameplay ideas we had come up with were framed by a high degree of visual polish. This ambition is what led me to dedicate a lot of time to some smaller details.

Camera perspective change to make editing easier.

You can see one example of this iterative process in the picture above. We discovered, through playtesting, that players were having trouble editing the board because of the slight camera angle we had chosen. A simple but effective solution was to change the camera perspective between play and edit mode, this was a great quality-of-life change and it also helped distinguish between the two modes a little better!

Procedural board generation system

Yet another example is the game board itself. To add some more visual polish and really drive home the “electrical engineering” thematic, I worked on a procedural PCB line and port generator. These additions are purely cosmetic but they gave a little more context and helped sell the setting of the game.

Menu Work

Finally, I also want to highlight the work I did for the main menu, which ended up being one of my favorite parts of the whole project because of how much fun it was to put together!

Menu scene progression (left) and final scene (right)

Thanks for reading!

Play it here: https://sumthingfell.itch.io/circuit-slimes

A project by:

Josefin Strom, Manuel Correia, Miguel Valério and Francisco Nicolau 😁

--

--

Francisco Nicolau
Nico’s GameDev Projects

I’m a CS Master’s student interested in using all sorts of technology as a medium to challenge myself and express creativity.