Go Back   The PokéCommunity Forums > Members List
Reload this Page kearnseyboy6's Profile

Notices
For all updates, view the main page.



kearnseyboy6 kearnseyboy6 is offline

Aussie's Toughest Mudder

Visitor Messages

Showing Visitor Messages 1 to 15 of 278
  1. FamiliaWerneck
    6 Days Ago 07:03 AM
    FamiliaWerneck
    Hey, no problem, man.
    Work hard for your career to develop, I'm sure you'll be successful!
    =D
  2. FamiliaWerneck
    1 Week Ago 04:47 PM
    FamiliaWerneck
    kearnsey, can you help with something?
    joexv was helping me, making the evolution routine for a Level + Item evolution method.
    He did, but we could not figure a way to keep the item if you cancel the evolution.
    I tried looking for the stone evolution routine, but no luck.
    Can you help us with this?
  3. Splash
    3 Weeks Ago 05:05 AM
    Splash
    sorry if i have so many question but i really am determined to put new evolutions in my hack xD
    So this is what i did is:
    I inserted the bin into the gba file and then added the little endian offset where the bin was compiled in the gba file.. problem is when i did the male evolutions thing it didnt work
  4. Splash
    3 Weeks Ago 05:56 AM
    Splash
    In your adding new evolutions tutorial:
    where can i find the F0 19? Where is the offset? Sorry im kinda confused on that part -.-

    I changed the ini but the alignment is kinda messed up now.. is that really how it goes and ill have to edit every last pokemon or am i doing it wrong?
  5. Splash
    3 Weeks Ago 03:38 AM
    Splash
    So I'll just change that 0E to 30? Got it! Thanks man..
    Oh and another mini question.. I saw your asm about telling the time in criminon's tutorial and was wondering if that was compatible with JPAN's engine?
  6. Splash
    4 Weeks Ago 08:45 AM
    Splash
    Hi I have another question: When I searched 0x42FAA in hex i didnt see F0 19 in the offset instead I found 0E 28.. Should I still change it to B0 00? I'm using MrDS' rombase btw..
  7. Splash
    4 Weeks Ago 02:43 AM
    Splash
    i see thanks
  8. Splash
    4 Weeks Ago 12:58 AM
    Splash
    So I can just use any of the two?
  9. Splash
    4 Weeks Ago 06:18 PM
    Splash
    Hey man I was wondering if your evolution methods like day time induced item hold need prime-dialga's DNS System or Jambo's Day/Night?
  10. FamiliaWerneck
    June 17th, 2015 05:53 AM
    FamiliaWerneck
    I didn't know I could not cancel a stone evolution. If we could make it impossible to cancel Slowpoke's evolution, that would be perfect.
    Are you sure you don't know how that works?
  11. FamiliaWerneck
    June 16th, 2015 07:26 AM
    FamiliaWerneck
    Ok, I understand now the special routine thing.

    So basically, what you are saying is that there's no way to cancel with the B button all this custom evolutions you guys did?
    Or you are saying the evolution screen only loads if the routine is true? That way, canceling the evolution via the B button is standart (default, whatever) and there's no need to implement it. Is that it?
  12. FamiliaWerneck
    June 15th, 2015 07:21 AM
    FamiliaWerneck
    Almost everything is pretty much clear, now. I did saw your link, but got nothing out of it.
    Looking now, I find some important stuff. Still kinda lost with the special routines. You will understand.
    Let's see if I get it.
    Check this:
    Spoiler:
    .text
    .align 2
    .thumb
    .thumb_func
    .global mantykeevo

    main:
    push {r0-r7}
    add r0, r6, r7
    lsl r0, r0, #0x3
    add r0, r2, r0
    add r3, r0, r3
    ldrh r2, [r3, #0x2] @up until here, all standart stuff
    mov r5, #0x0 @counter for the party Pokémon

    loop: ldr r0, firstpoke @loads the first Pokémon in your party, I think... (speacil routine, don't get it, you see)
    mov r1, #0xB @moves the information B bytes, so you get the species byte (now, this I got from the link you gave me)
    mov r6, #0x64 @this moves 64 bytes, which is the total bytes for a party Pokémon
    add r4, r5, #0x0 @this adds the counter of the party Pokémon, so you know what Pokémon you are currently checking
    mul r4, r6 @this multiplies the 64 bytes for the counter of party Pokémon, so it jumps all the bytes of the Pokémon that were already checked.
    add r0, r0, r4 @this adds the current Pokémon to be checked to the first Pokémon, so the game knows it's going to jump X bytes starting from the first Pokémon
    bl decrypt @it branches to the "decrypt" section and returns here after that
    mov r9, r0 @moves safely the Pokémon that is to be checked in r0 to r9
    pop {r0-r7} @clears the registers
    mov r1, r9 @move the Pokémon from r9 to r1
    cmp r1, r2 @compares the current Pokémon species with the argument stored in r2
    beq levelcheck @if it is the right species, it goes to levelcheck
    cmp r5, #0x5 @it compares the Pokémon counter to five (with 0, 5 will be the sixth Pokémon, meaning you have no more party Pokémon to compare with)
    beq exit @if you don't have any more Pokémon to compare, it doesn't evolve
    add r5, #0x1 @if you have more Pokémon to compare, the counter is added by one, so you go to the next Pokémon when it loops
    b loop @restarts the looping

    levelcheck: mov r10, r3 @moves the information in r3 to r10 (what information, exactly, I don't know...)
    pop {r0-r7} @clears the registers
    mov r1, r10 @moves the information back safely to r1
    ldr r0, levelcheckloc @actually makes the evolution happen?
    bx r0 @ends the evolution?

    exit: pop {r0-r7} @clears the registers, as the requirements for evolutions were not met
    ldr r0, noevo @loads back the overworld, from what you told me
    bx r0 @ends the routine?

    decrypt: push {r0-r7}
    ldr r2, decryptpoke @loads the current Pokémon species in r2
    bx r2 @returns the current Pokémon species and stuff to r2

    .align
    firstpoke: .word 0x02024284
    levelcheckloc: .word 0x0804310D
    noevo: .word 0x08043111
    decryptpoke: .word 0x0803FBE9


    Is that it? Did I get it all?
    You see what I meant, by me still not getting some stuff?
    Also, where in the code is the function "Cancel evolution by B button"?

    Ok, and now, if that was all correct (or not =P), this would be for the Slowpoke with Shellder's removal:
    Spoiler:
    .text
    .align 2
    .thumb
    .thumb_func
    .global slowpokeevo

    main:
    push {r0-r7}
    add r0, r6, r7
    lsl r0, r0, #0x3
    add r0, r2, r0
    add r3, r0, r3
    ldrh r2, [r3, #0x2]
    mov r5, #0x0

    loop: ldr r0, firstpoke
    mov r1, #0xB
    mov r6, #0x64
    add r4, r5, #0x0
    mul r4, r6
    add r0, r0, r4
    bl decrypt
    mov r9, r0
    pop {r0-r7}
    mov r1, r9
    cmp r1, r2
    beq levelcheck
    cmp r5, #0x5
    beq exit
    add r5, #0x1
    b loop

    levelcheck: mov r10, r3
    pop {r0-r7}
    mov r1, r10
    ldr r0, levelcheckloc
    HackMew's (or anyone else's) Pokémon removal code (where I would use a b function and either write the other code here too [bl in that case], or somewhere in the ROM and specify its address down here)
    bx r0

    exit: pop {r0-r7}
    ldr r0, noevo
    bx r0

    decrypt: push {r0-r7}
    ldr r2, decryptpoke
    bx r2

    .align
    firstpoke: .word 0x02024284
    levelcheckloc: .word 0x0804310D
    noevo: .word 0x08043111
    decryptpoke: .word 0x0803FBE9

    Would that be it?
  13. FamiliaWerneck
    June 14th, 2015 08:17 AM
    FamiliaWerneck
    No problem, I stay on all the time.
    Here goes then:
    Spoiler:
    ldrh r2, [r3, #0x2] @this loads the 'argument' you see in G3HS. There is no need for this...

    If this is not necessary, why is it there? I don't get it. If it loads the argument in G3HS, isn't this important?

    Spoiler:
    bl decrypt...

    About the b function, in the tutorials I read, there's no "l" to combine with it. All the combinations are two letter big, like eq or ge. What this "l" and the "x" (bx function) does with combined with b?
    What does decrypt do? Do you specify it later in the code? I ask this, because in some other code I saw a b"something" "label", but this label was not specified in the same code. What goes on here?

    Spoiler:
    mov r6, #0xC @move data is 12 bytes long ie. 0xC

    Ain't registers supposed to store only a word (4 bytes, two half-words...)? Why 12 bytes stored in a single register? Or is it just the address of the move data information?

    Spoiler:
    cmp r4, #0x16 @This must be the value assigned to Fairy? check the MrDS ini to confirm.

    I believe Fairy's type number is #0x17. Not sure though (not using Fairy).

    Spoiler:
    decrypt:
    push {r0-r2}
    .
    .
    .
    ldr r2, decryptpoke @loads the special routine
    bx r2 @gets the move and puts it in r2 and goes back to the loop

    How can you push r0, r1 and r2 if you didn't pop them back when you enter this branch?
    What is decryptpoke (special routine, reading what you said. But how do I know what it does? What are this special routines?)?
    Again, b function, with the "x" I told you. What's up with that? (Also, what is b used for with no other letter?)

    Spoiler:
    true:
    mov r9, r3
    pop {r0-r7}
    mov r1, r9
    ldr r0, levelcheckloc
    bx r0

    exit:
    pop {r0-r7}
    ldr r0, noevo
    bx r0

    How can you use r9 without pushing it?
    levelcheckloc and noevo are, by the way things are going, special routines. For what? Do they cover the "Cancel evolution with B button" thing?

    Spoiler:
    .align

    Finally, why .align in the end? And why not .align2?

    That's all for this code. It did seem pretty simple in the middle. My problem is mostly, looking at it now, the functions and special routines. Other stuff look as a normal programming language now that you explained.
    Thanks again for taking the time for it. You are an awesome person!
  14. FamiliaWerneck
    June 14th, 2015 05:39 AM
    FamiliaWerneck
    Can I still ask stuff I don't understand? Do you have facebook, or other way we could talk faster?
    Bet I can take all my doubts in 10 minutes... =/
  15. FamiliaWerneck
    June 14th, 2015 02:10 AM
    FamiliaWerneck
    I just can't believe you man!
    You don't exist! *-----*
    Thanks a lot! Is there something I can do to thank you for this man?
    You can't imagine how happy I am. Thanks!

About Me

  • About kearnseyboy6
    Olympics Region
    Kalos
  • Signature
    HOLIDAYING CURRENTLY!!

Statistics

Total Posts
Activity by Forum
Visitor Messages
Blog
General Information
  • Last Activity: 5 Days Ago 01:02 AM
  • Join Date: December 28th, 2008
  • Referrals: 0

Friends

Showing Friends 1 to 16 of 16

All times are UTC -8. The time now is 11:00 PM.