Conversation Between FamiliaWerneck and Joexv
106 to 120 of 155
  1. FamiliaWerneck
    June 23rd, 2015 5:47 PM
    FamiliaWerneck
    No problem. First thing home tomorrow. I already learned how to do it. Testing it shouldn't take much time.
  2. Joexv
    June 23rd, 2015 4:45 PM
    Joexv
    No rush man. I understand how that goes.
    Yea I havent tested it. I dont have a spare ROM to test on atm. All my clean ROMs are on a usb that a friend has.
    Just assemble it into the bin, follow the normal adding evolution instructions and insert the 2 custom tables.
  3. FamiliaWerneck
    June 23rd, 2015 11:27 AM
    FamiliaWerneck
    I didn't test it again bro, sorry.
    Had a loooot going on through the weekend, and I'm in a hell of a test week.
    Last test is tomorrow. As soon as I get home, I'll test it and tell you how it'd go.
    Just to make sure, you didn't test the evolution, right?
    Just assembled the routine and made the .bin file, right?
  4. Joexv
    June 23rd, 2015 10:55 AM
    Joexv
    So was the table off?
  5. FamiliaWerneck
    June 19th, 2015 7:09 PM
    FamiliaWerneck
    I probably got the offsets for the custom tables wrong.
    Chill bro, I'll test it a bit more.
    Today wasn't a good day, that's all...
  6. Joexv
    June 19th, 2015 6:22 PM
    Joexv
    Alright, I'll look back over it to see if I missed something.
  7. FamiliaWerneck
    June 19th, 2015 5:56 PM
    FamiliaWerneck
    Bro, it compiled, read in G3HS and all.
    But when I went on to test it, nothing happens when they match the requirements for the evolutions...

    EDIT: I'll try again tomorrow or Monday. There's a lot in my mind right now bro. Let me test a bit more before I bother you again.
  8. Joexv
    June 19th, 2015 5:39 PM
    Joexv
    No they should not be inverted in the routine! You only do that when directly editing things in hex.
    Its like a new line, but glitchy. Windows sometimes throws those in instead of a normal "new line". XSE has issues with it too.

    Yea decrypt poke was just missing the zero right after the 8.
  9. FamiliaWerneck
    June 19th, 2015 5:16 PM
    FamiliaWerneck
    No problem.
    So keep the "bl Loop" instead of "b Loop", right?
    Are you sure the pointer won't be 0840A7B1? I mean, ain't they supposed to be inverted?
    Also, what do you mean by "a line break after it"? I didn't find nothing anywhere...
    The decryptpoke was actually 0x0803FBE9, right?
  10. Joexv
    June 19th, 2015 5:02 PM
    Joexv
    Spoiler:
    .text
    .align 2
    .thumb
    .thumb_func
    .global LevelItemEvo

    main:
    push {r0-r7}
    add r0, r6, r7
    lsl r0, r0, #0x3
    add r0, r2, r0
    add r3, r0, r3
    ldrb r2, [r3, #0x2]
    mov r0, r8
    @decrypt Pokemon Species and Held Item
    mov r1, #0xc
    bl Decrypt
    mov r6, r0
    mov r0, r8
    mov r1, #0xB
    bl Decrypt
    mov r5, r0
    mov r0, r8
    mov r3, #0x0
    bl Loop

    @Checks species to table(looped)
    Loop:
    ldr r4, CustoPokeTable
    ldrh r4, [r4, r3]
    cmp r4, r5
    beq Item
    cmp r4, #0xFF
    beq Fail
    add r3, #0x2
    bl Loop

    @checks if item is good(not looped)
    Item:
    ldr r4, CustoItemTable
    ldrh r4, [r4, r3]
    cmp r4, r6
    beq Evo
    bl Fail

    Decrypt:
    ldr r2, decryptpoke
    bx r2

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

    Evo:
    mov r10, r3
    pop {r0-r7}
    mov r1, r10
    add r1, #0x2
    ldr r0, levelcheckloc
    bx r0

    .align
    levelcheckloc: .word 0x08043017
    noevo: .word 0x08043111
    CustoItemTable: .word 0x0840A71B
    CustoPokeTable: .word 0x0880A71B
    decryptpoke: .word 0x0803FBE9

    Yea most of those were just typos so thanks for fixing them, the bl Loop that you changed to b Loop would actually cause lots of issues, but with the other fixes bl Loop works just fine.

    As for theCustoPokeTable there was a line break right after it for some odd reason, removing the line and reinserting it fixed that right up. But for your offsets, if you insert it into 001ba740 then it would become 081ba740 not 8ba740.
    Compiled just fine for me as is so hopefully it'll work this time.
  11. FamiliaWerneck
    June 19th, 2015 4:35 PM
    FamiliaWerneck
    Bro, I'm having some problems to assemble your Level+Item routine.
    Check this:
    Spoiler:
    .text
    .align 2
    .thumb
    .thumb_func
    .global LevelItemEvo

    main:
    push {r0-r7}
    add r0, r6, r7
    lsl r0, r0, #0x3
    add r0, r2, r0
    add r3, r0, r3
    ldrb r2, [r3, #0x2]
    mov r0, r8
    @decrypt Pokemon Species and Held Item
    mov r1, #0xc
    bl Decrypt
    mov r6, r0
    mov r0, r8 //A comma was missing here (it was originally mov r0 r8).
    mov r1, #0xB
    bl Decrypt
    mov r5, r0
    mov r0, r8
    mov r3, #0x0
    bl Loop

    @Checks species to table(looped)
    Loop:
    ldr r4, CustoPokeTable
    ldrh r4, [r4, r3]
    cmp r4, r5
    beq Item
    cmp r4, #0xFF //Prompt gave me (in a second attempt): "Error: invalid immediate: 65535 is out of range". It was originally "cmp r4, #0xFF".
    beq Fail
    add r3, #0x2
    b Loop //Prompt gave me this: "Warning: Failed to find real start of function: Loop". It was originally "bl Loop" (I deleted the l, and no more mistakes here. But it was just a guess, don't know if I'm right).

    @checks if item is good(not looped)
    Item:
    ldr r4, CustoItemTable
    ldrh r4, [r4, r3]
    cmp r4, r6
    beq Evo
    bl Fail

    Decrypt:
    ldr r2, decryptpoke //Prompt gave me (in a second attempt): "Error: invalid offset, value too big (0xFFFFFFFC)". Didn't do anything here (Check decryptpoke).
    bx r2

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

    Evo:
    mov r10, r3
    pop {r0-r7}
    mov r1, r10
    add r1, #0x2
    ldr r0, levelcheckloc
    bx r0

    .align
    levelcheckloc: .word 0x08043017
    noevo: .word 0x08043111
    CustoItemTable: .word 0x0840A71B
    CustoPokeTable: .word 0x0880A71B //Prompt gave me: "Warning: partial line at end of file ignored". Just for this line. I don't get it...
    decryptpoke: .word 0x0803FBE9 //It was originally "DecryptPoke: .word 0x083FBE8"


    I couldn't solve the decryptpoke, CustoItemTable and CustoPokeTable ones =/
    I tried changing it to decryptpoke, thought it could be cap sensitive. Also, I checked the other evolution routines for the offset of decryptpoke and I found 0x0803FBE9 for all of them, but it didn't work either. Prompt says that this offset value is too big.
    I placed the CustoItemTable at 001BA740, so I changed ###### for 40A71B and placed CustoPokeTable at 001BA780, so I changed ###### for 80A71B. This is correct, right?
    Why is the CustoPokeTable a "partial line" to be ignored?
    Can you help?
  12. FamiliaWerneck
    June 17th, 2015 7:14 PM
    FamiliaWerneck
    Nevermind then. Next week probably, I'll test your routine for the level + item.
    I'll create some items before. Everything working out, I'll make a person in the game do the Shellder swap thing.
    Do you need help with anything?
  13. Joexv
    June 17th, 2015 6:50 PM
    Joexv
    Yea that should be enough that we wont have to take apart the routines just to figure out how to make it work with no bugs.
    I'm fine doing it, I'm taking a break from my games as I figure out the route I want to go with the next few maps.
  14. FamiliaWerneck
    June 17th, 2015 5:57 PM
    FamiliaWerneck
    I just realized it's very much similar to what the lab scientist in Cinnabar Island does with the Fossils.
  15. FamiliaWerneck
    June 17th, 2015 5:56 PM
    FamiliaWerneck
    Is that workaround enough for you, or do you want to go through the edited Mantyke evolution method for Slowpoke?
    'Cause I'm ok with this. If you doing it 'cause I've asked, there's really no need.