Video: Its Programmer, On SNES DOOM

I’ve been doing a lot of high-effort posts lately, even for things that should be fairly quick. Working to make this more sustainable, here’s a laid-back post that’s mostly just a Youtube video of a talk between the guys of Digital Foundry and Randy Linden, coder of the SNES port of DOOM, which uses the SuperFX chip to make the hardware push polygons at a rate that, while not stellar by PCs-of-the-time standards, at least not abysmal.

Let’s run down the differences of hardware:

PC running MS-DOS: targets VGA monitors, displays all its pixels in software, but makes up for it with a minimum requirement of a 386 running (if memory holds up over nearly 30 years) at 33 mHz.

SNES: Its processor is a much slower workalike of the 65C816, a 16-bit version of the 6502, running at 3.58 mHz. While it makes up for its slower clock speed with a simpler design, meaning instructions complete generally in fewer cycles, it’s hard to make up for that 10-fold difference in speed.

Their use of specialized graphics hardware was an important advantage, at the time, of consoles over personal computer hardware. Even many standard home microcomputers, like the Commodore 64 and Atari 800, had dedicated graphics hardware that helped games run better than what most PCs could do. Even when VGA came out, the standard had no hardware-level support for scrolling or sprites.

Consider what it takes to scroll a screen without hardware support: something in the system has to be able to move every pixel from one spot on-screen to another. The NES pulls this task off by having a bank of memory that its PPU can be pointed within, meaning the memory could stay in the same place, and the graphics chip would just work from a different region within it. Sadly, this technique is not amenable to 3D graphics, which usually do require every pixel on the screen to be recalculated every frame, either in software or hardware.

The SNES is known for having a rather slow chip for its time, but more demanding games tended to make up for it with co-processor chips included on the cartridges. The most well-known of these are the DSP-1, which functioned as a math co-processor; the SA-1, which was basically a second 65C816 running at around triple the speed and with a few added features; and the SuperFX, which ran at about the SA-1’s clock speed but functioned as a graphics accelerator. (The later SuperFX 2 ran at twice that speed.)

These were far from the only add-on chips included on Super Famicom and SNES carts. Since the SNES had a much larger address space than the NES’s 6502-clone, the need for mapper chips was much less, but these co-processors were used in a number of more notable games to help it make framerate goals.

Hm. Well, I tried making it a laid-back kind of post. Ah well, back to playing Live-A-Live.

DF Retro: The Making of Doom on Super NES – The Original ‘Impossible Port’

Sundry Sunday: Strong Bad Plays Vampire’s Castle

We’ve posted Strong Bad videos a few times before here, and for that I make no apologies. Left up to me we’d be a 24/7 Homestar Runner joint. But there already is a 24/7 joint of that nature, and it’s called homestarrunner.com, although we do have a more frequent update schedule than them these days.

This one’s special though in that it is a new Strong Bad video, one that went up late last Sunday evening. In it, the bulbous-headed wrestleman plays the short DOS text adventure Vampire’s Castle, which was written in less than 200 lines of BASIC code. It inspired the HSR Flash game series, previously linked, Thy Dungeonman, Nos 1, 2 and 3 (“Behold thy graphics!”), which you can still play (drumroll)… with Ruffle!

Vampire’s Castle is completely text, so the Baddest Strong enlisted the help of The Cheat to make illustrations of the rooms, which is where a lot of the entertainment value of this video derives.

Strong Bad’s Disk 4 of 12: Vampire’s Castle (30 minutes)

Video: Make Your Own Raycaster

A raycaster engine is a simple 3D engine that just draws lines from the player’s position to the nearest terrain wall for each horizontal pixel on the screen. It was what was used in one of the foundational 3D action games, id Software’s Wolfenstein 3D.

For those with a coding bent (the word bent seems so suitable when it comes to people who enjoy programming), Youtube account 3D sage demonstrates how to implement a raycaster in a series of three videos. The first one is embedded below:

Here are links to the whole series: Part 1 (17 minutes), Part 2 (14 minutes), and Part 3 (22 minutes)

Later he did another series on implementing the kind of engine that’s in DOOM, but we’ll look at that at a later date.

Sundry Sunday: Pepsiman Cutscenes

The past two Sundays have been devoted to Playstation cutscenes. Here’s one more.

Pepsiman is an infamous Japan-only PS1 title, created by KID, who produced the NES games Low G Man and Recca. The Pepsiman character was a mascot for Pepsi in Japan. How he managed to swing a Playstation game I don’t know. I assume it was released as a cheap promotional thing, similar to how Sneak King for Xbox 360 was distributed for $4.99 at Burger King in the U.S., but truthfully I don’t know where I got that impression. It’s probably false.

It had a low budget, so they put in these cutscenes with an American actor sitting at home with what I can only describe as way too much Pepsi, drinking, congratulating the player (in English), and exhorting them to consume the caramel-colored, cloyingly-sweet beverage.

The effect is akin to having bubbles of carbon dioxide diffusing through your brain. Please spend time in a decompression chamber after viewing, to avoid coming down with the Pepsi Bends.

Video: The Minimum Punches To Beat NES Punch-Out!!

Please forgive the two exclamation points in the title. We writers are only given a limited number of exclamation points to use every month by the shadowy Punctuation Cabal, but Punch-Out!!’s title has two of them in it, so to properly stylize it I have to use two each time. Wasteful! Oops, there’s another one. I’m just going to save them from here on out. But anyway.

YouTuber Pap is a TAS speedrunner, meaning, he deals with absolutes. He knows the state of the machine, and isn’t limited by any puny human reaction times, but works by recording button sequences that can be played back infallibly. He asked a question: what’s the minimum number of punches needed to play through the main game of Punch-Out? The answer is 120, but since the game has significant randomness, it’s really unlikely.

He presents what is probably the definitive answer, but that’s not really the interesting thing about it. His video is a master class on the game’s state, how it determines knockdowns and knock-outs, and how it awards stars. Some interesting things revealed:

  1. If a fighter ever gets up on a count of 1, connecting with a single star punch can knock them back down immediately.
  2. Many star punches are awarded based on successful punches where the opponent is not stunned or knocked down. You get them on a cycle based on a count that differs with each fighter. Special timing doesn’t have anything to do with it; it’s if the hit was successful of not. Late punches after stunning give star punches because the opponent is no longer stunned, not because they’re late.
  3. On top of that, there are random stars that are awarded sometimes. This randomness is significant for the minimum punch count challenge. But these stars can only occur if you already have at least one star! Keeping a star in reserve actually helps you earn more stars more easily.
  4. You having full health affects multiple boxers in significant ways, including sometimes turning knockdowns into knockouts.
  5. Soda Popinski has a trick where, if you hold down while he’s preparing to uppercut, he delays. He can then be gut-punched, and if you do, your next star punch will always knock him down.
  6. In the second fight with Bald Bull, I always wondered why it was difficult for me to counter his bull charge at first. Turns out, it wasn’t just me. The “long” version of his charge has a shorter success window, of just four frames! The “short” version, which happens if you dodge the long version, however, has a window of 13 frames. It’s so long it’s almost a gimmie. (I am resisting the urge to expend another exclamation point there.)
  7. The greatest minimum number of punches needed to beat any opponent is a tie between King Hippo (an atypical opponent in many ways) and Mr. Sandman (not surprising at all) at 20.
  8. The lowest minimum number is one, which can be gotten from Glass Joe (of course), the rematch against Piston Honda (huh) and the rematch against Bald Bull (what?).
  9. Mike Tyson/Mr. Dream can be defeated in six punches.

Sundry Sunday: Crash Bandicoot In Japan

It’s Sunday! Time to electrocute your brain with more game-related video weirdness. Electrodes at the ready!

In Japan, it seems, Crash Bandicoot has a completely different, and extremely earwormy, theme song. Well in the Japanese release of Crash Bandicoot 2: Cortex Strikes Back, if you hold Left, Circle, L1, and L2 when the Playstation logo appears, you get this entertainingly bizarre karaoke video showing off a long version of the theme, featuring Crash doing a signature dance move, cavorting with ladies in nightgowns and bikinis, and getting blown up by a jetpack, all right and proper activities to be had by an anthropomorphic marsupial.

The song also featured in commercials for the games in Japan. As an extra, here is a (very badly compressed) compilation:

There’s a more video weirdness concerning Japanese Crash Bandicoot, but let’s save that for later….

Masahiro Sakurai’s Game Design Series

Sakurai’s fifth video, on frame rates.

A lot of the gaming web has been fawning over Kirby and Smash Bros. creator Masahiro Sakurai’s design videos. I haven’t had the chance to look at them yet, but they look interesting at least. They’ve been coming out at a good clip, like one every two days.

Sakurai’s star is so high right now, that it’s worth noting that (going by memory) he left Nintendo with a bit of a cloud over his head, after Kirby Air Ride was seen as something of a failure. Nowadays KAR (nice acronym!) is seen as an underrated classic, and I have put many hours into its City Trial mode, which is terrific, a tiny open-world high-speed racing/party game. More people should have the chance to play it; it is unique, which is something I can’t say about many other games. While the 3DS version of Smash Bros. has a mode inspired by it, in versus mode human players cannot interact with each other during the exploratory portion of the game, which harms it somewhat.

At the height of his abilities, Sakurai can make really interesting and new kinds of games, like Smash Bros. was, and like Kirby Air Ride and (the sadly neglected these days) Meteos are. It’s a shame that Smash is so popular, one of Nintendo’s biggest tentpoles, enough to crowd out his other work. I’m really interested to see what the next crazy idea he comes up with will be!

Sakurai’s Game Design Videos, on YouTube

Sundry Sunday: The Adam West Cutscenes in the Golden Nugget PS1 Game

Its Sunday! Another week in the books! You made it. So, here’s a weird video something you may enjoy.

On the original Playstation there were a lot of games release, some good, some bad, and some rather strange. Since games were released on CD, there was a lot of space for full-motion video, and sometimes that allowed developers to build in some silly extras.

That’s what happened with the Golden Nugget game, a fairly standard gambling sim that was elevated to sublime levels of wackiness by its video clips. It’s a fairly standard shoehorned-in story, about a computer chip that allows one to win games of chance somehow, but then Adam West shows up, as “Mr Swayne,” starts Adam West-ing, and suddenly, you’re watching comedy gold.

There’s a lot of other-character-acting to wade through to get to Adam, so you’ll want to skip forward to 8:10 to see his first bit.

Video: “Bub” Plays Pac-Attack

“Bub’s Broadcast” is a YouTube channel put out by Taito, mostly to promote various Taito properties in Japan. “Bub” is a mascot character based off of Bub, a.k.a. Bubblun, from Bubble Bobble. It’s low-key, yet entertaining, fare.

This particular video is of interest though because Bub steps outside his usual stomping grounds, and plays Namco’s Pac-Attack, that Tetris-style puzzle game where you have to create paths out of falling blocks to guide Pac-Man to eat ghosts.

It’s in Japanese, but there’s English subtitles, and of special interest is that Bub reveals some possibly-unknown codes for the game. If you point at Hyper difficulty and hold L and R down when selecting it, the game will begin at Level 300 instead of 100. And if you hold Down and Right on the control pad while also pressing L and R, you begin near the highest possible difficulty, at level 900! Also revealed is that, if you charge up the Fairy meter all the way and a fairy comes out, but you don’t wish to use her ghost-clearing power, you can hold Up and press B repeatedly to cancel it, causing her to fly away and giving you 10,000 bonus points. It’s always interesting when these unknown game elements are revealed long after the games release!

Video: Identifying Luck in Mario Party

We just had a post on a long series of videos about Super Mario 64‘s the A Button Challenge, so why not do another? I’m sure this won’t abuse your willingness to put up with what scientists call “all my crap.”

Mario Party is a series that skill will only carry your so far into. After a certain point, only the favor of The Lady (not Peach or Daisy) can ensure your victory. But, how much of the game is up to the rolling of virtual dice? And to what lengths are people willing to go to find out? Well at it turns out, lengths of over 16 hours:

This series is not yet complete, in that creator ZoomZike has yet to produce one on Mario Party 7, or later games, but the one on Mario Party 6 is over five hours long all by itself! This is truly a level of obsession with which my own petty focii cannot hope to complete.

Sundry Sunday: Buggy Saints Row: The Musical

Oh this one goes way, way back. Since Saints Row is back in the news….

Back after the release of the first Saints Row game, long before the series went bonkers gonzo crazy-go-nuts and then got rebooted, it was really buggy. So buggy that longtime internet person Cabel Sasser (who helped make the Playdate and helped publish Untitled Goose Game) made a video about it with catchy music. Enjoy!

Replay Burners: Bubble Bobble True Ending

Replay Burners, a Japanese-language YouTube channel that hosts runs of various well-played games, especially arcade games, is a true gem. Unlike other channels like MamePlayer, World of Longplays, or (especially) Old Classic Retro Gaming, the plays on Retro Burners are done without invincibility cheats, save states, or tool assistance, all these things I find greatly annoying. A Replay Burners playthrough is played as it would have in a real arcade, which is what makes it interesting to me: you aren’t watching a hypothetical run by someone with theoretical infinite reflexes, or someone who can just throw themselves at enemies without fear. You’re watching someone who has developed real strategies approach the game in realistic ways, and frequently the difference is huge.

That is what makes this one (well, two) credit playthrough of Bubble Bobble good watching. It’s not that they play “perfectly,” they lose their first life on Level 58 and go on to lose a number more. But they’re not just playing for survival but for score, a mode of play often neglected in this era of cheap points and speedrun celebrity. They play through every level: they don’t skip levels with umbrellas or the warp door on Level 50, even though they’re eligible for it.

They do use a couple of codes, but the great difficulty of Bubble Bobble is such that one can hardly begrudge them that. One of them, to play “Super” mode, actually makes the game much harder in the early going, and is necessary anyway to get the best ending. The total length is 62 minutes, but of course you can skip ahead if you just want to see the end. Most of the game is solo, but they bring in a second player at the very end since it’s required for the best ending.

YouTube, Replay Burners: 1986 [60fps] Bubble Bobble True Ending ALL