Conversation Between FamiliaWerneck and Joexv
61 to 75 of 155
  1. FamiliaWerneck
    July 1st, 2015 2:19 PM
    FamiliaWerneck
    There you go: http://www.filedropper.com/pokmondse-nofairy
    Would it work if I place a routine at 0xB00130?
  2. Joexv
    July 1st, 2015 2:10 PM
    Joexv
    Just for simplicity place the routines at offsets ending in 0. That way the pointers are easy to make. To send the patch to me just create it then upload it to any file sharing website. Most of the people on this site use mediafire, dropbox or sendspace.
  3. FamiliaWerneck
    July 1st, 2015 1:58 PM
    FamiliaWerneck
    Just two questions before I start doing it myself.
    I see all the evolutions are right after each other, with no FF spaces between them. Same for pointers. Ain't us supposed to only set a routine in an offset that is divisible by 4?

    For example, let's say I take 0xB00000 which is a free space with a ton muk of FFs after it, just like Ollie11 did. I paste the evolutions table (which is actually pointers to the actual evolutions) in this offset. I change the pointer at 0x42FC0. Can I fill with FFs the very same table I just took from there (just the table location, as the table itself is now at 0xB00000)?

    Also, pointers will be there 4 by 4, so no hurries here. But then I start putting the new evolution routines at 0xB00100 (which is divisible by 4). One of the evolutions starts at 0xB0010E (for example), which is not divisible by 4. Its pointer will be 0E 01 B0 08. Why does it work? I know it works, 'cause the game itself has a pointer that points an original evolution at 0x4307A. I'm asking this, 'cause I wanna know i I can put all the evolutions one after the other to save space. Can I or all what I inset has to be in a "divisible by 4" offset?

    Also, man, how do I send my patch to you (guess I'll just do the table from scratch. After all this testing, I'm quite familiar with the procedure)?
  4. Joexv
    July 1st, 2015 1:40 PM
    Joexv
    This has something on patching I believe. http://www.pokecommunity.com/showthread.php?t=344685
    And for something that small, best to do it yourself rather than use their patch as they typically cause lots of issues somehow.
  5. FamiliaWerneck
    July 1st, 2015 1:18 PM
    FamiliaWerneck
    How do I do a patch of my ROM?
    I tested it again on a clear ROM, and nothing...
    I think I'll take that Ollie's evolution patch out, and do it myself. Wtf, I can't be that muthapsyducking stupid.
  6. Joexv
    July 1st, 2015 1:04 PM
    Joexv
    What patch? Also if the 23rd is working simply set the number up a few. And if the table only has room for 23 then repoint it again.

    It may help if I can see it myself, can you send me a patch of your rom?
  7. FamiliaWerneck
    July 1st, 2015 1:00 PM
    FamiliaWerneck
    Also, at 0x42FAA, I found 16 (22 in decimal). But in the patch, there was 24 evolution methods.
    The 23rd is working (Pokémon in the Party), but the 24th is not (Location - when they evolve in a certain route, or city).
    Also, in the evolutions table, there was only 23 pointers to other places.
    I took the Location evolution out of the way, deleted from .ini and all that. Set Metal Coat evolution as the 24th evolution method. I also changed to 18 the value at 0x42FAA.
    It didn't work... =/
    I'm getting really, really sad here.
    I'll try again in another ROM with nothing changed but the patches.
  8. Joexv
    July 1st, 2015 12:48 PM
    Joexv
    Thats it
  9. FamiliaWerneck
    July 1st, 2015 12:44 PM
    FamiliaWerneck
    I read that, but I thought that was there if you messed up and did the expansion before.
    So basically, in every evolution routine I add, I just look for a F0 19 and change it to 70 00? That's it?
  10. Joexv
    July 1st, 2015 12:37 PM
    Joexv
    In g3HS go to any pokemon evo tab and click number of evolutions per mon. But you wilhave to change each custom evolution method. For each method you will need to find where its inserted in the ROM and make the following changes accordingly:

    8 evolutions per mon: Change F0 19 to 70 00
    16 evolutions per mon: Change F0 19 to B0 00
    32 evolutions per mon: Change F0 19 to F0 00
  11. FamiliaWerneck
    July 1st, 2015 11:32 AM
    FamiliaWerneck
    The pointer at 0x42FC0 was already changed to point to 0xB00000. The normal and expanded evolutions are working.
    As for the number at 0x42FAA, I thought that changed the max number of evolutions per Pokémon, not the number of evolution methods. I'll try changing it and testing the routine again.
    Now I'm mad, 'cause we've probably done it right before, but because of this we were running in circles (I'm mainly mad, because I probably did it right).
    Since we are discussing this, how do I change the max number of evolutions per Pokémon, since it's not 0x42FAA and with an expanded evolution table it won't work via G3HS?
  12. Joexv
    July 1st, 2015 8:35 AM
    Joexv
    Did you change the pointer to the table at 0x42FC0 and did you chnage the amount of evolution methods at 0x42FAA
  13. FamiliaWerneck
    July 1st, 2015 2:15 AM
    FamiliaWerneck
    It didn't work here. That's what I was afraid, think I'm doing something wrong.
    But what?
    I copied your routine to a clean Wordpad file and saved it. Then I compiled it using HackMew's Compiler.
    I opened it up with HxD and I opened my ROM too, aswell. I paste wrote the hex values I got from the .bin file after I compiled the .txt from Wordpad.
    I paste wrote them at 0xB00400, which gives the pointer 00 04 B0 08. I placed this pointer in the end of the evolutions table that is at 0xB00000 (since I have an evolutions patch from Ollie11, he posted it in kearnseyboy6's thread).
    Then I saved the ROM to keep this changes. I opened Advance Map, and changed the Potion you get in Viridian from a Pokéball to Metal Coat (C7, and this part works for sure).
    Then I opened G3HS (the .ini is already changed with "Metal Coat" as "evolution method" and "Level" as its "evolution property") and chose Ratatta to evolve into Venusaur at level 5 and Pidgey to evolve into Charizard at level 5.
    I played 'till I reach level 6 with both Pokémon, whilst holding the Metal Coat, but nothing happened.
    What did I do wrong man? wtf
  14. FamiliaWerneck
    July 1st, 2015 1:51 AM
    FamiliaWerneck
    HAHAHAHAHAHA
    GREAT MAN! I laughed out loud here.
    I can't even do simple stuff asm-wise man. Be proud you do a lot!
    I'll give it a shot. Wait for ir.
  15. Joexv
    June 30th, 2015 7:41 PM
    Joexv
    Got it, tested and everything:
    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]
    @Item Check
    mov r0, r8
    mov r1, #0xC
    bl decrypt
    mov r11, r0
    pop {r0-r7}
    mov r1, r11
    cmp r1, #0xc7 @Change this to the item you want
    bne exit
    @Item removal
    mov r1, #0xC
    mov r0, r8
    bl encrypt
    pop {r0-r7}
    mov r9, r3
    pop {r0-r7}
    mov r1, r9
    ldr r0, levelcheckloc
    bx r0

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

    encrypt:
    push {r0-r7}
    ldr r2, blank
    ldr r5, encryptpoke
    bx r5

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

    .align
    levelcheckloc: .word 0x0804310D
    noevo: .word 0x08043111
    decryptpoke: .word 0x0803FBE9
    encryptpoke: .word 0x0804037D
    blank: .word 0x020242A2

    Deletes item too. Only issue is that it deletes it even if you end it, but once we find the stone stopping routine then we can fix that easy. My pride has returned and I am happy now.:)