Jump to content

'Join Avenue ID' edit / restore ? (feature request)


gundambot

Recommended Posts

Hi,

Problem and how it happened:

When a black2/white2 savefile is opened with pokesav BW, inside the 'Money' input box, there is now a 10-digit number.

That number stays the same for a particular savefile, regardless of how far you progress in the game.

I'm guessing that, at the same savefile location where 'Money' used to be logged in Black/White1, there is now some kind of 'constant' or ID that's generated when you start the game.

When that black2/white2 savefile is saved using pokesav BW however, that 10-digit number will be overwritten as 9999999. (as the maximum currency obtainable in the game, governed by pokesavBW's mechanic).

What went wrong:

When I used that savefile back in my black2/white2 game. I was unable to access the Join Avenue.

Each time entering the Join Avenue from either side will result in a black screen, with BGM still playing.

And when I do enter the Join Avenue (using emulator), a 'fan visitor' with a trophy sprite which you cannot interact with appears inside.

as seen in this video http://www.youtube.com/watch?v=MIMLMONRAnc

Rendering Join Avenue unaccessible on cartridge and buggy on emulator.

I guess, that 10-digit number at the same location where Money used to be in the savefile for BW1, is now some kind of 'ID', related to the Join Avenue.

Perhaps have to do with how Join Avenue generate unique visitors for this ID.

Perhaps has to follow a certain algorithm by the game (similar to friendcodes).

If this constant is tempered with, an error will occur with Join Avenue (and perhaps other game functions).

Could Pokegen possibly be introduced a feature to edit/restore this 10-digit 'Join Avenue ID'? in the future? (as pokesav bw is unable to correct it by nature)

I just wanted to bring this issue that I had to the dev's attention and hopefully get a response.

Please ask me for any clarification.

Link to comment
Share on other sites

I'm sort of experienced with Join Avenue editing, so I think I can help clarify:

black2/white2 savefile is opened with pokesav BW, inside the 'Money' input box, there is now a 10-digit number

The offsets of BW2 save files are different compared to BW. Pokesav is reading from the BW location, which is not the BW2 location. Hence an improper number.

Pokesav is reading from 0x21200.

As for the Join avenue, that's not the memory block where Join Avenue is at. (I have no idea what the purpose of 0x21200 is).

The trophy sprite appearing can be caused by an improper visitor that either was generated (an AR code might have interfered). The trophy is a possible overworld prite for a visitor (albeit not legally). You should try removing all visitors from your Join Avenue (both 0xC4 and 0x60 sizes) and then have PokeGen correct the checksum. Here's a thread where you can get more info on what exists where in the Join Avenue block. You're going to want to zero out 0x23C08-0x24227 and 0x2422C-0x246AB.

For the record, on my personal save file, @ 0x21200 is [REDACTED]; Pokesav only reads the first 4 bytes.

Edited by Kaphotics
Link to comment
Share on other sites

thanks for the reply Kaphotics. Those hints are very helpful.

I did manage to find and edit the value @ 0x21200. (Although just like you said, I'm not sure what that does or whether fixing it did anything)

As for the Join avenue, I found out that I (somehow) had corrupted Visitor slots 4 and 5. (0x23E54 - )

Also value of "7d 39" @ 243E2 (between NPC 4 & 5)

screenshot

Causing that 'trophy' to appear, even after I've removed all the other visible characters (in game, via emulator).

I zero'ed out those visitor blocks. But when I open & saved with Pokegen, those values come right back....

When I load the game directly after zeroing out those values (without saving with Pokegen), the 'trophy' shows up in game again. And the value in those blocks come back after saving.

I guess either the game and Pokegen must be 'fixing' the zeros automatically by pulling the back up data from the other half of the save.

It finally worked when I searched and also zeroed out those blocks from the 2nd half of the save (@0x49Exx~ish can't remember the exact offsets)

The 'trophy' visitor doesn't appear anymore and I can go into Join Avenue ok using the savefile on cartridge.

I'm just testing now to see if there's anything else amiss.

Thanks very much for the help.

I would've had no idea where to find the offsets myself.

Link to comment
Share on other sites

That must've been what went wrong in the first place. I saved the B2W2 file with pokesav.

And that bw checksum @ 0x243E2 solely caused the 'trophy npc' to appear rendering Join Avenue buggy.

I'll try removing those two bytes only and see if it will work.

Thanks again for the help.

The other problem with the B2W2 file being saved with Pokesav, as I mentioned in the first post, was the value @ 0x21200 being overwritten (since Pokesav treats it as 'money'). Which I originally thought was the problem crashing Join Avenue.

As the purpose at that offset its unknown, I'm afraid it could still become problematic in the future.

I've restarted the game several times and saved when first possible; and the value @ 0x21200 changes each time and stays the same for the savefile.

I'm still guessing it's some kind of constant that behaves like an 'ID'. (which is not saying much...sorry..)

Link to comment
Share on other sites

The other problem with the B2W2 file being saved with Pokesav, as I mentioned in the first post, was the value @ 0x21200 being overwritten (since Pokesav treats it as 'money'). Which I originally thought was the problem crashing Join Avenue.

As the purpose at that offset its unknown, I'm afraid it could still become problematic in the future.

What are you talking about? Unknown? I already replied that this offset is related to Entralink.

Link to comment
Share on other sites

First 12 bytes of that Entralink area are unknown values to me. After that, we have the Black and White Level of the Entralink tree, etc.

Though, the first 6 bytes never change. They are being set at the beginning of your adventure and will always stay the same.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...