chill analog-styled picross for GBA (WIP)

kva 2df89759a9 update README.md once more 1 day ago
audio bf604f0370 louder sfx, looping cc0 module track 3 months ago
graphics 90af1c3d2e hastily added story mode 2 months ago
include fa902bab76 tutorial done by about 80% 1 day ago
licenses 79a2b0fa10 updated readme, added credits and approppriate licenses 3 months ago
src fa902bab76 tutorial done by about 80% 1 day ago
CREDITS.md c4cfcc0bfe forgot to add a star haha 2 months ago
LICENSE 79a2b0fa10 updated readme, added credits and approppriate licenses 3 months ago
Makefile d8208d541b first commit, base mechanic made 3 months ago
README.md 2df89759a9 update README.md once more 1 day ago
notekeeper.py 5251930798 update converter's text output 2 weeks ago

README.md

notenogram

(read as note-nogram)

Chill analog-styled Gameboy Advance picross/nonogram/hanjie/griddler game made with Butano for GBA Jam 2022, with some gameplay elements inspired by Battle Picross by Sean Reid.

Features (WIP, subject to change):

  • 21 original 12x12 picross puzzles to solve
  • cringy Japanese anime girl voice clips provided by me
  • fancy bossanova module music not made by me (not now at least)
  • story mode that puts one's strategy skills to the test and has three different endings based on said skills
  • tutorial mode that explains picross basics and some solving strategies
  • creator mode that allows making puzzles and sharing them via GBA save files (any save files)
  • more original character cameos?

Controls:

  • A button - color the square the pen cursor is pointing at/confirm menu option/skip text
  • B button - cross out the square/exit menu
  • D-pad - move the cursor (hint: pressing and holding a directional key while holding A or B on the picross grid will mark otherwise empty squares as either "on" or "off" in the selected direction)
  • Select - exit puzzle screen
  • Start (in creator mode) - write current puzzle to SRAM
  • L or R button (in creator mode) - switch custom puzzle slots in SRAM to write to (only three slots available for now, writing to a full slot will overwrite its contents)

Issues

  • VBA-M saves not being written to during gameplay - FIXED (probably, done by updating to latest Butano version)
  • Broken font on exiting to main menu state - FIXED, now to prevent any shallow copies of bn::sprite_text_generator pointers

TODO

  • Completely replace boolean arrays with unsigned integers for quicker reads, writes and condition checks (pending, reduces ROM size by about 2kB, but makes mistake detection harder to implement)
  • Figure out how to design the main game state interface class to avoid any chaos in overridden methods and simplify game loop coding (and reduce used backgrounds)
  • Update story mode with better graphics and more exclusive puzzles
  • Create a tiny app for converting hex data/image files into game code-readable data
  • Add option menu for customizing visuals and gameplay
  • Make some lo-fi tracker beats to solve griddlers to
  • Bwehh