Airgameboys

Ludum Dare 57

Wrapping up!

index_0.gif

Sirtet is a reversed Tetris (hence the name). You use pieces to dig your way to the depths.

This was our 12th jam, and the first one using PICO-8, and it's been joyful. Exporting to all platforms is just a single command, and it has built-in support for controllers and so much. The music part has been pretty tricky with the technical limitations it imposes (we ended up making generative music by directly writing to the RAM...), but that's also part of its beauty.

We're submitting to Jam and not Compo, because we're two devs and tomorrow we have to earn our pay. But feel free to check it out!

PICO-8 vs GameMaker

As a long time jammer (this is my 16th jam), I've always done my games with GameMaker. But this time, since I was working with a friend who is new to game dev, we decided to go with Pico-8, and use only the cheatsheet to have a limited set of stuff to learn. This is our final game by the way:

index_0.gif

It's a digging Tetris-like in which you have to remove layers of soil while not disconnecting the entire chunk, you can test it out here: SIRTET.

Anyways, this is an unsorted list of impressions about working with PICO-8 in a jam:

  • Using only the cheatsheet as a reference is surprisingly easy. Everything except understanding the music creation interface was pretty much self-contained in a single-page A4 PDF.
  • It's much less batteries-included, so if your game has heavy reliance on collision detection and the like you're gonna have much more boilerplate code than in GameMaker.
  • Things being 128x128 and the minimal function set makes iterating pretty fast. It's like having a guardrail against yourself going too crazy with the scope of the game.
  • The 16 color palette also works in the same way, making your games scope much more manageable.
  • Having no shaders, adding juice to the game is a bit more hacky. In our case, we used a custom particle system and screen shaking.
  • The SFX making interface is wonderful. It's a pity you can't use external audios so easily (I'd love to use JSFXR or modulime.
  • The music making was the most complicated part for us. The music tracks are made of SFX tracks, and looping bars is a bit convoluted. We ended up making 4 tracks of drums, 4 of bass and 4 of lead sounds, and using memory operations (bitwise ops and poke/peek at memory addresses) to randomly change the track.
  • Exporting was joyful. A single command and you get a web version that works out of the box in any device, with controller support, landscape mode controls...

This time we had a very clear idea of what we wanted to do since day 1, so the creative process was very straightforward. After 4 hours of development we were already focusing on the fun cycle. In general, I think that's what made this game so addictive vs previous ones.

Our final conclusion is that PICO-8 is really fun and smooth experience, but if you need anything more custom or advanced (physics, external graphic design, more complex palette, external music...) using another software is the way to go.

The underappreciated mechanics of Tetris

We've built a Tetris-like game for this jam, and at the beginning it was really difficult and counterintuitive to play. So we dug deeper on what's the problem, and we found there's a hidden world of things Tetris does to make the game more pleasant.

index_0.gif

You can check it out here: SIRTET. It's a sort of reversed tetris in which you have to remove soil without disconnecting the entire block of earth, trying to always remove the top line.

The 7-bag

Most modern versions of the game use this mechanic to make things easier for the player. Basically, you start by taking the 7 tetris pieces, adding them to the bag of next pieces and shuffling it. Once the bag is empty, you repeat the process. This has two implications:

  • Your most needed piece is never more than 13 pieces away in the worst case: 6 to finish the current 7-bag and 7 to reach the end of the next one.
  • You will never see 3 times the same piece in a row.

Before we implemented this, we played entire games with not a single stick piece in over 100 pieces, or games with 3 square pieces in a row that made the entire thing impossible. Nowadays, every single commercial tetris game released uses some version of this. In some cases, it's a 14- or 35- bag to make it a bit less predictable.

ezgif.com-crop (3).gif

In addition to this, your first piece of your first match is always a block or a stick, so that you can't disconnect the board right after starting, to minimize confusion.

The NES rotations

Rotating pieces is actually a tricky thing. If you would simply rotate each piece from its center of mass, you'd end up with a piece that is misaligned with the game grid. However, if you somehow rounded the positions to exact tiles afterwards, your controls would be counterintuitive. Which is why the rotations in most Tetris games are hardcoded to the ones in the NES version of the game, which is regarded as the most intuitive one, and the one used in tournaments:

| Real computed rotation | NES hardcoded rotation | | - | - | | ezgif.com-crop (1).gif | ezgif.com-crop (2).gif |

The wall kick

The name is pretty describing. Basically, if your piece is close to a wall so that rotating it wouldn't do anything, the game checks if rotating would work by moving it to the right/left. You can see it in action here:

index p8_0.gif

Most modern tetris-like games also implement this. There's even a long list of strategies you can use to save yourself from complicated situations.

Hope that was interesting! If you want to check out the game, it's here: SIRTET.

53 lines!! Wow!

In SIRTET, our reverse-tetris digging game, we started adding an online highscore, but we were out of time at the jam. However, we advanced enough to at least log the anonymous player scores in our server.

index_1.gif

We just saw someone who has played 30 times already make 53 lines in a game, which is more than twice our highscore.

So dear stranger, if you ever read this: congrats!!! We love you! That's what we make the games for 💖

60 lines highscore reached!

Someone just made it to 60 lines!! I honestly can't believe how's this even possible.

6bf8b[1].gif

Congrats, anonymous individual with a California IP playing from an iPhone!!

If you want to try your luck: https://ldjam.com/events/ludum-dare/57/sertit