• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.
daniilS
Reaction score
295

Profile posts Latest activity Postings About

  • Welp I know it refers to assembly scripts, but I didn't need to look them up. I could do everything via simple scripts until now :D. Hit me with your answer and I will figure it out.
    I was wondering whether it would be possible to incorporate this script into an item, as an in-battle item so that it can be used for a mega evolution.
    Yo! Can you help me with this. I just want a little twist when you try to walk on the stairs, the the view moves also, just like in platinum.. Is it available in EM?? Thanks
    Yo daniilS! It's me, ExdeAth_20.. I'm doing asm stuff.. Can you help me dude?? Just leave me a reply in either IRC or vm me.. Thanks :D
    I was just wondering how could I do Rotom's transformations or Arceus' ability, so I thought this routine was a change sprite only one xD

    I was very tired when I looked at it, so I get confused and hurted myself xD
    If it's not a problem, could you please explain me how your change sprite routine work? I refer to ther one here: http://www.pokecommunity.com/showpost.php?p=8513264&postcount=34

    I want to understand how to use it.

    I guess the special 0x9F stores the party slot of the chosen Pokemon in a variable (don't know which) Is it possible to skip this part and use setvar0x8004 (or the real variable) to make a preset slot for this?

    Also, it's suposed that this routine only changes the sprite of the desired party Pokemon without modifying it's index, isn't it?

    I'm not good on ASM yet, but would it be possible to make it change the Stats of the Pokemon too?? FBI does it on his Silent Evolution Routine, but it takes place during the evolution code:

    Spoiler:
    So I can confirm that "ptr = 0x084A329C" is wrong.

    The "MusicPlayerArea *" is actually located at the offset above. So "0x084A329C" is the pointer to the "MusicPlayerArea" pointer.
    So just load the value from that offset (and not the offset itself) and pass it over to the sound functions.
    Well, I don't really think that there is a real way around saving that many bytes.

    PS: I will need to double check the "ptr = 0x084A329C" again. I might have got something wrong there.
    So here's the data you need to backup (BPRE only, possibly other languages too):
    Song Variables: 0x40 bytes at 0x03007300
    Track Variables: 0x50 * TRACK_AMOUNT bytes at 0x030020C8

    You could also read those pointers dynamically from the ROM (nicer solution) from the "MusicPlayerArea". It comes in that format:
    ----
    4 bytes: song variables pointer
    4 bytes: pointer to track variables array
    1 byte: maximum tracks amount
    3 bytes: 0x?? (usually 0x0 though)
    ----
    In BPRE it's placed at 0x084A329C.

    For TRACK_AMOUNT you can either say just to use the max tracks possible (10 by default) or you could read out amount of tracks used by the current song and only backup the required bytes. But since the game will need to handle backuping 10 tracks there is no need to reduce the dynamic memory usage since it's non deterministic (well, if you know which song is gonna be played you do so) and there is no profit by doing so (except it might be a "nicer" solution).

    Before backuping make sure to stop the playback with "m4aMPlayStop(MusicPlayerArea *ptr)". This will pause the song and you probably are safe to backup the data. Simply go through the battle and once you come out you will need to remove the call from the game engine which starts the playback from the map music.
    Replace it with "m4aMPlayContinue(MusicPlayerArea *ptr) to resume the playback of the map music but make sure to reload all the values you backuped before calling the Continue function.

    As I already said above, in BPRE for regular music ptr = 0x084A329C. The function offsets are the following:
    m4aMPlayStop = 0x081DD93C
    m4aMPlayContinue = 0x081DCFF8

    I haven't tried anything out but the values should be correct. Tell me if I got something wrong.
  • Loading…
  • Loading…
  • Loading…
Back
Top