• Welcome to ZD Forums! You must create an account and log in to see and participate in the Shoutbox chat on this main index page.

Why does Link have pink hair in A Link to the Past

ExLight

why
Forum Volunteer
The simpler reason seems to be the more obvious to me: intentional to contrast with the many green/brown landscapes in the game, as well as being distinguishable from Link sprite's own skin.

It actually was not a SNES limitation. At all. It was development error. Essentially what was done was that when the Bunny Link sprite was created, it just used the regular Link's palette even though it had its own palette like all NPCs and enemies do too. And for whatever reason, no one realized this, so whenever they tried to give Link his correct hair, it messed up Bunny Link and they couldn't figure out why. Instead of fixing the bug they just gave Link pink hair. A game modder called Puzzledude discovered the actual cause of the bug in 2017 and another called rainponcho found a way to make Bunny Link actually use his own palette, allowing normal Link's palette to have his own hair color.
Can you post the links containing these findings? I'm a bit confused by them.

It still doesn't sound right. Link's hair color is a different pink from any of the Rabbit Link's palette, so it's not like it's importing from the other sprite.

If the glitch really is because of them sharing the same palette I think it goes back to the discussion of it hitting the color cap limit, if that was the case I think the pink would've been potentially from the placeholder background color they use to add transparency to sprites?
 

ExLight

why
Forum Volunteer
There also seem to be plenty of screenshots of early versions of the game where Link already had pink hair, meaning this was well known very early on. Detaching Bunny and Normal like from the same spritesheet (assuming they even really were in the same one) is probably easy to do, and is definitely not something that would go unnoticed for a game developer. I definitely find it weird that "noone noticed" and "noone knew how to fix" in this case? Even if it was an accident, the decision to keep it on was fairly deliberate.

It also seems like there are quite a few mod patches that easily tweak the color of the hair, which would be weird if there was something like a glitch preventing that from happening. Specially when you already have plenty of colors that can be swapped around.

and I know I already mentioned contrast before, but when researching I found a video with an interesting argument that brings up the low resolution of the CRT TVs of the time, doubling down on the importance of having different colors to highlight each of the features of the sprites.

And honestly as to why exactly pink, it wasn't even a new hair color to the japanese audience. Link has red/pink color in some of the Zelda II licensed mangas.
 

Emma

The Cassandra
Site Staff
Joined
Nov 29, 2008
Location
Vegas
The simpler reason seems to be the more obvious to me: intentional to contrast with the many green/brown landscapes in the game, as well as being distinguishable from Link sprite's own skin.


Can you post the links containing these findings? I'm a bit confused by them.

It still doesn't sound right. Link's hair color is a different pink from any of the Rabbit Link's palette, so it's not like it's importing from the other sprite.

If the glitch really is because of them sharing the same palette I think it goes back to the discussion of it hitting the color cap limit, if that was the case I think the pink would've been potentially from the placeholder background color they use to add transparency to sprites?
Here.

The Bunny Palette Issue

It's all very technical because this is experienced modders talking to each other. The gist of it is that Link has four palettes, Palette 1 is Normal Link, Palettes 2 and 3 are his alternate colors for the Blue Mail and Red Mail, and Palette 4 is Bunny Link. But Bunny Link was actually coded to point to Palette 4, so when you changed it, bunny Link changed with it. however, since Bunny Link was coded improperly, after certain actions like opening the map, it switches to Palette 1 and, if the two palettes are not identical, the sprite gets corrupted. If they are identical nothing changes. This is clearly not intentional behavior. It had an example of Bunny Link getting messed up if you changed Palette 1.
110.png
210.png


This would not happen if pointing to Palette 1 was intentional. If it was intentional, the sprite would not have been corrupted like that. And it makes no sense to have a sprite start with Palette 4 but change to palette 1 if you just open the map. It really is just a bug with the palette. The solution here was to force it to always use palette 4 so normal Link can freely use his own three palettes. This fix is used in the A Link to the Past Redux romhack, an extremely popular and well loved fan fix mod, and there are no contrast issues at all. Most emulators have accurate CRT filters and it doesn't create any issues there. It really was just a bug.

2594screenshot1.png
2594screenshot4.png


The reason that this bug was hard to find is that Link needed his own custom code to use palettes and didn't use the same system that, say, a typical NPC would use so the fact it was pointing to the wrong place wasn't obvious. But that there was always a specific palette for Bunny Link was always visible in the code. And because it only broke after opening the map, it wasn't clear what the issue was because Bunny Link was using the correct palette before that. There's absolutely zero way this was intentional. They had a bug, couldn't figure it out before release, and just settled with Palette 1 being an exact copy of Palette 4, there for giving Link his pink hair, and copying the hair to Palette 2 and 3 for consistency.
 

ExLight

why
Forum Volunteer
From my understanding of that threat, it's talking about using a palette 4 sprite that pulls their color from palette 1 in the Dark World. If you don't have a moonpearl and forcibly try to use said custom sprite while in the Dark World, it will attempt to use the sprite (in this case the custom Bunny Link) but pull from the palette 1 instead, resulting in a color glitch. If this is in the original game, it would happen specifically if you tried to use Link (with no mail, but presumably would happen to palettes 2 and 3 too) in the Dark World before you should.

Under normal circumstances, isn't the Bunny sprite pulling from its own palette (4) instead of trying to use palette 1? Because from my understanding it's only triggered when your palette 4 sprite enters the Dark World without a Moonpearl flag (turning into Bunny link trying to pull colors from green tunic Link sprite, not the other way around), which is a scenario that might be frequent in hack ROMs but definitely not in the original game. So it seems to be completely unrelated to the pink hair, and I'm a bit lost as to where was seen any correlation between those.

In fact, one of the modders points out in that thread:
"So it means that basically the bunny has it's own palette, instead of the legendary assumption that Link's hair was pink because of the shared palette with the bunny.
Good to know it wasn't that way, as we now have 4 different palettes for 4 different sprites available."
Meaning again that Link's pink hair was a deliberate choice in its palette.

Overall, I'm skeptical that its part of the glitch considering that: it's only a very specific area that is affected (you can see in the screenshot showcasing the glitch that it affects the sprite as a whole, altering all colors and even reverting the luminosity rather than just an isolated region), and the pink hair being present throughout the entire game despite not meeting the criteria to trigger the glitch in the first place.

They had a bug, couldn't figure it out before release, and just settled with Palette 1 being an exact copy of Palette 4, there for giving Link his pink hair, and copying the hair to Palette 2 and 3 for consistency.
It's not an exact copy, though. The pink from the hair is not the same pink as the Bunny Link, so it's not pulling from any existing colors. This can easily be verified by putting both sprites side by side in an art editor and picking the colors' hex or RGB.

The pink of Link's hair doesn't have to do with it being fetched from palette 4 because it simply doesn't exist in palette 4. The opposite is true, they didn't make Link's hair pink so Bunny sprite pulls any colors from it, because the Pink Hair's color (palette 1) doesn't appear in the Bunny sprite (palette 4).

Most emulators have accurate CRT filters.
I disagree that they're accurate. Trying to emulate the aesthetic is pretty different from the real deal and it simply boils down to how the CRT works when loading and displaying its images.
 

Ragnarokio

AVATAR NOT BY JIMMU
Joined
Jan 19, 2018
Gender
If you don't identify as the default options of Male/Female, you may enter your gender here.
i opened the rom in a hex editor and looked at the palettes referenced in the post that was linked.

Palette 1 is as follows:
C8A5
C8C9
20D0
CE20
0ED0
C230
A2DE
04A9
9A0E
227C
C91B
A2E0
04A9
9B0E
4C52

This is pallete 4:
C91B
A260
05A9
9B0E
4C52
D0E6
C8A5
C8C9
20D0
6220
0ED0
C230
A25E
05A9
9C0E

From a bit of reading it seems like these can probably be read as RGB565 colour codes, although i wasn't able to find a site that can generate colours given a code, only the other way around. Maybe someone else can find one and see if the pallettes actually match up with link/bunny's palletes respectively.

edit: apparently snes uses BGR555 colour codes and not RGB565, with the first bit presumably always being zero?

edit2: I've been tinkering with this a little more. The addresses given in the thread for the start of the palettes and/or their lengths doesn't seem correct to me. I think each palette should be 30 bytes because thats 15 colours and that seems to be the number of colours per pallette in alttp. That doesn't leave space for a full pallette between DD329 and DD344, which are only 28 bytes apart, inclusive. Its possible that the end of the second palette and the start of the third palette overlap to save space, but the sequence "C8A5C8C920D0" repeats a lot around this part of the memory, beginning at DD308, and then next at DD328. I would expect this sequence to have some meaning, but if that were the case the second palette should begin at DD328 and not DD329.

Its probably the case that i'm misunderstanding something, that the rom i'm using is different from the one used in thread, that there's some problem with the hex editor, or that a mistake was made in the thread. Either way, I've probably hit a dead end for now.
 
Last edited:

Ragnarokio

AVATAR NOT BY JIMMU
Joined
Jan 19, 2018
Gender
If you don't identify as the default options of Male/Female, you may enter your gender here.
I've only read through a few posts and skimmed the rest, but has anybody brought up the wealth of brown-haired Links in the official art for ALttP?

Its been mentioned as one of the reasons the pink-hair-bunny explanation is seen as unlikely. Link has some brown on his pallette already and ig in japanese media at the time was typically depicted with brown hair, and so its not like they couldn't just reuse the brown for his hair if they were running out of palette space because they had to combine it with the bunny palette to fix a bug.
 

Stray the Witch

ZD Champion
Joined
Oct 9, 2023
This is in fact correct. But if you want an in game lore explanation (theory, of course) than I present you with this thought: he is a feminist activist who wants to counter gender norms by dying his hair pink. But I think the real question is, when will Link have pink hair again?
For some reason, this reminds me of Sonic for Hire's link, lol.
 

Azure Sage

March onward forever...
Staff member
ZD Legend
Comm. Coordinator
Even if it was technically an error, we need it to be canon one day. I keep hoping you'll somehow be able to give Link pink hair in TotK. If not, then the next game. Please Nintendo. Do the right thing.
Seeing this thread pop up again reminded me of this post, and the fact that we can indeed make Link's hair pink by dyeing the dragon horns in TotK. Pink Link stays winning. Let's bring that momentum into the next game.
 

Users who are viewing this thread

Top Bottom