News:

For my part, I've replaced optimism and believing the best of people by default with a grin and the absolute 100% certainty that if they cannot find a pig to fuck, they will buy some bacon and play oinking noises on YouTube.

Main Menu

Video Game Design Making Of Thread

Started by Triple Zero, December 16, 2011, 11:17:34 PM

Previous topic - Next topic

Triple Zero

Hm I thought I had many more of these and I figured I'd merge them, but I don't. I'm still retro-fitting this thread for re-use though. BECAUSE I LOVE ORDER :fnord:




How Supermario Bros 3 was made

QuoteI picked up a children's picture book at the local library recently. Some of you might be thinking, "Why would you take out a Japanese picture book? Are your Japanese language skills that atrophied?" Well, this happened to be a very special book, because it showed kids how Nintendo games are made, from start to finish. With some fantastically juicy pictures! And not only that, the game it focussed on was Super Mario Bros. 3!

http://www.chrismcovell.com/secret/weekly/Stars_of_the_Family_Computer.html
Ex-Soviet Bloc Sexual Attack Swede of Tomorrow™
e-prime disclaimer: let it seem fairly unclear I understand the apparent subjectivity of the above statements. maybe.

INFORMATION SO POWERFUL, YOU ACTUALLY NEED LESS.

Telarus

Telarus, KSC,
.__.  Keeper of the Contradictory Cephalopod, Zenarchist Swordsman,
(0o)  Tender to the Edible Zen Garden, Ratcheting Metallic Sex Doll of The End Times,
/||\   Episkopos of the Amorphous Dreams Cabal

Join the Doll Underground! Experience the Phantasmagorical Safari!

Triple Zero

Dunno if you guys are familiar with a game called Another World or Out of this World [North America].

It's sort of an adventure/puzzle/action game, released in 1991. The most significant thing (IMO) about this game is that it fit on a 1.44MB floppy, yet it features an enormous amount of graphics, free-form game levels and gorgeous backgrounds.

While it's (now) reasonably obvious they achieved this incredible feat of compression with vector/polygon based graphics (which doesn't make it less impressive), I kinda figured something like that when I was younger but I couldn't quite put my finger on it, another very interesting property of this game is that it fully runs in a custom-built virtual machine that is only 20k. Which offered the advantage they would only have to port this 20k VM to different gaming systems in order to port the entire game.

Check out the review here:
http://fabiensanglard.net/anotherWorld_code_review/index.php

And here's a video in which Eric Chahi talks about the Genesis of Another World [I'm assuming that's the original creator].
http://www.gdcvault.com/play/1014630/Classic-Game-Postmortem-OUT-OF

There are a couple more links in this HN thread:
http://news.ycombinator.com/item?id=3385207

(http://www.actionbutton.net/?p=431 essay/review, http://www.anotherworld.fr/anotherworld_uk/another_world.htm in-depth history of the game from author's homepage, http://www.youtube.com/watch?v=Zgkf6wooDmw some gameplay footage, http://www.megidish.net/awjs/ the unavoidable JAVASCRIPT VERSION)

Also interesting:
QuoteThere used to be an open source Another World interpreter available called RAW, created by a guy called Gregory Montoir, which eventually shut down the project at the request of Eric Chahi (the creator of Another World) around the time when the game became commercially available again. The original project page is still on archive.org:

http://web.archive.org/web/20070124142934/cyxdown.free.fr/ra...

Eventually another project cropped up called New Raw, which as far as I can gather was a fork of the then deceased RAW, but it didn't go anywhere. You can still download the source, however:

http://newraw.svn.sourceforge.net

I remember dusting off my floppy copy of Another World years back and running it through RAW on Linux, it ran the game pretty flawlessly, with a bunch of added features like high resolution (the game is all vectors).
Ex-Soviet Bloc Sexual Attack Swede of Tomorrow™
e-prime disclaimer: let it seem fairly unclear I understand the apparent subjectivity of the above statements. maybe.

INFORMATION SO POWERFUL, YOU ACTUALLY NEED LESS.

Triple Zero

And here's two really good write-ups on How Videogames Cheat To Help Players: it turns out that what makes a huge difference between an otherwise goodlooking and interesting game, is how much effort has been put into tweaking the game until it doesn't simply translate the player's input literally into game-actions, but tries to discern the player's intent. To the extent that the code can understand the player's intent, it should act on that intent rather than on the raw input.  Do what I mean, not what I say. Even if that means breaking the gameworld's "physics" once in a while.

And yes, it makes the game easier, but also a lot more fun to play, especially when you make it more challenging in other ways to compensate. Nobody wants to have to position their game character at the exact right pixel position just to pass the level (another thing if you do it to exploit some "trick", like a rocket-jump or something).

RobotInvader: Locomotion Smoke and Mirrors

SemiSecretSoftware: Tuning Canabalt



And, somewhat more generic coding-related (so I put a horizontal ruler here), but I just wanted to quote this bit because it really resonates with me:

Yield Thoguht: Make Exceptions
QuoteToday, I'm taking a stand: adding special cases – making exceptions – is the single most important thing we can do.
It's All Fun And Games Until Someone Loses An AbstractEyeMonsterFactoryFactory Class

I wrote lots of little games when I was learning to program and I'm guessing you did, too. I made them because I wanted to play them, and that meant I tried to generate levels and enemies randomly in the hope that my own game could surprise me. I didn't want to add special code for boss monsters or for each level – that would defeat the point. Every level had to run the same code, just with different data. No special cases, remember?

Well, all of my games sucked. Sometimes the mechanics were fun enough, but after a couple of levels the game just got boring. Algorithmically-generated enemies and levels simply weren't interesting, because after a while the patterns became obvious and then there was no reason to keep exploring deeper into the game; one level was much the same as any other.
The bolded bit right there. I've said it before, but that is why I program computers, it is why I studied Computer Science. I program the computer because I want it to surprise me. Not because I crave surprise that much, or because only a computer can provide me with the right kind of surprise, nah nothing like that:

There's just something incredibly intriguing about taking something so utterly deterministic as a computer program, and getting it to produce something novel and surprising. It's the same reason why I'm so interested in the concept of Emergence. Why I got into Artificial Intelligence,--but AI is the wrong place to look for this, it turned out (and so is Machine Learning, even though it's very interesting, mostly because it works so well and gets you more reliable results than AI), while it is related, intelligence is just one of the many surprising and novel things that can happen in a deterministic rule-based system, and AI research doesn't really focus on this element of surprise, besides, there's so many much simpler systems to look at that already exhibit this behaviour than aiming at full-blown Artificial Intelligence. And then there's of course Fractals (simple formula, surprising complexity, especially Mandelbrot), and Genetic Algorithm Optimization and other Evolutionary Algorithms (the purest examples of computer generated creativity) and finally it turns out you can *use* this sort of thing in compression and optimization algorithms, simple variations in parameters that produce surprisingly complex and detailed data, kind of like the Another World example above, except I used it to build 4096 byte demos in the demoscene because that way it doesn't matter what *exactly* the output is, as long as it looks surprisingly pretty for such a tiny program.

I could go on, but that's my passion, right there.
(well, that and explaining complex technical things to people in ways they can understand, at the level they can understand, especially if it's my mother or 8-12yo kids)
Ex-Soviet Bloc Sexual Attack Swede of Tomorrow™
e-prime disclaimer: let it seem fairly unclear I understand the apparent subjectivity of the above statements. maybe.

INFORMATION SO POWERFUL, YOU ACTUALLY NEED LESS.

Pæs

I really enjoyed those articles on discerning player intent!

Good stuff to keep in mind, making sure you don't punish people too severely for minor errors in reaction time.

Triple Zero

The creator of the oldskool classic Prince of Persia discovered his lost source codes in an old box of disks in his dad's attic or something:

(talking about the ancient 2D platformer here, not the later 3D sequels)

http://www.geek.com/articles/games/prince-of-persia-creator-finds-lost-source-code-23-years-later-20120329/

And a bunch of articles of follow-up, he's open-sourcing it, among other things:

http://thechangelog.com/post/21314257945/prince-of-persia-source-code-open-sourced
http://jordanmechner.com/old-journals/1985/10/october-20-1985/ (this is actually a really old post, I believe it contains video bits from filming the guy doing the iconic Prince of Persia jumps and cliff-hanging, check it!! if you ever played that game you're bound to recognize the movements)
http://jordanmechner.com/blog/2009/11/the-making-of-prince-of-persia/
https://github.com/jmechner/Prince-of-Persia-Apple-II
http://jordanmechner.com/wp-content/uploads/1989/10/popsource009.pdf

(slight disclaimer: I only read a couple of the above articles, but I didn't save the links so this is a general summary from the buzz around this topic, copied from http://www.hnsearch.com/search#request/all?q=prince+of+persia I might even have missed some good bits, so be sure to click around)
Ex-Soviet Bloc Sexual Attack Swede of Tomorrow™
e-prime disclaimer: let it seem fairly unclear I understand the apparent subjectivity of the above statements. maybe.

INFORMATION SO POWERFUL, YOU ACTUALLY NEED LESS.

Triple Zero

Another recent link I forgot: http://www.wired.com/gamelife/2012/04/prince-of-persia-source-code/?pid=2480&viewall=true (haven't read this one yet, I believe it's about the people that helped recover the data from those ancient floppy disks--not a trivial task, most of the disks from that era are nearly unreadable due to magnetic deterioration)
Ex-Soviet Bloc Sexual Attack Swede of Tomorrow™
e-prime disclaimer: let it seem fairly unclear I understand the apparent subjectivity of the above statements. maybe.

INFORMATION SO POWERFUL, YOU ACTUALLY NEED LESS.