Releases: splch/heirs-of-nyx
16-bit Generation on More Devices!
This release fixes some bugs and adds a lot of functionality.
- Uses hUGETracker to play music
- Enforces a 32KB ROM with MBC5
- Adds support for SuperGameBoy
- Adds color palette for GameBoy Color
- Uses 16-bit integers for map generation (65536x65536 map size)
- Changes name to Skullduggery
Metasprites and Beautiful Generation
Terrain generation got a huge revamp due to moving to pure assembly. I had to drop support for Sega Master System and GameGear, but this is first and foremost a Game Boy game, so that takes priority. The generation algorithm is slightly faster but using metasprites is definitely the most performance-enhancing feature.
- Metasprites
- Faster and prettier terrain generation
- Minor bug fixes
Fast Terrain Generation Performance + Big Bug Squashes
The terrain generation is (probably) complete!
- Menus and non-movement interactions use a timer delay (ease of use)
- The long-lived diagonal-movement bug is finally fixed
- Step counts accurately reflect diagonal and mountain movement
- Variables use standard naming for C
Terrain Interaction
Enemies will come soon, but before that, the game now has terrain interactions. You can't walk through mountains and water will pull you. I'm planning to add items like a climbing peg or peg flipper attachment to give control over those terrains, but that'll be for the future.
Working Item System and Decompression
You can now equip weapons and pick up gold and maps across the terrain. Additionally, the items have some basic artwork; however, when I transition to 16x16 metasprites, they'll all change.
Enemies will be coming next!
I also enabled cross-compiling to all the systems GBDK supports. I'll only be testing .gb
, though, so the other ROMs are just in case.
Items are placed and ready to pick up!
This is an alpha implementation of item pickups, but they are efficiently generated which is great for the Game Boy. They don't disappear forever, though, so I might use Pearson's Hash for a history of 256 items.
Insertion needs to be very fast. Even though picking up an item can have a little sound effect or animation, each item that can generate can't have a value in the hash table. I think simply adding x and y to form the key will work well enough, but I'll verify that 😄
Anyways, I'm happy with the progress of this game and am really enjoying working around the limitations of the Z80.
Better Map Generation and Faster Execution
Dare I say we have a usable map?
Huge thanks to help from the GBDK-2020 Discord server! The game runs much faster now and the biggest challenge (so far 😉), the map generation, is completed.
Next item on the to-do list is item placement.
That might come alongside item pickup but that's a different beast entirely.
- it requires keeping track of what items have been collected (to not show them again)
- im thinking of simply storing x×y for items picked up at (x, y) and just accept a limited number of items in the game
basic generated world
the game finally has a working terrain generation algorithm
- generation needs improvements though
it does not have items or enemies yet.
literally unplayable xD but theres some generation and visuals kinda
lmao gl playing this