SHARE
TWEET

Rough -gm guide (v0.1)

luckytyphlosion Dec 8th, 2018 164 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. guide:
  2. note: when referring to an item quantity, numbers in [] refer to the amount to toss to get the desired item quantity
  3. - have coin case, x accuracy, 6 to 10 items total, 3 useless items, bicycle recommended
  4. - get 255 x accuracies
  5. - go to celadon city
  6. - put x acc in third, useless in first and second, useless as last item, toss first or second (doesn't matter)
  7. - sell x accuracy x254 FROM THE TOPMOST STACK (down 2 after pressing A on x accuracy)
  8. - buy:
  9.     tm33 x2 (1000*2 = 2000)
  10.     tm01 xany (1) (3000*1 = 3000)
  11.     tm17 x2 (3000*2 = 6000)
  12.     antidote x62 (100*62 = 6200)
  13.     burn heal x34 (250*34 = 8500)
  14.     parlyz heal x62 (200*62 = 12400)
  15.     thunderstone x1 (2100*1 = 2100)
  16.     water stone x2 (2100*2 = 4200)
  17.     hp up x2 (9800*2 = 19600)
  18.     protein x2 (9800*2 = 19600)
  19.     x speed x34 (350*43 = 11900)
  20.  
  21. - also recommended to buy to max inventory
  22. - general idea:
  23.     - acquire -gm (0x6a) and Q r 4 h I (0x9e) somehow
  24. - if no fly:
  25.     - go to 1F, walk to the right exit (on the mat)
  26.         - can save a bit of time by exiting through left exit and entering the right door from the outside
  27.     - dry underflow, the toss before the swap should be to x accuracy x174 (so the swap gives 79)
  28.     - optional: after dry underflow, exit and enter item menu (to reset max menu item)
  29.     - todo how to describe getting instant text
  30.     - swap palette ultras with warping, toss 249 to get 7
  31.     - exit and warp to fuchsia
  32.     - enter fuchsia gym
  33.     - scroll down a few items to NEW NAME
  34.     - (DO NOT PRESS A ON NEW NAME OR YOU WILL CRASH) press SELECT on NEW NAME
  35.     - swap NEW NAME with Q r 4 h I below ultra ball x0 and above HM04
  36.     - scroll down to Q r 4 h I (where NEW NAME was before), swap with useless item in inventory
  37.     - exit fuchsia city gym
  38.     - go to fuchsia city poke center, open start menu without moving (if you move, exit and enter the center again)
  39.     - press select on useless item in inventory
  40.     - scroll down until you see -gm below card key and above v t m
  41.     - press select on -gm to swap it in your inventory
  42.     - scroll a bit up until you see master ball x7 below great ball x1 and above potion x6
  43.     - toss 1 from master ball x7 to get master ball x6
  44.     - exit item menu and exit fuchsia center to warp to celadon
  45.     - note: do not try to scroll up back to your main inventory yet, might have unterminated tmtrainer item in rival name/TID/money which would cause major clicks in this part of celadon
  46. - acquire enough coins to buy abra (lowest price mon)
  47. - go to prize shop
  48. - safety save before prize vendor
  49. - scroll up to Q r 4 h I
  50. - press A on Q r 4 h I, but don't actually use it (safe to use though, acts as an escape rope which requires backing out to use)
  51. - name abra MMA♀[pk symbol]p (if you exceed 6 characters while typing, you must reset, overwrites leftover buffer memory set by loading Q r 4 h I's name
  52. - go to daycare, deposit abra
  53. - arrange inventory as follows (someone please find optimal swaps)
  54.     [any item, probably want -gm here]
  55.     thunderstone x1
  56.     tm17 x2
  57.     x accuracy x79
  58.     protein x2
  59.     antidote x62
  60.     hp up x2
  61.     water stone x2
  62.     burn heal x34
  63.     parlyz heal x62
  64.     tm33 x2
  65.     x speed x34
  66.     tm01 xany
  67. - use -gm, -gm now will jump to the third item in your inventory
  68.  
  69. to set up "get any item" code:
  70. - toss 19 from antidote x62 to get antidote x43
  71. - toss 12 from paralyz heal x62 to get paralyz heal x50
  72. - arrange inventory as follows
  73.     [any item, -gm preferred]
  74.     [item to set quantity to zero]
  75.     antidote x43
  76.     water stone x2
  77.     tm01 xany
  78.  
  79. - now use the "set second item quantity to zero" code to acquire the following item quantities (in any order):
  80.     - x speed x70 [186]
  81.     - burn heal x112 [144]
  82.  
  83. - arrange inventory as follows
  84.     antidote x43
  85.     x speed x70
  86.     parlyz heal x50
  87.     burn heal x112
  88.     tm01 xany
  89.  
  90. - this gives you a code that will set the second item to the second item quantity, and the second item quantity to zero
  91. - but we can do better
  92. - create the following items
  93.     - 9F [162] x50 [206] (id: 0x5e/94)
  94.     - ;MP- [141] x201 [55] (id: 0x73/115) (note: crashes on "USE", be careful)
  95.  
  96. - "get any item" code is now
  97.     antidote x43
  98.     9F x50
  99.     ;MP- x201
  100.  
  101. - but again, we can still do better (although it is acceptable to stop here)!
  102. - create a rare candy [216] x38 [218]
  103. - swap the "get any item" code into rival name
  104.     - note: there should be one of the following item/quantities below the "get any item" code (terminators):
  105.         - []j. xany
  106.         - ether xany
  107.         - 2F xany
  108.         - 10F xany
  109.         - any* x0
  110.         - any* x80
  111.         - any* x87
  112.         - any* x95
  113.     - note 2: the following item/quantities CANNOT be in rival name (prints rival name, i.e. stack overflow):
  114.         - max elixer xany
  115.         - any** x83
  116.     - note 3: the following item/quantities are not desired to be in rival name (as they cause clicks when it is displayed):
  117.         - exp. all xany
  118.         - max ether xany
  119.         - B1F xany
  120.         - 3F xany
  121.         - any** x75
  122.         - any** x81
  123.         - any** x85
  124.         - any** x88
  125.     - * any item that isn't undesirable (i.e. isn't mentioned below)
  126.     - ** other than a non-terminator character. note that 3F/x88 are technically terminators, but they force a button press and thus are not desired
  127. - "get any item" code is now
  128.     rare candy x38
  129.  
  130.  
  131. asm:
  132. set -gm to jump to d322
  133.  
  134. af - 0080
  135. bc - 8c8c
  136. de - 8c01
  137. hl - d320
  138. sp - dff5
  139.  
  140.     ld hl, $d901
  141.     ld [bc], a ; filler
  142.     ld l, $4f
  143.     inc h ; hl = $da4f
  144.     ld [bc], a ; filler
  145.     dec bc ; filler
  146.     ld a, $23 ; hex value of "inc hl"
  147.     ld [bc], a ; filler
  148.     ld [hli], a
  149.     ld [bc], a ; filler
  150.     inc c ; filler
  151.     ld [hli], a ; filler
  152.     rrca ; filler
  153.     ld a, $e9 ; hex value of "jp hl"
  154.     ld [bc], a ; filler
  155.     ld b, e ; filler
  156.     ld [hli], a
  157.     ret
  158.  
  159.     without filler:
  160.     ld hl, $d901
  161.     ld l, $4f
  162.     inc h ; hl = $da4f
  163.     ld a, $23 ; hex value of "inc hl"
  164.     ld [hli], a
  165.     ld [hli], a ; filler
  166.     ld a, $e9 ; hex value of "jp hl"
  167.     ld [hli], a
  168.     ret
  169.  
  170. set second item quantity to zero:
  171.  
  172. initial registers (also for all subsequent setups):
  173. af - 0080
  174. bc - 8c8c
  175. de - 0001
  176. hl - d322
  177. sp - dff5
  178.  
  179.     dec bc ; filler
  180.     dec hl ; hl = second item quantity
  181.     ld [hli], a ; write zero to second item quantity
  182.     ld [bc], a ; filler
  183.     ret
  184.  
  185. get any item #1:
  186.     dec bc ; filler
  187.     dec hl
  188.     ld b, e ; filler
  189.     ld b, [hl]
  190.     rrca ; filler
  191.     ld [hld], a
  192.     inc c ; filler
  193.     ld [hl], b
  194.     ret
  195.    
  196.     without filler:
  197.     dec hl
  198.     ld b, [hl]
  199.     ld [hld], a
  200.     ld [hl], b
  201.     ret
  202.  
  203. get any item #2:
  204.     dec bc ; filler
  205.     dec hl
  206.     ld e, [hl]
  207.     ld [hld], a
  208.     ld [hl], e
  209.     ret
  210.  
  211. get any item #3:
  212.     jr z, $d34a ; jump to rival name, zero flag is always set with -gm due to the p in the daycare mon's name
  213. ; at $d34a
  214.     dec bc ; filler
  215.     dec hl
  216.     ld e, [hl]
  217.     ld [hld], a
  218.     ld [hl], e
  219.     ret
  220.  
  221. FAQ:
  222. Q: why doesn't the create item code complement the quantity so that tosses don't need to be inverted?
  223. A: to get used to inverted tosses, you need to do them anyway to set the quantity
  224.  
  225. Q: Why hasn't this setup come sooner?
  226. A: [TODO, read this for a general gist https://pastebin.com/FCLREBZJ, also ask me in the GCLF Discord]
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top