The extended blog silence (3 months?! that may be a record, even for us. Here’s hoping we never break it!) should not be taken as a sign of inactivity, but rather intense activity leaving (sadly) no time to blog. A quick recap:
When we left off in June we were porting the simulation code (we started with the most important part, the player movement and collision).
July was spent porting all of the entities. Actually, it was more or less rewriting all of the entities from scratch, since the existing code was a useless, hacktastic mess. The end result is that the various stupid little misbehaviours in the original have now been removed: floorguards can be placed on any flat floor (i.e halftiles are fine), drones can be placed freely instead of only in the center of a grid cell, and (most excitingly) if you have tons of drones on a level they don’t drift out of sync with each other. There were so many many bugs in the original code…we’ve learned so much since then. No doubt in this rewrite we’ll create a new generation of bugs 🙂
August was spent “porting” (again, read: rewriting) all of the game and player logic (i.e being crushed, falling to your death, running out of time, collecting gold, etc.) and the ragdoll. This last item is still not perfect — the original has more “bounce” and is generally a lot more hilarious to watch, and the current ragdoll limbs have a disturbing propensity for crawling across the floor after being exploded — but it will do in a pinch, until we have some time to tweak it.
The first two weeks of September were spent integrating all of the graphics and sound; this was surprisingly easy thanks to the magic of .swc files, we had assumed it would be a nightmare since we had only ever worked with “pure code” actionscript 3 and never had to involve assets made in Flash.
(Hilarious note: the only way we can “remember” any of this stuff is by reviewing our work logs; memories of the summer are just a blur of work (plus attending many game-related events — there have been so many exciting things going on in Toronto lately!), but the logs show exactly what we were doing each day, which is super-useful in cases like this where you’re blogging retroactively about 3 months in the past!)
Which brings us abruptly to the present: these past two weeks were spent testing out all of our hard work by applying it to the very first exciting incarnation of the new “N v2” codebase: N Arcade
In retrospect the title of this post probably gave that surprise away. Oh well!
For all of you in and around Toronto, N Arcade will be unveiled (with fanfare, undoubtedly) at Nuit Blanche, which takes place October 2 from 6:57pm until sunrise. Specifically, it’ll be located in the atrium of the TIFF Bell Lightbox, as part of The Arcadian Renaissance, another great event brought to you by the Hand Eye Society.
The fantastic and multi-talented Jph Wacheski was tasked with building all of the cabinets for the Arcadian Renaissance, and he did an amazing job — here are some pics:
- N Arcade
- short Youtube video of the main menu
- jph’s flickr, showing the various cabinets he’s been working on
Anyway, if you’re in the Toronto area, come check it out if you can!
So What’s New?
It turns out that rewriting N really paid off — even if it did take twice as long as writing the original. Most of the work in making N Arcade was getting all of the menus/game logic/etc. stuff (and fixing a few bugs), figuring out Adobe Air (necessary after we noticed a last minute disaster: that when you run the flashplayer in fullscreen it HALVES the framerate.. WTF?!?!), and it was really amazing to have a nice self-contained game simulation that could just be easily dropped into the app framework and used.
Getting this project done was a totally awesome — albeit incredibly stressful, tiring and frenetic — experience. What’s even more exciting is that the v2 code is flexible enough to allow e.g new types of tiles or whatever sorts of similar changes we might want to experiment with.
Tragically, we didn’t have time to make any new levels, so this first iteration of N Arcade has three sets of 64 levels (“hard”, “harder”, “hardest”, haha), which are made of slightly modified levels specially chosen from all existing versions of N/N+. We tried to choose mostly easy levels, since the cabinet will be in a public place and is likely to be approached by many n00bs — and we don’t want any of them to get too frustrated/enraged.
Having said that, it is N, and it is an arcade game, so failing should be more or less expected if you’re not, you know, hardcore; if any of you N fans stop by the Bell Lightbox during Nuit Blanche, you will be more or less guaranteed a spot at the top of the highscores list. Extra cred!
We also played around with the rules a bit to make it more of a “quarter eater”: your timebar doesn’t reset when you die (it just keeps going down), and gold only turns into bonus time when you reach the exit. This was just an experiment to try and keep the flow of the game quick — the problem with regular old N in an arcade setting is that most players only stop playing N when they give up or get stuck on a level, which means that they often spend several minutes, if not hours, trying to beat the same level. This is not ideal when there is a potential lineup of people waiting to play!
Possibly the most intriguing part of the rewriting process was including support for an exciting feature which was vital to N Arcade: multiplayer! Maybe the two joysticks in the above pics kind of gave that away? 🙂
Before anyone gets too excited, this is strictly local multiplayer: no networking is involved. Still, it’s quite fun, and yet another feature that would have been impossible to add to the old code-base without massive headaches. N Arcade is setup for two-player co-op, but we have some other ideas for things to try in N v2.0.
So, now that we’ve finished frantically working on N Arcade, we get to begin frantically preparing for a trip to Tokyo — we’re leaving tomorrow! This will hopefully be as inspiring and energizing as the previous trip. Sadly Jon won’t be there this time, but our friend Jason “6955” DeGroot‘s there. (N trivia: the level name “Below The Groot” is a reference to both a classic DOS game (and the book of the same name) and Jason!) (N trivia #2: we have not actually used that name in a published level yet, but it’s in the queue)
We’ll be taking a 1-month break from N-related development to work on various small research projects, and then we’ll return to getting N v2.0 finished. Huzzah! And from there, who knows what the future will bring 😉