New Game: Blackout!

Blackout!

Blackout! is a single-player puzzle game, though you could of course work collaboratively with others. Similar to Puzzle 101.

I just got the bare bones game loop working. It is missing cool animations and some UX polish, but I wanted to get it out to you asap.

The goal of the game is to turn off all the colors of the Working tile by using surrounding Tool tiles of the correct color and rotation.

Init & Setup

[EDIT] The game uses a slightly modified blinklib that is included in the repo I link below. Be sure to grab both the .ino and the blinklib.cpp or else you will get errors about not having enough code space.

After programming your tiles they will be in the init state with a slowly spinning wedge.

blackoutinit

Click one of the tiles to turn it into your Working tile. This will turn it blue. All surrounding tiles will turn white to indicate that they are Tool tiles.

You may now select puzzle difficulty. There are two ways to adjust difficulty:

  • Number of Tool tiles
  • Changing the Tool complexity

Blackout is playable with 2-7 tiles: One Working tile and the remaining surrounding it as Tool tiles. Difficulty naturally increases with the number of tiles. With only one Tool tile the game will be trivially easy. Add or remove tiles around the Working tile as you like.

To increase the difficulty of the actual tools you will receive, double click the Working tile. The number of yellow wedges on the Working tile indicates difficulty from 1-6.

Play

Once satisfied with the difficulty, click the Working tile once again to start the game.

Your Working tile will change to show the puzzle and all of your Tool tiles will reveal their pattern. My photography is really bad here, sorry.

Each Tool tile has a different pattern of faces lit up. They all initially start out white, which means they have no effect on the puzzle. The fun begins when you click and rotate them.

Click Tool tiles to cycle them through RED, GREEN, and BLUE. When a Tool tile is connected to your Working tile (and isn’t white) the same faces that are lit on the Tool tile will toggle their color on the Working tile. If your Tool tile is RED then it will toggle the red color on the corresponding faces, turning them either on or off.

Your job is to determine the correct colors and rotations for each Tool to get the Working tile to turn entirely off and achieve a Blackout!

Reset

Long press any tile to reset it and all connected tiles. You can then start over to select a new difficulty and get a new puzzle.

Example

Using the above starting state as an example, I see that my puzzle on the Working tile has one white face at the top left, one red face at the top, and one green face on the bottom. My first move is to remove the green at the bottom and from the white. The Tool tile on the right is already rotated properly to hit those two faces so I click it until it turns GREEN.

The puzzle updates to change those faces. The green at the bottom turns off and the white at the top left turns to magenta.

Next I’ll take care of the red. I rotate the top tool tile, change it to RED, and reattach it so it hits the two faces. I also moved it to the bottom of the cluster. That doesn’t matter. Tool tiles can be anywhere around the Working tile.

Now I’m left with a single blue face. I rotate the last Tool tile, change it BLUE and voila! Blackout!

There’s definitely work to do to add some pleasant animations. It’s all polish from here :slight_smile:

Have fun and let me know what you think!

6 Likes

Pushed an update to fix a setup bug where the initial Tool tile rotations were not communicated properly.

Better than that, I got some animations in! Going from setup to play has a nice quick reveal. And solving the puzzle now triggers RAINBOWPALOOZA.

Not much left to do. Anyone puzzle game fans tried it?

1 Like

Added an animation when a piece changes color or rotation. The corresponding faces in the puzzle will pulse white.

Also, double clicking a Tool tile will change it back to white, which is the off state.

Here’s a video of me solving a level 1 puzzle with 5 tool tiles. It’s kind of neat that you can just pick up and manipulate the entire cluster like this since there aren’t many tiles and they stay in one big clump.

1 Like

Again, I have yet to find the correct camera/lighting conditions to show the colors properly.

Hi!

I tried it. You should metion how to install it!! :sweat_smile:

With normal blinklib I’m getting an overflow, with custom blinklib is working but I get a low memory warning.

Besides that…

AWESOME! :partying_face: More challenging that Puzle 101 (I still want a 12 blinks version of 101).

Ive tried with 6 blinks (5 tools) in the easiest level of difficulty, and is hard!!! Then i tried with 5 tools in the 3/6 level and THAT is difficult.

This game is another must to my Blink collection :grinning:

:triangular_flag_on_post: Sugestion, sometimes when you are stuck, you just want to restart everything, how about double click the “working tile” to turn white all tools? like a restart but without changing level, same pattern…
EDIT: I’ve noticed the double click to reset the tool, ignore my previous comment :stuck_out_tongue_closed_eyes:

1 Like

FWIIW, “low memory” messages are kinda common and expected considering the amount of memory available to Blinks. Unless your game is actually crashing, you can safely ignore it.

1 Like

Hey thanks for the feedback! I totally forgot I should note about the custom blinklib. I didn’t go all out and use @BGA’s lib. I just modified the normal one to gain some code space. Still, if you don’t pull the full repo you will definitely hit errors for not having enough code space. I’ll edit my original post.

Your suggestion on a way to do a full reset is good. Double click the puzzle tile sounds like a good solution. I’ll add that.

Yeah, it can be hard! I like how you can control the difficulty two different ways.

Okay pushed that change. I also freed up some additional code space to avoid the red blink of death when the game wakes from sleep. I ran into that with Terrarium too and forgot to check for it.

1 Like

New animations
Pushed a large change to improve the game’s animations during init and setup.

During init your tiles will sparkle random faces with random colors.

During setup, your puzzle tile will pulse the yellow difficulty wedges rather than keeping them static. The tool tiles will now cycle through random tool patterns instead of remaining solid white.

New name: Dispel!
Also! I’m excited that I’ve come up with a better theme for the game. You are a wizard that is trying to dispel a hex that has been placed on your puzzle tile. You have a Hex tile and Rune tiles (instead of Working tile and Tool tiles). You use your Rune tiles to dispel the hex!

The game is now known as Dispel!

I’m working on the rules doc with this new theme and will update here when it is ready.

5 Likes

I just pushed a bug fix update to Dispel.

Certain combinations of rotations on hex + rune tiles would not work properly. I was accidentally overrunning an array.

I also made difficulty selection a single click instead of double click, and made game start a double click instead of single. It just makes more sense that way.

[Edit: Aaaand quick fast follow to fix another bug]

Wow!

Incredible game! So smart! Congratulation I love it!

Just a small clue, how to use the custom blinklib you join to the project? I think I use the standard custom lib and I have the memory warning (but the game work despite this warning).

Yoann

1 Like

The memory warning is expected. Blinks have very little memory available. It most likelly does not indicate any real problem.

Hey thanks! As much as I love Terrarium, I think this game is more approachable. And it’s definitely a game.

The low memory warning is fine. It’s likely an automatic thing that pops when the sketch gets close to the limits, according to the compiler.

1 Like