Go to file
Randy Thiemann f1f33b27d3 Slightly improve game over and also add modes, removing the RNG setting instead. 2023-10-22 13:42:30 +02:00
.vscode initial commit 2023-10-10 10:32:24 +02:00
src Slightly improve game over and also add modes, removing the RNG setting instead. 2023-10-22 13:42:30 +02:00
.gitignore License. 2023-10-21 17:28:38 +02:00
COPYING License. 2023-10-21 17:28:38 +02:00
DMGTRIS.GB Slightly improve game over and also add modes, removing the RNG setting instead. 2023-10-22 13:42:30 +02:00
Makefile initial commit 2023-10-10 10:32:24 +02:00
README.md Slightly improve game over and also add modes, removing the RNG setting instead. 2023-10-22 13:42:30 +02:00
project.mk sprites 2023-10-11 08:18:12 +02:00

README.md

DMGTRIS

This is a block stacking game for the game boy using the TGM2 era ARS rotation rules (no floor kicks, but with sonic drop) for the original black and white game boy written in assembly.

It supports TLS (until 1G), IRS, IHS, ARE, Lock Delay, and other such buzz words.

Scoring is somewhat like TGM1 within the bounds of what the Z80 CPU can calculate quickly enough.

The speed curve starts at 1/16G, so slightly faster than TGM, and goes smoothly toward 20G at level 500. There is no speed drop at level 200, and the game doesn't end at level 999. 20G mode starts at TGM1 speeds, then transitions to TGM2 speeds, TGM3 speeds, and finally it goes beyond even shirase mode.

The Randomizer uses a TGM2-style 4-history randomizer preloaded with SSZZ, and with 4 rerolls by default. This number can be changed and is shown at the top right of the playfield.

The game itself runs at a constant 60fps as well as at the traditional 20 row visible grid.

There are five available game modes:

  • TGM1: 4 history, 4 rerolls, no sonic drop, never start with O, S or Z.
  • TGM2: 4 history, 6 rerolls, sonic drop, never start with O, S or Z.
  • TGM3: 6 history, 6 rerolls, sonic drop, never start with O, S or Z. (Note, not the actual 35-bag as used in TGM3, and floor kicks are not implemented (yet) either.)
  • HELL: No history, no rerolls, no sonic drop, never start with O, S or Z.
  • EASY: 6 history, 256 rerolls, sonic drop, never start with O, S or Z.

Playing

You can build the game yourself, or use the binary here or here.

The game should run in any accurate emulator. For Windows or Linux using Wine bgb is generally regarded as the best option. For macOS SameBoy comes recommended.

Please do not try running it on older emulators such as VBA, since this game uses the semi-randomness of the initial game boy memory as one source of RNG entropy.

Controls

Menu

  • A/B/Start — Start the game
  • Left/Right — Switch A/B rotation direction
  • Up/Down — Select starting level
  • Select — Select game mode

Gameplay

  • A — Rotate 1
  • B — Rotate 2
  • Select — Hold
  • Start — Pause
  • Up — Sonic drop
  • Down — Soft drop/Lock
  • Left/Right — Move

Game Over

  • A — Restart immediately
  • B — Go back to title

Building

This game was created using Game Boy assembly using the RGBDS toolchain and GNU make.

License

Copyright (C) 2023 - Randy Thiemann randy.thiemann@gmail.com

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.