Don't touch the L tile in the HUD.
This tile, as innocent as it may seem, is used to synchronize Sprite Zero, which is crucial for the timing of the HUD vs. the rest of the viewport, especially when it comes to scrolling. In the screenshot above, the L tile has been moved 2 tiles to the left. If you play the entire game and are absolutely certain that noting weird happens with vertical alignment of sprites or background tiles and scrolling, then you get a pass, but it's at your own risk.
I believe Shadow of Night also moves the L to the left a bit, but from what I've tested I haven't seen any particular issues so far related to sprites or backgrounds and scrolling.
Is there any particular thing I should look out for?
Like some sort of behaviour if the issue does pop up?
As for the white Magic square, it's actually a sprite that is drawn in the background (there's a sprite attribute for that), and serves as the last container that is not full or empty. Full and empty containers are drawn as background tiles. Same for the Life square. These sprites move leftward as you take damage or consume magic, and rightward as you gain them.
I checked the code starting from the offset you gave me, and the code that sets the two sprites is a little further, starting at $17BB. There are 4 values written in sequence starting from $02F8 (this address is in a 2-byte table just before this routine, at $17B9), using the command STA ($00),Y. First value is 0F, which is the Y position of the sprites. This is your problem. The original game uses the same Y position for both. Your setup doesn't.
Second value is the tile code, taken from $1689 (70) or $168A (6E), depending of whether you're drawing Life or Magic. Third value is 0x21, which is the sprite attributes, and it sets the palette to 01 and activates the flag to draw the sprite in the background. Fourth value is the X position, taken from $168B or $168C, plus the value of the last unit of the meter.
Ideally, you'd have to rewrite the routine in a way that swaps the operations for X and Y positions. Your case has X position the same for both, so it would be hard-coded, and Y position different for each meter, so it would be taken from the table.
Tried looking at the code.
I haven't come up with anything yet for it, I am trying to wrap my head around it first and see what I can do about it.
In the meanwhile, I tried looking at the same portion of code from Shadow of Night, to give me an idea on how that hack does it, but I couldn't find any difference in that particular part of the code, it seems the same as in vanilla Zelda II, so perhaps SoA does it in a different way.
I will try to continue studying the code and also try to find how SoA does it, whichever of the two ways manages to work or comes first
As for a little side-track, I tried to jump the gun and attempted to completely redraw the HUB yet again to something much more nice to the eye (and more close to the rest of the series).
This is a quick comparison of what I could do in-game compared to what my mockup was:
In-game / Mockup
Now there are some particular problems in this:
- The same issue with one of the meter bars moving only in an X position
- The PPU tilemap for the life meter is tied with the Exp zeroes. This is why they always tend to show up right next to each other.
- The PPU tilemap for the magic meter is tied with the number for the Life level, hence why the magic bar begins at the very edge of the screen in my test.
- Given the previous issue with the Magic meter, the "M" might disappear due to overscan and on CRT monitors.
I tried to locate the part of the code where it loads the tables for the tile mappings, and found it at $16BD and $172E.
So, went ahead and reimplemented the tilemaps for those two in free-space, and tried separating them into proper tile maps in the AA BB XX format for each section, but i think this goes way beyond that, since the code I believe expects them to be right next to each other and with a set number of bytes, otherwise they won't be separated from each other.
Now, I will not continue with this attempt for a HUB redraw, I will only continue trying to move the magic square that keeps track of the magic number for the current HUB I showed a couple of post back.
No biggie here, I am not attempting this after this test since it is SO much work assembly-side, it's not even worth it, I just wanted to do it for fun and see how far I could go.
I am happy with just implementing the one I showed previously haha.
Now with that said, guys, I decided to finally jump into the sprite editing stuff and redo some graphics for the game while still retaining their original look.
For example, I tried to be faithful to Link's original design, but retouch it in a way that makes it look much better than in vanilla Zelda II. He now has his yellow-ish stripe on his hat, his clothes closely resemble his original artwork and his sword no longer looks like a chicken drumstick.
For starters, I redid the title screen sword:
I took inspiration from the one in the "New Link Sprite" hack, but I redid it in a way that is much more close to the original artwork (original had 4 red gems in the hilt, with a big one on top).
Now there is one more think I am thinking about doing to the title screen, and that is perhaps changing the grey hue of the stones to something like Rev Edition, with a more deep brown, I feel like that colour scheme is better to the eyes than the dull grey the game uses by default. This would also make the sword stand out and pop out a lot more.
What do you guys think?
For Link, I already retouched his whole sprite sheet, all I need now is to define a shield design for Link.
I tried to go for the original Link's artwork shield design, but it looks odd when implemented into the game (image #2).
All in all, I did 3 different designs for the shield:
I would like to know which shield you guys like the most.
I'm leaning towards the first one (brown shield with beige cross), the second one is the closest I could get to the original artwork (but doesn't look as good to me), and the third one who the fuck knows, I just did it for giggles.
So please, let me know what do you guys think about the possible changes to the title screen palette and to Link's shield.