Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

CIPHERCELL - A Minimalist Puzzle Game [Demo Available]

A topic by Game Genesis created Dec 31, 2020 Views: 2,221 Replies: 24
Viewing posts 1 to 21
(21 edits) (+10)

___________________________________

STEAM PAGE & ITCH DEMO

The Steam page for CIPHERCELL is available: Click the first link!

Wishlist the Game

Play the Demo

The game will be released on Itch.io and Steam! To be notified, you follow me here on Itch.io and Wishlist the game on Steam!

___________________________________

ABOUT THE GAME

CIPHERCELL is a minimalist logic puzzle game where you slide cells together to perform arithmetic. The objective is to get the last cell to zero.

Larger numbers subtract smaller numbers when slid in that order. Conversely, smaller numbers get added to larger numbers. Equal numbers cancel each other out.


How the game works:

You can drag on the cells to slide them

Larger --> Smaller = Subtract

Smaller --> Larger = Add

Two cells with the same number will Cancel Out

I've been working on this game in my free time since the end of November (2020), and I'm planning to have it finished sometime early 2021 (around April or May).

 Follow me here on itch.io (Game Genesis) or on Twitter to stay updated!

Some more screenshots

Trailer

CIPHERCELL is still a WIP, so any feedback is appreciated! Thanks for reading!

(2 edits) (+1)

Devlog #0 - What I've done so far (Part A)

For the first two weeks or so, I was just coming up with the basic mechanics and refining the controls.

I got the drag input working, and made the cells detect other cells. After that, I made them move and destroy the cell that they collided with. Finally, I implemented the math mechanics, and that was the basic gameplay done..

I also implemented immovable cells, but I later removed them as they added no substance or challenge to the game. (Light blue cells below)

I added a win and lose condition, a main menu button, and a restart button. Finally, I made a couple of levels to test if it was actually fun, and to my pleasant surprise, I was absolutely addicted and couldn't stop playing.

This was a gif of the game after this progress


(3 edits) (+1)

Devlog #0 - What I've done so far (Part B)

After implementing the basic gameplay, I proceeded to start working on the main menu and the settings menu.

The main menu was simple, with a title and three buttons. The settings menu, on the other hand, took a bit more time. I had never done a proper settings menu before, so I had to research some things beforehand. To my surprise, it actually didn't take as long as I was expecting to get everything done. I'm not much of a UI person myself, so I find it quite difficult to work on menus for an extended period of time.

I also created an Audio Manager to make it easy for me to implement audio later. I did overengineer it a lot, but the upside is that it's reusable in future projects. Audio is definitely not my strong point, so whatever I can do to make the process easier is a massive plus.

The menus did look absolutely terrible, but I was really trying to finish them without worrying about the art too much.


Devlog #1 - Implementing a Colour Theme System

After seeing the catastrophe of a colour scheme I had implemented so far, I started trying out different colour palettes that could work. After about an hour, I had only gone through a couple of choices, and it was becoming really tedious to change the colour of every single button, toggle, slider, and text component of the game.

Therefore, I decided that I would make a tool to make this easier. I made a script that I would put on every UI component, and I could designate each component as Background, Foreground, Accent, or Other. I made a manager script that I would place in each scene where I could chose which colour theme template I wanted, and it would automatically apply it to the entire scene.

Modifying a Theme


Changing Theme Presets

Devlog #2 - Undo and Scene Transitions

So far, if you made a mistake or moved the wrong cell, you had to restart the entire level.  So, I started working on an undo system.

I didn't want to be able to undo every move, mostly because it would be harder to implement, but also because the puzzles are very small, so it's easier to just restart.

To implement an undo system, I had to store a couple things about the cells like the cell's last position, the number before collision, and the number of the cell collided with. I had to save all the information, and then recall and apply it when the undo button is pressed. After implementing the system, I had to implement the button. I made it to where it's only interactable if you had already made a move, and had not pressed the button.

Once the undo button was finished, I started working on the scene transitions and a scene manager. I made the system reusable and customizable so it would be easy for me to change the transitions in the future.

I also enlarged the game scene so that it would take up a larger area of the  scene.


(+1)

Is the play area ever going to get bigger or will it be locked to a 3x3 square?  

I think it might not take long to run out of levels with nicely progressing difficulty in the latter case.

Yeah, I was thinking maybe expanding the latter levels to be on a 4x4 or 5x5 grid. I still haven't planned out that many levels, so I didn't know when I would need to expand the grid. Thanks for the feedback! :)

Devlog #3 - Settings Menu and a Buggy Mess

A couple weeks ago, I implemented a settings menu, but there was still no saving and loading. So I got to work on that.

It honestly took way longer than expected to implement a save and load system for the settings menu. I had so many little issues, especially with the resolution dropdown. I wanted the ability to change the resolution, but only when the game is in windowed mode, so I had to find a way to lock the resolution to the highest setting/native resolution on fullscreen, and then reapply the previously selected resolution when switching back to windowed mode.

After many hours, only switching to fullscreen worked in switching the resolution, but going to windowed mode didn't do anything. Then, I played around with the code for anther hour or two until it finally worked both ways. Unfortunately, that wasn't the end of my troubles. Upon leaving the settings menu, and going back, the resolution dropdown didn't save. After many more hours, I finally got everything to save, but now switching to windowed mode without going back to the main menu broke it. A long while later, and finally, everything seemed to work.

I built the game to test everything, and no surprise, fullscreen wouldn't work; it would stay in windowed mode, but at max resolution. I spent a full two days on that issue, but still, until now, I haven't solved the problem. Amazingly, every time I tried to fix a bug, two or three more would pop up.

Also, I removed the graphics settings because it was pretty obsolete.

All in all, it took over a week to implement everything and fix most of the bugs. It's pretty incredible how most of the gameplay took me around two days to implement, and the settings menu took over a week, and there's still problems. That's game dev for you!


Devlog #4 - Polish & Effects

This week, I worked on polishing the experience, and adding animations and effects.

First, I removed the next level button, so it automatically transitions to the next level upon completion. Next, I reworked the undo and restart buttons to be disabled when the level is won. I also had the restart button disabled until a move was made.

I also worked on cleaning up the code; separating out things, and making things more reusable.

Then, I started working on the effects: When the level was completed, a burst of particles would fly out of the last cell. I'm not too great with particle effects, but it didn't turn out too bad. After that, I made the last cell white and then fade back to normal after winning the level. I also wanted to add impact to every move, so I made a growing outline effect that would be spawned on every collision. After sorting out all the bugs with the undo breaking the animation, I got everything working, and the game felt way better to play.

Here's the final result (I removed the UI for demonstration):

You can clearly see a difference over the previous iteration:


Devlog #5 - Level Select & Scene Management

I've had less time to work on the game recently, but I still managed to get a couple things done.

First, I worked on implementing a better menu and scene system. Instead of having scene management code in multiple scripts, I centralized all the scene management functions in one manager class. I also made a menu manager containing all the menu functions.

Another thing I worked on was a level select screen. I plan to have a system which consists of multiple sets of levels, each containing around 20 levels. You unlock a set once you complete a specific number of levels in the previous set (maybe 15/20). All levels in an unlocked set are themselves unlocked, so you can play any level within a set without needing to win the previous levels.

For now, I worked on the basic level select system without worrying too much about the sets. It's a simple system that automatically assigns each button's click event in a group to the corresponding scene/level.

Devlog #5 - More Levels & Themes

Lately, I've been working towards getting a polished demo of the game, so I went about designing some levels that will be included. I managed to get around 10 levels in total, with many more in backlog.

I also managed to get some decent themes, so now I have around 10 in total. I'm planning to have each set of levels use a different theme.

I'm also working on getting the Steam and Itch.io store pages ready, and hopefully the steam page will be up soon.

And that's pretty much it.

Here are some of the new levels showcased with the new themes:


(+1)

Cool!

Thanks!

(4 edits)

IMPORTANT: STEAM PAGE IS LIVE & ITCH UPDATE

The Steam page for CIPHERCELL is now LIVE!


The game will be released on Itch.io later on! To be notified, you can follow me here on Itch.io

Please help by sharing the news! Thank you ALL for your amazing support 🧡


(2 edits)

Devlog #6 - Settings Menu, Level Select & Polish

These past few weeks, I've been focusing more on level design, the Steam page, and preparing the Itch demo, but I have made a lot of changes.

First, I completely overhauled the old settings menu, replacing it with a simpler and cleaner look. Instead of sliders and dropdowns, there are now way more intuitive button-controlled settings.

In addition to that, there wasn't any cohesion between any of the menus; some had bigger buttons, some icons, some small text, others large, etc. So, I went through all the menus and fixed the formatting.

I also changed many text buttons for icon buttons to improve the aesthetic and make the game more universally understandable.

The level select also got an overhaul, now having different sets to select from.

New Settings Menu:


New Main Menu


New Level Select:

CIPHERCELL Announcement Trailer

The Steam Announcement Trailer is here!

Wishlist on Steam

The demo on Itch will be coming soon, so stick around!

Devlog #7: Audio, Polish & Gameplay Showcase

Game polish is something I've been focusing on recently, and I managed to do a couple of other things these last few weeks as well.

First, I went about finally adding audio to the game! I had already made a custom audio manager, so it wasn't that hard implementing the audio! For the audio itself, I got some effects from various audio libraries I've collected on my computer and combined and altered them in Audacity.  I also put an ambient track in the game.

I also changed a lot of the text buttons to icon buttons and added a colour highlight effect to the buttons' click event that is compatible with the custom theme system I had created. I also restructured the button layout so only the restart and undo buttons are on the bottom. As well as the button highlight effect, I also added keyboard events that go with the buttons, like escape for back, "R" to restart, etc.

Here's some gameplay footage:

In addition to that, I implemented transitions within scenes for the settings menu. Another thing I did was to add a simple drag tutorial pointer on the first level. I've been experimenting with a border for the game, but I'm not sure if I want to keep it. If you have any suggestions, leave them below!


I also ran across some bugs along the way ;)


If you're interested in the game, make sure to WISHLIST to be notified of release: https://store.steampowered.com/app/1527650/CIPHERCELL

ITCH DEMO IS HERE

The demo for CIPHERCELL is live on Itch!! 🥳🎉🎉

https://game-genesis.itch.io/ciphercell-demo

Wishlist on Steam:

CIPHERCELL on Steam (steampowered.com)

Trailer:

(2 edits)

New Screenshots & Gifs

I've updated all of the promotional material for the game (screenshots, gifs, and trailer).

Headers and Logos

Gifs

Screenshots

(+1)

This looks really neat, great work!

Thank you :)

(1 edit)

Devlog #8: Bug Fixes & New Tiles

After releasing the demo, I got some feedback about some bugs to do with the menus. Those bugs have now been fixed.

Moving on to the new changes: This week, I started working on the base functionality for a bunch of new tiles.

I started by refactoring the code to allow for different functionality, and I also implemented a brand new tile: The inverse operation tile.

It's basically like a negative multiplier: Positive numbers become negative and vice versa.

I also added 15 more levels to the game, bringing the total up to 30 so far. I'm planning to have at least 100 levels in the full game, but there is a good chance it will be higher.

Other than that, it was mostly minor polishing - adjusting existing themes and adding new themes, reworking button highlighting, changing animation durations, etc.

I finally created a Press Kit for Ciphercell!

If you're interested: ✉ Check It Out Here!

Also, if you played the demo, it would be awesome if you rate the game (top right) and/or leave a review!

Have a great day everyone!

(+1)

Just saw this :)

https://twitter.com/itchio/status/1385277219400978436

Thanks for pointing it out :D ! Hadn't seen it