Scott, Mutated

@mutatedscott.bsky.social

Game maker (He/Him) Mostly just goofing around with NES assembly (very slowly) and taking in retro gaming history. Love seeing all the great work ya'all are doing.

In a NES design cycle at the moment. Strangely never feels productive to me, as I just have ideas on things to do at the end of the day. BUT making an effort to place more value in the time spent. That said, struggling to decide on an RLE approach for map data. May just implement FF1's solution.

Bild

This is neat. Nintendo of America is hiring a librarian to catalog their vast trove of development documents. This person will also be conducting interviews with important Nintendo employees to make sure their experience is preserved for future devs. careers.nintendo.com/jobs/4458631...

CONTRACT - Digital Archivist, Historical Systems - Nintendo Careers Site

Learn about CONTRACT - Digital Archivist, Historical Systems and apply for this open position.

careers.nintendo.com

Realizing I misunderstood the limitations of the attribute table. Was thinking an attribute section needed to have the same palette as opposed to a tile needing to have the same palette (4x4 set of chrs) The Nesdev wiki is such a wonderful resource.

PPU attribute tables

An attribute table is a 64-byte array at the end of each nametable that controls which palette is assigned to each part of the background. Each attribute table, starting at $23C0, $27C0, $2BC0, or $2F...

nesdev.org

And just like that, my plethora of available ram has become endangered 😬 Realizing I'm going to need to plan out basically the entire game in almost byte level detail before I can know if anything will need redesigned.

The 6502's PHA and PLA pushed and pulled the accumulator to the stack. But the stack was only 256 bytes, starting at $0100 and growing downward. Push too much and you overwrite your own data. Pull too much and you get garbage. The stack was the 6502's most dangerous resource.

Working on switching from a title scene to another scene in my NES game and all the gotchas are coming out of the woodworks. Learned that FamiStudio's update is consistently overrunning the nmi, which was tainting my vblank wait loop. Think I have a solution for that, but seeing a small glitch too.

Couple of scanlines of corrupt visual data in the Mesen emulator

Perhaps I'm a bit neurotic, but I do like the NES space checker by Shiru (whose website appears to be down atm). The reality check of "Oh two complex sample music tracks are half a bank" keeps my expectations in check. That's all that's on bank 14 in this example. With bank 15 being my fixed bank.

Bild

I've mentioned it a few times, but it keeps tripping me up how much planning needs to happen before I can code anything for the NES. Trying to have a random battle layout? Better have all those data structures, attribute table boundaries, and pattern table layout planned well in advance.

Something modern game making hadn't prepared me for with NES games is the amount of planning and compression that needs to be thought out before you can put anything on screen. I've made more google sheets with this silly rpg than the rest of my games combined.

The lost source code convo reminded me of a little story about FFX, or how I ended up in the thanks for the remaster. In the 2000s, I made a FFX & FFX-2 Model and animation viewer. The thing kinda exploded on the neogaf forum as I recall. It was my first work around PS2 reverse engineering. ...

BildBild

A lesson learned messing around with an asm NES game is how delayed the gratification is. Something I take for granted in modern game images. I thrust my fists in the air after finally getting a compressed enemy character set to dynamically loaded where I wanted. But this pic is hard to show off :D

Bild

One nifty feature of my custom sound driver that I gloss over on here is the concept of variants. Each stage has "normal", "cave" and "pause" versions of the music, and I can hop between them at phrase boundaries. Also shown: a fancy new RTA timer for speedruns :D #nes #gamedev #screenshotsunday