GB Wordyl: v1.00 is Here!


New Release: Version 1.00 With Lots of New Features!

This should be the final version (for now at least), hope you enjoy it.

It's been a while since the last release, but a lot has been going on behind the scenes. There wasn't much free space left in the 32K byte ROM and it was getting hard to add new features. So I spent time improving the compression and decompression to squeeze the word dictionary down even smaller. Those improvements freed up about ~3,900 bytes. You can do a lot with that much space in a Game Boy! That space, along with other changes, made it possible to add all the features in this release.

Next up after this, getting the physical (32K) cartridge release ready to go! Hope to share more on that soon.

 Highlights:

Compression

For those curious about changes to the dictionary compression here are some details:

  • Switched from 7-bit variable encoding to 3-bit variable encoding. Each word is converted to the numeric difference of it's letters from the previous word. That value is then encoded using as few chunks of bits (previously 7 and now 3) as possible.
  • Reversed letter order in words before compressing (bakes -> sekab)
  • Re-ordered the alphabet so that different letters get assigned to lower bit-values. abcdefghijklmnopqrstuvwxyz -> aeioustryhkbcdfgjlmnpqvwxz
  • RLE compressed the answer word lookup table used to improve dictionary access speed
  • Added more entries to the main dictionary lookup table to keep it as fast as before

The hardest part was keeping the decompression code both small (so it didn't undermine the compression improvements) and fast (so that checking words still felt "instant"). A lot of time was spent using the Emulicious Profiler to benchmark and optimize the code in order to achieve that. As it turns out, random people on the internet have a lot of insightful advice about dictionary compression- many thanks to them all.


Added:

  • Cartridge Save for Stats & Settings (MBC5 and Ferrante 31K+1k cart)
  • Sound Effects (by Coffee "Valen" Bat)
  • New Popup Menu interface
  • Help popup with a Letter Match Color Key
  • Setting to Skip Auto-Filled Board Letters
  • Cornish (KW) Language - SJD
  • Português Brasileiro (PT-BR) Language - Daniel Tolentino
  • Option to re-show intro help popup from menu
    • Also now only shows on startup first time cartridge is run

Changed:

  • Switched to MBC5 for digital ROM versions
    • Ferrante 31k + 1K flash for physical carts
  • Changed to prevent random number from being the same one as previous round
  • Significantly improved dictionary compression

Files

GBWORDYL_1.00_mbc5_Analogue_Pocket.zip 177 kB
May 24, 2022
GBWORDYL_1.00_mbc5_GameBoy_ROMs.zip 177 kB
May 24, 2022

Get GB-Wordyl: Word game for Game Boy (& Color) / Analogue Pocket / Mega Duck

Download NowName your own price

Comments

Log in with itch.io to leave a comment.

(+1)

Genius with that compression method. Fantastic v1.0 release! Been following this for a couple of months now and I'm proud about how this turned out.

Thanks! It's been fun to build and to learn more about compression, and to make something people enjoy using.