Woah, that's a whole lot more complicated than I thought it was.
Are they all stored like this or are they indexed as well?
I know, having these, I can change the order of the Bonus Games used for each Bonus Icon. I hope I'm not demanding too much again, when asking for the Bonus Games, which can be played after winning the Goal Ring Roulette.
Scratch & Match
Scratch & Match
So, for example if I wanted World 1 and World 5 (which share the game Flip Cards) to have totally different, so 4 different Bonus Games altogether, would that be easily editable? Or is it only possible to alter that using the tables you gave me, so in the end, it's not possible to use 4 different games for World 1 and World 5?
I know, I'm using it inflationarily, but still, I'm sincere about this, thanks a lot for these Offsets!
You're the person who has found out most things about this game recently.
As you've suggested making making doors open using X, I've also almost taken care of a different problem, namely pipes.
Offsets in ROM.
Object 0xA5 (maybe the same as 0x3C?)
0x15AF0 LDA $0036 Button Group #2
0x15AF3 AND #$0004 Down-Button
0x79BFB LDA $0030 Button Group #2
0x79BFE AND #$0004 Down-Button
However, there are two main problems for implementing this is the control menu.
1 - Its tilemaps are somewhere in bank $17, but the problem is, it's tilemaps, combined with some ASM, so it's not possible to freely edit it.
2 - Drawing new tiles. As you can see below, new tiles must be drawn to make it work. BUT there isn't enough space for that afaik.
So, if these tilemap-related problems can be solved, I'd implement it.
(Of course, I would release two different versions of the hack, then; one with changed controls and one with unchanged controls, so people who got too used to the old system can still use it.
(Also, does the SNES GamePad use a custom Palette (so it's only used for this image and nowhere else)?)
Ingame it looks like this:
As you can see, the other two explanations on the left side must be moved up-/downwards and the "Enter Pipe/Door" must be added. I don't think moving them is much of a problem, but adding the tiles and making them appear should the biggest problem.
Also, the custom explanation should have a palette with two blues. I don't know, whether the current color indexes used already fulfill this condition, but since it can be edited easily, it shouldn't be much of a problem.
@Yoshis Fan: Here is my take on the edited control menu (NOTE: This is only a mockup!):
As I stated a while back before my failed attempt at adding a Score tab, there are actually more free tiles than meets the eye. This is because there are several duplicate tiles in the menu graphics. These duplicates are used but could be removed by editing the code and data used to render the menus.
The graphic files for the mockup above might look like this:
The controller graphic shares its palette with a very limited number of (non-level) icons. My mockup uses an altered version of the palette with darker colors for the X Button, so six of the icons sharing the controller's palette would be affected if this was implemented:
The first row shows how these icons look with the normal palette. The second shows the icons with the darker blues--the first three don't look bad, but notice how the shading of the the blue is strange in the icons for Worlds 4, 5, and 6 (as the gray used to shade the dark blue is now lighter than it). These can be fixed easily enough, though, as shown in the third row.
I'm glad there are enough tiles to do that.
Do you think the explanation looks better when placed on the right?
I put it on the left side intentionally to make the whole picture more balanced, also for symmetry reasons (sheesh, I guess I've deselected Art too late), but yours doesn't look bad either. Dunno. What do you think?
Also, about the Score-tab I've tried to do it myself somehow (yeah, one suicide squad), but I already failed to implement the graphic stuff.
Problems: Tab must be there from World 1.
I'm unable to hijack the "to throw"-tiles of "Hasty", since ASM and stuff.
I was unable to decrease the table length of the white box, which is around the Score and Control Icons. (not tried much, though)
I was unable to add a third "castle top tiles" table.
Not to mention other things: Make the Score-Icon move and make it have the function of a Bonus Game.
Make the Score-tab selectable and implement a function for it. (Also, I suppose the functions are activated depending on a RAM address with alot of CMPs? Like, level index to activate = select index + World index (3-6 = 0x05 + 0x18). So a special index for that RAM addr must be created for score-tab, position table for hand must be enlarged and lotsa CMPs (f.e. Worlds unlocked).)
Solved: Creating tiles and using them with a good palette at the top of World selection bar.
Make 3 tiles appear instead of 4 after clearing a World.
Altered cursor positions for World tabs.
But aside from that stuff, making the tiles appear is not a problem as big as having too few redundant tiles, however, replacing the duplicates surely is fun... not. Actually there are not that many issues with that. (Note, that my version of the explanation costs 1 less tile (because the upper right corner is a duplicate of the "Grab/Spit out")
Also, about the pipe objects...
Either they use a button command I haven't found or they take the status of Yoshi (which I don't think, since his status is created by pressing buttons). Also, seeing that Yoshi also enters a pipe when trying to swallow an enemy or cancelling an egg throw, it's most likely a button command, but, yeah haven't found it so far.
Yay! Offset time!
Thank you for those, I've moved most of that stuff up-/downwards. Also, where are the concrete tilemaps of the left and right parts, which glitch up after GFX-editing, as you can see above?
Also, I guess it's better to delete the outward lines, as you said and add them to the "Lock" and "Grab/Spit out"-graphics themselves, so there's no moving of that stuff and there won't be that much problems when it comes to actually using the custom "X" explanation.
Assuming you've already extracted them, use your CommandLine and type:
ycompress 1 120200 (Name of ROM) (Name of GFX file)
Don't forget about the file extensions. Also make sure there are no spaces in the names, that might lead to the program not finding the files.
Also, it's perfectly explained how to extract and insert graphics when you simply run ycompress itself.
To remove the boarders for the objects on the left side(Lock, Grab/Spitout)
ROM 0x0BEBED SNES 0x17E9ED to [EA EA EA]
ROM 0x0BEBF0 SNES 0x17E9F0 to [EA EA EA]
ROM 0x0BEBDC SNES 0x17E9DC to [EA EA EA]
ROM 0x0BEBDF SNES 0x17E9DF to [EA EA EA]
ROM 0x0BEBD0 SNES 0x17E9D0 to [EA EA EA]
ROM 0x0BEBD3 SNES 0x17E9D3 to [EA EA EA]
ROM 0x0BEBCA SNES 0x17E9CA to [EA EA EA]
ROM 0x0BEBCD SNES 0x17E9CD to [EA EA EA]
ROM 0x0BEB86 SNES 0x17E986 to [EA EA EA]
ROM 0x0BEB89 SNES 0x17E989 to [EA EA EA]
ROM 0x0BEB92 SNES 0x17E992 to [EA EA EA]
ROM 0x0BEB95 SNES 0x17E995 to [EA EA EA]
The tilemaps of the left and right parts are these offsets +1.
-------------------- Working on Super Mario World 2 - Yoshis IslandBoss Rush Other projects on hold.
Hmm, I'm very sorry for the bothers but, Would a ''GFX'' File be something like, '' ALLGFX '' ? If so, I have inserted that and I do not see my changes in the ROM. And, What are the Extensions? I'm sorry If I am failing at trying to figure out what you said. Also, thanks for the welcome!
Nothing bothers me so far.
Anyway, yes the GFX file is the AllGFX (which can have whatever name you want it to have, actually). With "extension", I meant the file extensions of your Windows. So, for the file "AllGFX.bin", the ".bin" is the file extension.
About the changes... I dunno, what have you changed using which program?
Well, my very dearest of all my friends, I could help you alot better if you told me what you were doing. You're providing too few info.
Anyway, are you a full-noob to the whole hacking stuff or do you have experience and know how some SNES things work already? Just so I know where to start. And what program do you use to edit the Level Icons? There are different ones, the most common one, which I am using, too, is called YY-CHR.
Also, a description of your concrete problems with this would be nice. Or is the only problem, there's no changes in the ROM? If so, make sure it's not read-only. And if that's not the reason for that, use the Save-Button of your GFX program before closing it.
So, Do I need to list my hacking skills, and whatnot? Anyways, I'm trying to switch Level Icons around. (Example 1-1 Icon would be representing Icon 1-2). I'm using Yychr. I consider my self not a noob, If I do say so myself. Sorry I didn't provide suficient Info. My apologies.
No need for a list, just wanted to know if you know what you're doing and how to handle stuff.
For switching level icons around and still keeping all their colors you must do some minor Hex-Edits.
Open your ROM and jump to PC address 0xBDE4F. There's a table of reference palette pointers there, two bytes each, one pointer per level index, so 0x48 pointers altogether. When swapping Level Icons make sure to set the appropriate pointers. For example, when you exchange the icons of 1-1 and 1-2, make sure 0xBDE4F becomes [00 10] and 0xBDE51 becomes [00 0C]. Just an example. There are four different pointers, but only two of them are used, the [00 14] is the grayscale palette afaik and [00 18] is used for different icons, but you can still use them for custom level icons, if you want to add some later on.
In case you are still unable to alter anything at all, I can't help you, since I don't know what's the problem, then.
As for YY-CHR, swapping icons is pretty much copy/paste.