1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. MapleStory Europe has migrated to MapleStory Global! This section is readonly now.
    Dismiss Notice

Europe Help me out? :D

Discussion in 'Discussion' started by Lollage, Aug 1, 2010.

  1. Lollage

    Lollage Well-Known Member

    Well, I ws messing with the Item hook X/Y and the Teleport Pointers, and I was about to make a script that teles to the item when I press the loot button.

    Code (Text):
    1. [enable]
    2. //Kami Loot/Item Vac by Lollage
    3. //Nickerian for ItemHookX/Y?
    4. alloc(ItemXY, 70)
    5. alloc(ItemPosX, 8)
    6. alloc(ItemPosY, 8)
    7.  
    8. 00ADE6F4: //de ?? ?? ?? ?? ?? f8 74 76 0f
    9. dd ItemXY
    10.  
    11. ItemXY:
    12. cmp [esp],004F6133 //85 c0 75 ?? 83 4d ?? ?? 39 45 ?? 74 ?? 50
    13. jne PtInRect
    14. push eax
    15. mov eax,[esp+0C]
    16. mov [ItemPosX],eax
    17. mov eax,[esp+10]
    18. mov [ItemPosY],eax
    19. pop eax
    20. mov ebx,[00ADA538] //Character pID
    21. mov [ebx+2A68],eax //Teleport x offset/pointer
    22. mov [ebx+2A6C],ecx //Teleport y offset/pointer
    23. mov [ebx+2A60],01
    24. jmp PtInRect
    25.  
    26.  
    27. [disable]
    28. 00ADE6F4:
    29. dd PtInRect
    30.  
    31. dealloc(ItemXY)
    32. dealloc(ItemPosX)
    33. dealloc(ItemPosY)
    What this does is when there is an item in the map, and when you press Loot , it just teleports you out off map which gives the result of a black screen for a sec and then it spawns you on another place in the map..
    Well I think I gotta do something with the Item Offset and Pointer but could someone tell me where to implement those? D:

    Thanks for reading ( & helping),
    ;D


    I also tried adding the item pointer + offset above Character pID but it crashed my maple as soon as I press loot with an item in the map d:
     
  2. David...

    David... Banned Banned

    The item hook isn't working, that's why you're experiencing the off map shit, (also why the loot is disabled in my Kami), I'll try looking into it, and I'll post it if I get it working..

    (Also, we got different cmp [esp],xxxxxxxx, correct one should be 004F6133, which means I forgot to update mine, lel)
     
  3. Lollage

    Lollage Well-Known Member

    Oh okay (:
    Well, I got cmp [esp], 004F6133, so that would be fine..
    And I guess I should just wait or try to fix it myself :)
    If I get it to work, I'll tell you o-o, so the kami loot gets fixed D:
     
  4. Nickerian

    Nickerian Well-Known Member Coder Donor

    Just to clear that out, i did not create the item hook :)



    The main problem about this script is that your missing some knowlength about basic asm but dont care about it so much you will learn by trying

    Code (Text):
    1.  
    2. [enable]
    3. //Kami Loot/Item Vac by Lollage
    4. alloc(ItemXY, 70)
    5. alloc(ItemPosX, 8)
    6. alloc(ItemPosY, 8)
    7.  
    8. 00ADE6F4: //de ?? ?? ?? ?? ?? f8 74 76 0f
    9. dd ItemXY
    10.  
    11. ItemXY:
    12. cmp [esp],004F6133 //85 c0 75 ?? 83 4d ?? ?? 39 45 ?? 74 ?? 50
    13. jne PtInRect
    14. push eax
    15. mov eax,[esp+0C]
    16. mov [ItemPosX],eax
    17. mov eax,[esp+10]
    18. mov [ItemPosY],eax
    19. pop eax
    20.  
    21. // ebx?
    22. mov ebx,[00ADA538] //Character pID
    23. mov [ebx+2A68],eax //Teleport x offset/pointer <<< eax? you just took it away
    24. mov [ebx+2A6C],ecx //Teleport y offset/pointer <<<< ecx?
    25. mov [ebx+2A60],01
    26. jmp PtInRect
    27.  
    28.  
    29. [disable]
    30. 00ADE6F4:
    31. dd PtInRect
    32.  
    33. dealloc(ItemXY)
    34. dealloc(ItemPosX)
    35. dealloc(ItemPosY)
    36.  

    anyhow when i tryed to edit stuff in itemhook maple always crashed so i just used it as it was, so i give you an example on how to use it instead


    itemhook
    Code (Text):
    1.  
    2. [enable]
    3. alloc(ItemXY, 70)
    4. alloc(ItemPosX, 8)
    5. alloc(ItemPosY, 8)
    6.  
    7. 00ADE6F4: //de ?? ?? ?? ?? ?? f8 74 76 0f
    8. dd ItemXY
    9.  
    10. ItemXY:
    11. cmp [esp],004F6133 //85 c0 75 ?? 83 4d ?? ?? 39 45 ?? 74 ?? 50
    12. jne PtInRect
    13. push eax
    14. mov eax,[esp+0C]
    15. mov [ItemPosX],eax
    16. mov eax,[esp+10]
    17. mov [ItemPosY],eax
    18. pop eax
    19. jmp PtInRect
    20.  
    21. [disable]
    22. 00ADE6F4:
    23. dd PtInRect
    24.  
    25. dealloc(ItemXY)
    26. dealloc(ItemPosX)
    27. dealloc(ItemPosY)
    28.  
    29.  

    in this example i will be using kami's addy because it gets accesses all the time


    This script will Tele you to Pos 0,0 if you never have presses the Loot button, when you press the loot button it will teleport to one of the items in the map (if there is no items left it will stay at the same pos)

    i leave it like this so you have somehting to work with

    Code (Text):
    1.  
    2. [enable]
    3. alloc(ItemXY, 70)
    4. alloc(ItemPosX, 8)
    5. alloc(ItemPosY, 8)
    6.  
    7. alloc(Tele, 50)
    8. label(TeleRet)
    9.  
    10. 0083FEAF://39 ?? ?? ?? ?? ?? 8d 8e ?? ?? ?? ?? 74 ?? ?? e8 ?? ?? ?? ?? 39 ?? ?? ?? ?? ?? 8d ?? ?? ?? ?? ?? 74 02
    11. jmp Tele
    12. db 90
    13. TeleRet:
    14.  
    15. Tele:
    16. pushad
    17. mov ecx, [ItemPosX]
    18. mov eax, [ItemPosY]
    19. mov ebx,[00ADA538]
    20. mov [ebx+2a68],ecx
    21. mov [ebx+2a6c],eax
    22. mov [ebx+2a60],01
    23. popad
    24. jmp TeleRet
    25.  
    26.  
    27. //------------------------------------------------
    28. 00ADE6F4: //de ?? ?? ?? ?? ?? f8 74 76 0f
    29. dd ItemXY
    30.  
    31. ItemXY:
    32. cmp [esp],004F6133 //85 c0 75 ?? 83 4d ?? ?? 39 45 ?? 74 ?? 50
    33. jne PtInRect
    34. push eax
    35. mov eax,[esp+0C]
    36. mov [ItemPosX],eax
    37. mov eax,[esp+10]
    38. mov [ItemPosY],eax
    39. pop eax
    40. jmp PtInRect
    41.  
    42. [disable]
    43. 0083FEAF:
    44. cmp [esi+00000cd0],ebx
    45.  
    46. 00ADE6F4:
    47. dd PtInRect
    48.  
    49. dealloc(ItemXY)
    50. dealloc(ItemPosX)
    51. dealloc(ItemPosY)
    52. dealloc(Tele)
    53.  
    54.  

    ps didnt test it, tell me if it dosent work
     
  5. Lollage

    Lollage Well-Known Member

    OMG OMG Thank you so much!
    I will definetly learn from this :3 , and is there any possibility to not let it teleport to 0,0 if theres no item in the map?
    So that when I activate it, it just stays on the X and Y i'm standing on , but as soon as an item drops and I press the loot, it tele's there?

    I will try to look for it myself, but just asking :D
    THANKYOU :D

    Oh btw, it works ;d.
     
  6. Nickerian

    Nickerian Well-Known Member Coder Donor

    place it here

    Tele:
    << here
    pushad


    push eax
    mov eax, [00ADBF90]
    mov eax, [eax+28]
    cmp eax, 01
    pop eax
    jl TeleRet


    this one wont teleport you when there is no items in the map, to make it better (when 50 items start loot and 0 stop etc) you have to work much harder so lets keep it simple
     
  7. Lollage

    Lollage Well-Known Member


    I placed this
    Code (Text):
    1. push eax
    2. mov eax, [00ADBF90]
    3. mov eax, [eax+28]
    4. cmp eax, 01
    5. pop eax
    6. jl TeleRet
    at the part you told me to add it, and now it won't go to 0,0 but as soon as there is an item, it first goes to 0,0 and then I have to press "loot" to make it go to the item?

    Any way to skip the whole 0,0 part?
    Thankyou very much for your help, you're very helpfull. :D
    Just tell me if I bother you xD

    Ps. I know I'm noooob, just want to learn :D

    EDIT:

    Lol nevermind, it sometimes teles me to 0,0.
    I can live with that
    Thankyou Nickerian! :)
    this thread can be closed.
     
  8. Nickerian

    Nickerian Well-Known Member Coder Donor

    no problem at all :)

    anyhow it works like this

    when you Press Z / numpad 0 the item potision will be updated
    since the kami addy reads all the time it will start Tele before the item X/Y has been set and therefore the position will be 0,0


    so if there is a way to prevent it, no or well it is not simple so just dont care about it anyhow while your using AutoLoot you wont notice that it teles to 0,0 first
     
  9. Lollage

    Lollage Well-Known Member

    Okay, I understand that :)

    Well thankyou once again, this also might get the kami loot in DAVHEED's thread fixed :)
    We'll see, DAVHEED said he would post it if he gets it working, well you got it working, so I pm'd the script to him ^-^
    He might fix the kami loot with this, who knows? ;D

    Thankyou.
     
  10. David...

    David... Banned Banned

    Wut... So the item hook still works? Then I effed up my code while trying to modify it.. o.o
     
  11. Nickerian

    Nickerian Well-Known Member Coder Donor

    yes it does :)
     
  12. David...

    David... Banned Banned

  13. Lollage

    Lollage Well-Known Member

    Can you actually fix the kami loot in your trainer with this? :D
     
  14. Lollage

    Lollage Well-Known Member

    Well, what are those pointers supposed to show us?

    I mean, I injected it , got in game, dropped a meso even looted it back after a while, they stay at 0.

    :/
     
  15. David...

    David... Banned Banned

    Then I really effed up my item hook, lmao.. Hmm.. Brb fixing..
     
  16. fre024

    fre024 Banned Banned

    So, the thing is with this script you loots items till the itemcounter is not lower then the itemvalue ( value= ammounts of itemthat lay on the floor before u start looting) anymore.
    So when u set the itemcounter to 10, and there are 15 items on the ground, it loots 5 items. but not all 15.
    I tried to change it that it loots all 15 items.
    But it didnt work, can anyone tell me what i did wrong?

    Code (Text):
    1.  
    2. alloc(ItemPosX, 8)
    3. alloc(ItemPosY, 8)
    4. alloc(Tele, 50)
    5. alloc(Loot,128)
    6. label(TeleRet)
    7.  
    8.  
    9.  
    10. 0083FEAF://39 ?? ?? ?? ?? ?? 8d 8e ?? ?? ?? ?? 74 ?? ?? e8 ?? ?? ?? ?? 39 ?? ?? ?? ?? ?? 8d ?? ?? ?? ?? ?? 74 02
    11. jmp Tele
    12. db 90
    13. TeleRet:
    14.  
    15.  
    16. Tele:
    17. push eax
    18. mov eax, [00ADBF90]
    19. mov eax, [eax+28]
    20. cmp eax, 0a  //ammount of items that can lay on the ground before start looting, 10 in this situation.
    21. pop eax
    22. jl TeleRet
    23. jmp Loot
    24.  
    25.  
    26. Loot:
    27. pushad
    28. mov ecx, [ItemPosX]
    29. mov eax, [ItemPosY]
    30. mov ebx,[00ADA538]
    31. mov [ebx+2a68],ecx
    32. mov [ebx+2a6c],eax
    33. mov [ebx+2a60],01
    34. popad
    35. push eax
    36. mov eax, [00ADBF90]
    37. mov eax, [eax+28]
    38. cmp eax, 00  //ammount of items that can lay on the floor before it stops looting
    39. pop eax
    40. jg Loot   // if there are still more then 0 (in this situation) on the floor it loops the loot funcion.
    41. jmp TeleRet
    42.  
    43. //------------------------------------------------
    44. 00ADE6F4: //de ?? ?? ?? ?? ?? f8 74 76 0f
    45. dd ItemXY
    46.  
    47. ItemXY:
    48. cmp [esp],004F6133 //85 c0 75 ?? 83 4d ?? ?? 39 45 ?? 74 ?? 50
    49. jne PtInRect
    50. push eax
    51. mov eax,[esp+0C]
    52. mov [ItemPosX],eax
    53. mov eax,[esp+10]
    54. mov [ItemPosY],eax
    55. pop eax
    56. jmp PtInRect
    57.  
    58. [disable]
    59. 0083FEAF:
    60. cmp [esi+00000cd0],ebx
    61.  
    62. 00ADE6F4:
    63. dd PtInRect
    64.  
    65. dealloc(ItemXY)
    66. dealloc(ItemPosX)
    67. dealloc(ItemPosY)
    68. dealloc(Tele)
    69. dealloc(Loot)
    70.  
     
  17. Razz

    Razz Dedicated Supporter Dedicated Donor

    No enable xD
     
  18. fre024

    fre024 Banned Banned

    Apart from the enable :p
    I just didnt copy the enable part.
     

Share This Page