Josh Goldberg - FullScreenMario

We had the chance to ask Josh Goldberg some questions in regards to FullScreenMario, the Super Mario Bros. clone that he made using HTML5. The site was in violation of the Digital Millennium Copyright Act (DMCA) and was shut down on November 1, 2013 by Nintendo. The open source code is still available via GitHub.

1) Could you tell us a little about yourself?
I'm a Junior at Rensselaer Polytechnic Institute, studying Computer Science.

2) Where did you get the idea for FullScreenMario?
Like a lot of people who grew up with 90s games, I get bursts of nostalgia that make me want to play them once in a while. Super Mario Bros and Pokemon are my big two, so I'd gotten a used Gameboy Color to play them on. It's very difficult to get back in the spirit of something when it's got a tiny little display, especially after getting used to playing on 1080p monitors. I wanted to be able to play games like SMB with the same level of convenience as Steam or Xbox games, and at the same pixel resolutions, so making the game from scratch seemed like a natural step for a programmer. Making it full screen was the point of the project to begin with; I knew from the start that making it a modern game was the key project goal, which is where the map editor and random map generator (features common to many of today's AAA titles) came from.

3) Why HTML5?
Distribution- I'm a big web proponent, in large part due to its incredible convenience and flexibility. Platform dependency is virtually nonexistent for most JavaScript projects; the very worst that can happen is being tied to 'just' one of the major, cross-platform browsers. Furthermore, going to a webpage is one of the simplest tasks anybody can do on a computer - I wanted people to be able to play as soon as possible, without installations or loading screens or other nonsense. All you had to do was go to, and in the second it took for you to put your hands on the arrow keys, the game was already loaded.

4) How did you first get into HTML5?
I'd tinkered around with JavaScript a bit in high school, then done a few HTML4-ish sites on request or for work, but didn't dive too deep until a little before Full Screen Mario itself. HTML5's very easy to get into, and for simple visual hijinks, messing around with CSS-styled div's is very hard to beat. FSM actually used to keep every single game element in its own HTML element, with CSS background-images... very inefficient, but not too difficult to upgrade into using canvas.

5) Could you tell us more about FullScreenMario and how you made it?
I started working on Full Screen Mario around October of 2012, and it's by far the most time-consuming, frustrating piece of crap I've ever done. It started out really small, with some really simple collision detection and basic 2D physics of the first level - I remember thinking "man, this first level better be done by Thanksgiving or I'm gonna scrap it." I just kept adding more and more features - more in-game objects, more maps, more physics... The entire Full Screen Mario project was done with Notepad++ on Google Chrome. I took quite a few breaks, some voluntary, some not, but overall I'm very proud of having gotten a moderately polished product out after a year of development.

6) How many people tried FullScreenMario?
We'll never know the exact number, but there were 2,678,740 unique visitors on the site before it got shut down on Novemeber 1st. The GitHub page has a few hundred watches, a few thousand stars, and almost a thousand forks. The game's popularity really only hit home for me when someone posted on my Facebook a picture they took of some stranger playing it in one of our classes, that cracked me up.

7) What previous projects have you worked on?
Not too much! I did a few things for the school, a lot of classwork, and some personal stuff here and there. I do have an internship in a neuroscience lab, which entailed creating the Drupal site along with a bunch of mostly back-end management tools for the lab.

8) If you could work for any game developer, what one would you choose and why?
Bungie! I'm a huge Marathon junkie (which is why so many numbers in FSM's code are multiples of 7 or 96) and spent a ridiculous amount of time playing Halo as a teen. They've got a great community and I'd love to work there. If I had to choose a single point of inspiration for FSM, it would probably be the Aleph One project.

9) What do you think you might be working on next?
Definitely fixing Full Screen Mario, and probably making other Full Screen stuff. Full Screen Mario's clearly more than a side project now, but most of the code's still a jumbled mess. I've been spending my free time on taking the different sections of code and turning them into their own modules. The end goal for this will be a flexible, customizable framework that can support anything from smaller mods to completely different games. If you think a simple Mario remake is cool, imagine how amazing a web-based Pokemon (Gens I & II) redux could be with the power and flexibility of HTML5.