Tuesday, May 26, 2009

Semester in Review

Now that the semester has ended, here is an overview of how this project has evolved over the past...twelve(?) weeks and what we've been up to.

We dove in learning everything we could about the system itself, and the basic "theory" behind how it works. The various components that make up a Super Nintendo and how they all communicate and work in conjunction. This lead to the obvious jump to learn assembly, specifically 65c816 asm. The first four weeks or so were spent learning this, Yoshi's Super Nintendo Document and the Wikibook on SNES Programming being particularly helpful. There was also a really great starters guide called the SNES-Starterkit that was extremely useful to me and helped get me started off. After accomplishing the first sort of intro to the language (making the SNES boot with a green screen), went on to poke around a few other things such as a "hello world" and editing the assembly in simple roms from the starter kit. Around this time I also started to experiment with vSNES and Super Street Fighter II, just poking around basic hex adjustments and seeing what I could do. I was specifically interested in messing with the PPU, where the tile maps and sprite data are stored. After poking around in SFII some I worked my way on to Killer Instinct and Mortal Kombat II, all fighting games. The earliest videos we have were the results of this.


While this was going fairly well, I was still having a difficult time working with WLA-DX and getting the roms to assemble properly all of the time. As a result, I started looking more into third party apps that jumped the need for the assembly. I found a particular interest in pallete swaps, which natrually led to sprite and tile set editing, and eventually text editing. I got really into Tile Layer Pro, which is designed so any old fool can use it, and the previously mentioned Pallete Finder app was a life saver. At this time I was also interested in finding out how to transfer ROM data from PC to a cartridge via EPROM and was really eager to pursue it, but unfortunately was something that we were never able to get around to. I continued to experiment with SFII, as well as a little with F-Zero and Mario RPG. I abandoned a lot of hope for Mortal Kombat II after about two weeks of trying to figure out how the graphics were compressed in the tileset.

As the last portion of the semeseter began to approach, we began to narrow down the direction we wanted to take the project, and I found a particular interest in SFII, specifically working with sprite editing and text editing. Eventually one night when doing a bunch of sprite tests I worked out the simple "block fighters" test, which seemed to jump out from all of the other tests I was doing at the time. Chris and Jeff both seemed to like it, and over the next few weeks we eventually worked it into the final concept of the deconstructed fighting game, "Street Friends II." The idea behind it was to take the linear fighting videogame, a stereotypical product imbeded throughout our childhoods, and play off of it by creating a simplified game that denies what it was made to be. Instead of travelling the world fighting tournaments, you travel the world visiting friends. No health bar, no conflict, only high fives and good times. We were also looking to deconstrcut the image of the fighting game, with its predicatble characters, dialogue, and settings, and utilize that imagery to our advantage. The final few weeks were spent using what I had learned from experimentation over the past ten weeks into creating the final version of the ROM, which included custom built controllers by Chris featuring a joystick (literally a stick) and one button, simplifying the gaming experience.

Around week nine Chris and I also started to take apart our Super Nintendos and see what we could do simply with analog hacks, and after losing a few nintendos, Chris designed this great modular-bending system for SNES Carts. The end results were great, and we should have some videos of that up soon. I'll also be uploading the final ROM edit soon, so you all can give it a go. Additionally, I have a bunch of palette files for Tile Layer Pro as well as offset locations for the palette data which I'll post here, just in case anyone is interested in editing the tile set in SFII themselves, because it'll save you a lot of time in the long run. More videos to come as well, and all questions/critiscism are welcome


No comments:

Post a Comment