Notes and oddities

Interesting things the analysis turned up, and what is still unknown

日本語 | English | Français | Español | Italiano | 한국어

The special code built into the game

Every barcode result is decided by calculation, one would like to say, except that there is exactly one pattern that is not. When the scattered internal registers match one specific value, the draw and the stat calculation are both skipped and a fixed result is returned. The code recorded with a product name against that pattern is the Super Famicom game Dragon Ball Z: Super Butouden, 4902425373737.

Scan it and you get Super Saiyan Goku, HP 59000, BP 49990, DP 49990, special move Lv.4. BP and DP of 49990 are impossible through the normal path: BP and DP are normally halved, which caps them at 48750 and 49750, and the special code skips that whole calculation so no halving happens. It is tempting to read this as a reward for children who bought the company's own game, but the developers' intent is not something this analysis can recover. What it can show is that one code, belonging to a Bandai title, was singled out for special treatment.

Since the leading two digits and the check digit are not used in the decision, a code with the prefix swapped, such as 4502425373739 (check digit recomputed), produces the same Super Saiyan Goku. The ceiling reachable by ordinary codes is on the strongest barcode page.

Why Frieza's third form never showed up

Anyone who played this at the time probably remembers that Frieza's transformed states simply never appeared. The analysis puts numbers on that memory. Third form requires all of:

  1. drawing Frieza's first form, which holds one ticket out of sixty
  2. then having all three stats at or above 50000 / 26000 / 25000
  3. while not reaching 60000 / 30000 / 30000, which would overshoot into fourth form

The chance of a random barcode landing in that band is roughly 1 in 8,000. When an earlier researcher who had collected around 500 codes wrote that "Frieza's third form has only one known pattern", that was entirely reasonable statistically. Cell's third form is rarer still, at about 1 in 17,000. It is the same reason those forms show up as "no product name recorded" in the character table.

Korin's room. The BARCODE DATA panel shows Frieza's third form with HP 50000, BP 50000 and DP 25000.
Frieza's third form — the one-in-8,000 band. Source: a screen from Dragon Ball Z: Gekitou Tenkaichi Budoukai (Bandai, 1992), quoted as evidence.

Which shelf to shop from

The first seven digits of a JAN code identify the manufacturer, which means choosing a manufacturer fixes the range of results available to you. Enumerating the whole product-code portion (the last five digits) gives a shopping guide:

What you wantWhere to lookExpected rate
Frieza and CellSapporo Ichiban (Sanyo Foods, 4901734)about 1 in 7 gives Frieza 1st form, about 1 in 40 gives 2nd form
Super SaiyansLion household goods (4903301)about 1 in 25
Items and dragon ballsKao, Lion, Suntory, Nissin, Lotte and others whose 7th digit is oddabout 1 in 2 falls into the item slot
HP 99500 class monstersMinor, hobby and import prefixes whose 3rd digit is 2, 3, 6 or 7major national brands (4901–4903) structurally cannot produce HP 99500

Conversely, many large manufacturers' codes never produce Frieza or Cell at all, because the bits used in the character draw are pinned unfavourably by the fixed manufacturer portion. "Only Sapporo Ichiban gives you Frieza" sounds like a joke and happens to be true.

These rates are theoretical values obtained by enumerating all 100,000 product codes for a given manufacturer. Only a fraction of those codes correspond to products that actually exist, and assignment is not uniform, so what you meet on a real shelf will not match these figures. Treat them as a guide to which aisle to walk down.

What the mismatched records turned out to be

Checked against the scans earlier researchers recorded, four of the eighteen 8-digit codes were off by exactly one field. That sat here as "cause unknown" for a long time. Re-checking each of them in the game itself settled all four: every one is a slip in the original record.

One was simply a stat copied down wrong; the code itself was fine. The interesting ones are the other three, where the digits on record were not a valid barcode in the first place. EAN-8 carries a check digit, and the Datach's reader does verify it. A sequence that fails that check is rejected at the reading stage rather than producing a result — so, since a result was recorded, something readable must have been scanned at the time.

Searching each of the three for a candidate that becomes valid by changing a single digit gave exactly one answer in every case, and in all three it was the last digit. Scanning the corrected codes reproduced the recorded character, HP, BP, DP and special move level exactly. Miscopied digits, then.

The two names observed on a Lv.4 Goku, Genki Dama and Kaio-ken, fell to the same method. The original manual lists every character's four special moves, and Goku's are Kaio-ken at 3 and Genki Dama at 4. The Kaio-ken seen at Lv.4 belongs to Super Saiyan Goku: a promoted character switches to a different row of move names entirely. Scanning the three codes recorded as "Goku, Lv.4, Kaio-ken" displayed Genki Dama, so those were miscopied too. The move name is fixed by the final character after promotion and the move level, and no mysterious branch exists.

What is still unknown

The generation rules themselves, meaning who is born and with what stats, have been fully recovered. One thing remains open, in the display layer.

If you find a case where real hardware and the barcode tool disagree, please say so. As a counterexample to the algorithm it would be the most valuable information there is.