project-image

The New 8-bit Heroes: New NES game and creation documentary

Created by Joe Granato

Latest Updates from Our Project:

Betas and bugs!
almost 9 years ago – Fri, May 12, 2017 at 08:56:10 AM

So the Mystic Origins prequel / beta tester carts ship out today and tomorrow.  Keep in mind, we still expect there to be some hidden bugs to find, as these are beta tester carts for a reason.  For instance, just yesterday a tester discovered a new glitch!  Fortunately, for the final Mystic Searches, this will be easily remedied.

We are aware of one other *glitch*, which is not at all game-breaking but is certainly functioning incorrectly.  It happens if timing on doing a thing is very particular, so it went unnoticed until very recently. 

Very curious to see what other glitches you official beta testers will find!

Here's a video with a look at the glitch in the engine found last night?

Sound off below - do you like seeing videos of bug reports like this?  If so, we'll keep you updated this way!

Joe

Slight delay on order shipping for Mystic Origins
almost 9 years ago – Thu, Apr 27, 2017 at 10:55:07 PM

Hey everyone - orders will ship out a few days behind for the Mystic Origins cartridges do to a faux pas on the manufacturing end.  Unfortunately, it's things like this we have very little control over, and why sometimes the time table of this project is impossible to predict.  However, since Mystic Origins also helped serve as a trial run for cartridge manufacturing time and whatnot, this will help us sidestep this problem for Mystic Searches.

I thought I'd take the opportunity to demonstrate *what is wrong* to give even more behind the scenes glimpses into NES development.

First, let me show you the difference between what happens when you play one of our prototype boards versus when you play one of the newly manufactured Mystic Origins boards...same exact data flashed to each:

If you didn't realize what to look for - on the prototype cartridge, when you return from the menu screen, the game resumes as normal.  On the new cartridge, when you return from the menu screen, it still *sorta looks* like the menu screen, but the graphics are different and your player is back.

These boards were manufactured by the same person.  It is the exact same data on the cartridges.  So...why does one run fine while the other appears to *glitch out*?

This has to do with just how important the hardware itself is integral in how NES games behaved.  Specifically, this *glitch* has to do with something called nametable mirroring.  I will try to explain mirroring as simply as I can.  For those that know a lot about NES programming, I know there are more detailed and better ways to explain this, but I'm going for more of a common, quick explanation.

Most commonly, NES games graphic chips hold up to 2 screens worth of tile data.  This is how many games achieve scrolling.  Super Mario Brothers, for instance, lays out successive data horizontally.  When screen0 is showing, screen1 is just to the right of it.  When screen1 is showing, screen2 is just to the right of it...so when you move, the memory values get overwritten with the new data row by row, giving the impression that the character is *moving* through a level (and that it is scrolling horizontally).  Other games (the first level of Kid Icarus came to mind) use vertical scrolling.  In a game that uses vertical scrolling, it is similar but the new screens appear to the top or bottom rather than to the right or left, and the character can appear to move vertically.  

The NESdev forums have a really clear visual as to what is happening with scrolling.  

Scrolling in Super Mario Brothers, BTS
Scrolling in Super Mario Brothers, BTS

$2000 represents the starting memory address for nametable 0, $2400 represents the starting memory address for nametable 1.

A game that is set up like this would use *Vertical Mirroring*.  The game is moving horizontally, which means that the *vertical* nametables would be mirrors of the data that is in $2000 and $2400.  Data starting at $2800 would be the same as at $2000, and data at $2c00 would be the same as at $2400.  Like this:

Vertical mirroring, for horizontal scrolling
Vertical mirroring, for horizontal scrolling

You can see, the nametbales at $2000 and $2400 are *different*, while the nametables at $2800 and $2c00 mirror them respectively.  Here is Super Mario Brothers nametable layout:

 

If you had a vertical scroller, you would likely see *horizontal mirroring, in which the data would be set like this:

Horizontal Mirroring, for vertical scrolling
Horizontal Mirroring, for vertical scrolling

Now, $2000 and $2800 are different, and $2400 and $2c00 are mirrors of them respectively. 

Here is Kid Icarus's nametable layout:

 

If all of this seems pretty abstract to you, consider that a screen is a collection of tile data.  It is a bunch of references to the 8x8 tiles that are loaded into memory.  It should be easy to see in this Castlevania screen, gridded out.

Castlevania, on the grid
Castlevania, on the grid

Each one of those little grids represents a memory address...and each of those memory addresses has a tile number that can be placed in it.  You can see, all the tiles in the last few rows are all solid black...they are probably all the same tile value.  All of the *fence tops* are the same as well, and they are all the same value.  If you look through, you can see how brilliantly such detail is constructed using repetitive tiles in this example.

Anyway...

We don't have scrolling in Mystic Searches.  Instead, we use our second screen to handle anomalous screens like menu, shops, etc.  We do this so that we can preserve nametable and collision data on our main screen when we go to a shop or menu or whatever (you can look back through updates and find where we decided on this, actually).  Originally, the main screen's nametable was just overwritten with the menu data.  But...then when you returned to that screen, it would be like you just entered the screen and undo anything you may have done (slashed bushes, stomped rocks, unlocked secrets, lit torches, etc).  So we decided to use the second nametable to handle these types of screens.  Essentially, when you enter the menu, you *scroll* all the way to the second nametable when the screen is dark, showing you the menu, then when you go back to the game,  you *scroll* all the way back to the main nametable.  Since we never change that data in this scenario, only the scroll, the screen is perfectly preserved how you left it.  It was a neat little trick!

Unfortunately, when we sent out the game to the manufacturers, they gave us the WRONG type of mirroring.  So essentially - when you go to the menu, instead of overwriting the second nametable, it overwrites the *mirror* with the data for the menu graphics.  When you them go back to the main game, the values have changed (because whatever you do in the mirror affects the nametable it's mirroring too).  The mirroring type is set up on the hardware.  So this is a case where instead of the software being the problem, the hardware...a solder in the wrong place...caused a major glitch.

The manufacturing company is sincerely apologetic for this..they tested the game, but never tested going to the menu...just made sure it fired up and moved around the overworld to see if it was functioning.  They are rush delivering a new set of boards that has mirroring set up correctly.  After that, we will be having a un-screwing party, followed immediately by another screw party....(oye...my hands!).  

So this may delay delivery by a matter of days, but we plan to send Mystic Origins out mid week next week!  Most of you may have not even noticed had I not said anything, but I wanted to make sure to let everyone know what is happening. 

The New 8-bit Heroes, Trailer #2
almost 9 years ago – Tue, Apr 25, 2017 at 11:36:57 AM

Here is the link to The New 8-bit Heroes, Trailer #2!  I'm considering this our *social media* trailer, as it can be watched passively and, with large fonts and overt imagery, can still convey the idea of the film.  It's definitely more *the fun* trailer as well, with upbeat music and a few lighter lines from the movie.  For those of you who have seen it, I'd be curious to know which trailer you think better represents the film!

Please, help us spread this link all over whatever social networks you use...facebook, twitter, instagram, myspace, friendster, AIM...man, I'm right back to the initial Kickstarter pitch, aren't I?  Hahaha.

Go here.  Share away.  Help us get the word out!  :-)

https://www.facebook.com/TheNew8bitHeroes/videos/1482644571746055/

You rock!

If anyone ever doubts that this is a labor of love....
almost 9 years ago – Sun, Apr 23, 2017 at 04:27:41 PM

If anyone ever doubts that development of this project is a labor of love...I implore you to spend two days carefully placing boards in plastics and screwing in these little screws to assemble the cartridges...

And this was just for the special bonus of the Mystic Origins beta...the full Mystic Searches game will require at least ten times the amount of *screw time* (phrasing!)!  Should I begin now to save and prepare for the carpal tunnel medical bills?......haha

Next...to print and apply the labels :-)

100 Yellow Official Beta Tester carts, 10 orange Official Production Team carts
100 Yellow Official Beta Tester carts, 10 orange Official Production Team carts

 

Mystic Origins, unboxing and assembly!
almost 9 years ago – Sat, Apr 22, 2017 at 12:22:32 PM

 For those that ordered the official beta tester cartridges for Mystic Origins, the boards and plastics arrived today!  Here is the official unboxing, and the assembly and testing of cartridge #1!

These cartridges will go out this week...what a big week this will be!  New trailer slated to hit, the Sunscreen Film Festival, and sending out the very first hardware component that resulted from The New 8-bit Heroes project!