Has anyone edited the auction house?
I'm trying to make ZephyrCape cost more (in the WoR Auction House).
Moderators: General Moderator, Game Moderator
Gogo13 wrote:Has anyone edited the auction house?
I'm trying to make ZephyrCape cost more (in the WoR Auction House).
CB/5301: C0 If ($1E80($176) [$1EAE, bit 6] is clear), branch to $CB5AF1
CB/5307: FE Return
CB/5308: 4B Display dialogue message $0ABC, wait for button press
Not enough money…
CB/530B: C0 If ($1E80($176) [$1EAE, bit 6] is clear), branch to $CB5C1D
CB/5311: FE Return
CB/5312: C1 If ($1E80($06B) [$1E8D, bit 3] is clear) or ($1E80($16C) [$1EAD, bit 4] is set), branch to $CB5460
CB/5C10: 4B Display dialogue message $0A4E, wait for button press
Well, how 'bout it?
CB/5C13: 4B Display dialogue message $0A5B, wait for button press
^ Buy it for 10000 GP.
^ I'll pass…
CB/5C16: B6 Indexed branch based on prior dialogue selection [$CB5C57, $CB5C1D]
CB/5C1D: B5 Pause for 15 * 6 (90) units
CB/5C64: 85 Take 10000 GP from party
CB/5C67: C0 If ($1E80($1BE) [$1EB7, bit 6] is set), branch to $CB5308
Here is what I got to work. I replaced the 1/1200th Airship code with the Hero Ring code and then changed the references to match where the new code needed to point to my changes. This is just a paste from my excel sheet, and it's not pasting very well here, but you can import it and delimit the text with defined separations and everything excepy the long notes should be organized. (This will also be in an excel tab in my new release).
New Location Old Location (Some parentheses indicate Changes) Notes, and hex codes entered
CB/570C CB/55B0: BD Pseudo-randomly jump to $CB570C ($CB58FA) 50% of the time jump to airship (Golem, WoR version) code. Code entered was BD FA 58 01
CB/55B4: C0 If ($1E80($255) [$1ECA, bit 5] is set), branch to $CB570C ( $CB58FA) (EA'd) If Hero Ring was bought, jump to airship (Golem, WoR version) code 100% of the time
CB/55BA: 14 Begin action queue for character $14 (NPC $14), 2 bytes long (Wait until complete)
CB/55BC: CD Turn vehicle/entity right
CB/55BD: FF End queue
CB/55BE: 4B Display dialogue message $0AA7, wait for button press
Okay!
Here's our next item!
CB/55C1: 1C Begin action queue for character $1C (NPC $1C), 4 bytes long (Wait until complete)
CB/55C3: C2 Set vehicle/entity's event speed to normal
CB/55C4: 81 Move vehicle/entity right 1 tile
CB/55C5: 82 Move vehicle/entity down 1 tile
CB/55C6: FF End queue
CB/55C7: 92 Pause for 30 units
CB/55C8: B2 Call subroutine $CB4EB1
CB/55CC: B5 Pause for 15 * 6 (90) units
CB/55CE: 4B Display dialogue message $0A44, wait for button press
Here's a splendid chest.
Inside is…
CB/55D1: B2 Call subroutine $CB4EBA
CB/5731 CB/55D5: 4B Display dialogue message $0A49 ($0C18), wait for button press
A “Debilitator”!
Do I hear 100,000 GP?!
CB/55D8: 94 Pause for 60 units
CB/55D9: 15 Begin action queue for character $15 (NPC $15), 5 bytes long
CB/55DB: CD Turn vehicle/entity right
CB/55DC: E0 Pause for 4 * 3 (12) frames
CB/55DE: CC Turn vehicle/entity up
CB/55DF: FF End queue
000B573C CB/55E0: 4B Display dialogue message $0A73 ($0C19), wait for button press
100,000 GP!
CB/55E3: 94 Pause for 60 units
CB/55E4: 12 Begin action queue for character $12 (NPC $12), 5 bytes long
CB/55E6: CD Turn vehicle/entity right
CB/55E7: E0 Pause for 4 * 3 (12) frames
CB/55E9: CC Turn vehicle/entity up
CB/55EA: FF End queue
000B5747 CB/55EB: 4B Display dialogue message $0A74 ($0C1A), wait for button press
200,000 GP!
CB/55EE: 94 Pause for 60 units
CB/55EF: 11 Begin action queue for character $11 (NPC $11), 5 bytes long
CB/55F1: CD Turn vehicle/entity right
CB/55F2: E0 Pause for 4 * 3 (12) frames
CB/55F4: CC Turn vehicle/entity up
CB/55F5: FF End queue
000B5752 CB/55F6: 4B Display dialogue message $0A75 ($0C13), wait for button press
300,000 GP!
CB/55F9: 92 Pause for 30 units
CB/55FA: 14 Begin action queue for character $14 (NPC $14), 14 bytes long (Wait until complete)
CB/55FC: CD Turn vehicle/entity right
CB/55FD: E0 Pause for 4 * 2 (8) frames
CB/55FF: CF Turn vehicle/entity left
CB/5600: E0 Pause for 4 * 2 (8) frames
CB/5602: CD Turn vehicle/entity right
CB/5603: E0 Pause for 4 * 2 (8) frames
CB/5605: CF Turn vehicle/entity left
CB/5606: E0 Pause for 4 * 2 (8) frames
CB/5608: CE Turn vehicle/entity down
CB/5609: FF End queue
CB/560A: 4B Display dialogue message $0A4E, wait for button press
Well, how 'bout it?
000B5769 CB/560D: 4B Display dialogue message $0A5B ($0C1B), wait for button press
^ Buy it for 500,000 GP.
^ I'll pass…
000B576C CB/5610: B6 Indexed branch based on prior dialogue selection [$CB5617, $CB5623] (CB/5773, CB/577F) 1st Branch buy or pass (B6 73 57 01 7F 57 01
000B5773 CB/5617: 92 Pause for 30 units Buy Code starts
CB/5618: 31 Begin action queue for character $31 (Party Character 0), 2 bytes long (Wait until complete)
CB/561A: 1B Do vehicle/entity graphical action $1B
CB/561B: FF End queue
000B5778 CB/561C: 4B Display dialogue message $0A63 ($0C1C), wait for button press
500,000 GP!
CB/561F: 31 Begin action queue for character $31 (Party Character 0), 2 bytes long (Wait until complete)
CB/5621: CC Turn vehicle/entity up
CB/5622: FF End queue
000B577F CB/5623: 14 Begin action queue for character $14 (NPC $14), 2 bytes long (Wait until complete) Pass code starts
CB/5625: CD Turn vehicle/entity right
CB/5626: FF End queue
CB/5627: 94 Pause for 60 units
CB/5628: 14 Begin action queue for character $14 (NPC $14), 2 bytes long (Wait until complete)
CB/562A: CE Turn vehicle/entity down
CB/562B: FF End queue
CB/562C: 10 Begin action queue for character $10 (NPC $10), 5 bytes long
CB/562E: CD Turn vehicle/entity right
CB/562F: E0 Pause for 4 * 3 (12) frames
CB/5631: CC Turn vehicle/entity up
CB/5632: FF End queue
000B578F CB/5633: 4B Display dialogue message $0A67 ($0C1D), wait for button press
1,000,000 GP!
CB/5636: 92 Pause for 30 units
CB/5637: 16 Begin action queue for character $16 (NPC $16), 5 bytes long
CB/5639: CD Turn vehicle/entity right
CB/563A: E0 Pause for 4 * 3 (12) frames
CB/563C: CC Turn vehicle/entity up
CB/563D: FF End queue
000B579A CB/563E: 4B Display dialogue message $0A64 ($0C1E), wait for button press
2,250,000 GP!
CB/5641: 92 Pause for 30 units
CB/5642: 13 Begin action queue for character $13 (NPC $13), 5 bytes long
CB/5644: CD Turn vehicle/entity right
CB/5645: E0 Pause for 4 * 3 (12) frames
CB/5647: CC Turn vehicle/entity up
CB/5648: FF End queue
000B57A5 CB/5649: 4B Display dialogue message $0A65 ($0C1F), wait for button press
5,000,000 GP!
CB/564C: 94 Pause for 60 units
CB/564D: 14 Begin action queue for character $14 (NPC $14), 14 bytes long (Wait until complete)
CB/564F: CD Turn vehicle/entity right
CB/5650: E0 Pause for 4 * 2 (8) frames
CB/5652: CF Turn vehicle/entity left
CB/5653: E0 Pause for 4 * 2 (8) frames
CB/5655: CD Turn vehicle/entity right
CB/5656: E0 Pause for 4 * 2 (8) frames
CB/5658: CF Turn vehicle/entity left
CB/5659: E0 Pause for 4 * 2 (8) frames
CB/565B: CE Turn vehicle/entity down
CB/565C: FF End queue
CB/565D: 4B Display dialogue message $0A4E, wait for button press
Well, how 'bout it?
000B57BC CB/5660: 4B Display dialogue message $0A5C ($0C20), wait for button press 4B 20 0C
^ Buy it for 9,900,900 GP.
^ I'll pass…
000B57BF CB/5663: B6 Indexed branch based on prior dialogue selection [$CB56B4, $CB566A] (CB/5810, CB/57C6) 2nd Buy or Pass branch (B6 10 58 01 C6 57 01
000B57C6 CB/566A: B5 Pause for 15 * 6 (90) units Pass Code starts here
CB/566C: 14 Begin action queue for character $14 (NPC $14), 4 bytes long (Wait until complete)
CB/566E: C3 Set vehicle/entity's event speed to fast
CB/566F: 83 Move vehicle/entity left 1 tile
CB/5670: CE Turn vehicle/entity down
CB/5671: FF End queue
CB/5672: 4B Display dialogue message $0AB7, wait for button press
Sold, to this lucky person.
Take it away, please!
CB/5675: F4 Play sound effect 225
CB/5677: 13 Begin action queue for character $13 (NPC $13), 13 bytes long (Wait until complete)
CB/5679: C3 Set vehicle/entity's event speed to fast
CB/567A: C8 Set object layering priority to 1 (low nibble 1)
CB/567C: DC Make vehicle/entity jump (low)
CB/567D: E0 Pause for 4 * 4 (16) frames
CB/567F: DC Make vehicle/entity jump (low)
CB/5680: E0 Pause for 4 * 4 (16) frames
CB/5682: DC Make vehicle/entity jump (low)
CB/5683: E0 Pause for 4 * 4 (16) frames
CB/5685: FF End queue
CB/5686: 13 Begin action queue for character $13 (NPC $13), 4 bytes long (Wait until complete)
CB/5688: 80 Move vehicle/entity up 1 tile
CB/5689: 8D Move vehicle/entity right 4 tiles
CB/568A: CC Turn vehicle/entity up
CB/568B: FF End queue
CB/568C: F4 Play sound effect 141
CB/568E: B2 Call subroutine $CB4EC3
CB/5692: 92 Pause for 30 units
CB/5693: 14 Begin action queue for character $14 (NPC $14), 3 bytes long
CB/5695: 81 Move vehicle/entity right 1 tile
CB/5696: CE Turn vehicle/entity down
CB/5697: FF End queue
CB/5698: 1C Begin action queue for character $1C (NPC $1C), 4 bytes long
CB/569A: 80 Move vehicle/entity up 1 tile
CB/569B: 83 Move vehicle/entity left 1 tile
CB/569C: CE Turn vehicle/entity down
CB/569D: FF End queue
CB/569E: 13 Begin action queue for character $13 (NPC $13), 4 bytes long (Wait until complete)
CB/56A0: 85 Move vehicle/entity right 2 tiles
CB/56A1: 96 Move vehicle/entity down 6 tiles
CB/56A2: D1 Make vehicle/entity disappear
CB/56A3: FF End queue
CB/56A4: F4 Play sound effect 255
CB/56A6: 4B Display dialogue message $0AB9, wait for button press
Well, that's all for today!
Come back again real soon!
CB/56A9: 31 Begin action queue for character $31 (Party Character 0), 3 bytes long (Wait until complete)
CB/56AB: C2 Set vehicle/entity's event speed to normal
CB/56AC: 80 Move vehicle/entity up 1 tile
CB/56AD: FF End queue
CB/56AE: C0 If ($1E80($176) [$1EAE, bit 6] is clear), branch to $CA5EB3 (simply returns)
000B5810 CB/56B4: 92 Pause for 30 units Buy Code starts here
CB/56B5: 31 Begin action queue for character $31 (Party Character 0), 2 bytes long (Wait until complete)
CB/56B7: 1B Do vehicle/entity graphical action $1B
CB/56B8: FF End queue
000B5815 CB/56B9: 4B Display dialogue message $0A68 ($0C21), wait for button press
9,900,900 GP!
CB/56BC: 31 Begin action queue for character $31 (Party Character 0), 2 bytes long (Wait until complete)
CB/56BE: CC Turn vehicle/entity up
CB/56BF: FF End queue
000B581C CB/56C0: 85 Take 50000 (65535, now 9,900,900) GP from party Take gold
CB/56C3: C0 If ($1E80($1BE) [$1EB7, bit 6] is set), branch to $CB52E0 ($CB5880) If 1EB7 bit 6 is set (not enough gold) then branch to not enough gold message at CB/52E0 (CB/5880)
000B5825 CB/56C9: 14 Begin action queue for character $14 (NPC $14), 4 bytes long (Wait until complete)
CB/56CB: C3 Set vehicle/entity's event speed to fast
CB/56CC: 81 Move vehicle/entity right 1 tile
CB/56CD: CE Turn vehicle/entity down
CB/56CE: FF End queue
CB/56CF: 4B Display dialogue message $0AB7, wait for button press
Sold, to this lucky person.
Take it away, please!
CB/56D2: F4 Play sound effect 225
CB/56D4: 31 Begin action queue for character $31 (Party Character 0), 11 bytes long (Wait until complete)
CB/56D6: C3 Set vehicle/entity's event speed to fast
CB/56D7: DC Make vehicle/entity jump (low)
CB/56D8: E0 Pause for 4 * 4 (16) frames
CB/56DA: DC Make vehicle/entity jump (low)
CB/56DB: E0 Pause for 4 * 4 (16) frames
CB/56DD: DC Make vehicle/entity jump (low)
CB/56DE: E0 Pause for 4 * 4 (16) frames
CB/56E0: FF End queue
CB/56E1: 14 Begin action queue for character $14 (NPC $14), 3 bytes long
CB/56E3: 83 Move vehicle/entity left 1 tile
CB/56E4: CE Turn vehicle/entity down
CB/56E5: FF End queue
CB/56E6: 1C Begin action queue for character $1C (NPC $1C), 4 bytes long
CB/56E8: 80 Move vehicle/entity up 1 tile
CB/56E9: 83 Move vehicle/entity left 1 tile
CB/56EA: CE Turn vehicle/entity down
CB/56EB: FF End queue
CB/56EC: 30 Begin action queue for character $30 (Camera), 3 bytes long
CB/56EE: C2 Set vehicle/entity's event speed to normal
CB/56EF: 85 Move vehicle/entity right 2 tiles
CB/56F0: FF End queue
CB/56F1: 31 Begin action queue for character $31 (Party Character 0), 4 bytes long (Wait until complete)
CB/56F3: 80 Move vehicle/entity up 1 tile
CB/56F4: 85 Move vehicle/entity right 2 tiles
CB/56F5: CC Turn vehicle/entity up
CB/56F6: FF End queue
CB/56F7: 35 Pause execution until action queue for object $30 (Camera) is complete
CB/56F9: F4 Play sound effect 141
CB/56FB: B2 Call subroutine $CB4EC3
00B585B CB/56FF: 80 Add item $C9 (<C9>Hero Ring ) ($A7 (<A7>Debilitator )) to inventory Add Item A7 debilitator
CB/5701: 4B Display dialogue message $0C22, wait for button press 4B 22 0C
Bought a “Debilitator”!
CB/5704: F4 Play sound effect 255
CB/5706: 4B Display dialogue message $0AB9, wait for button press
Well, that's all for today!
Come back again real soon!
000B5865 CB/5709: D4 Set event bit $1E80($255) [$1ECA, bit 5] (MUST CHANGE TO FE) (FE, then EA'd after) Set 1ECA bit 5 to make hero ring not buyable again, see bit check at beginning of this section
000B5867 CB/570B: FE Return (EA'd)
New Money Check
000B5880 CB/52D6: 4B Display dialogue message $0ABC, wait for button press If the 1EB7 bit 6 (not enough gold) is set when trying to buy Wall Ring, you're jumped here. Note: the bit seems to automatically set itself based on your GP
4B BC 0A
Not enough money…
000B5883 CB/52D9: C0 If ($1E80($176) [$1EAE, bit 6] is clear), branch to $CB4F73 ($CB57C6) This bit seems always to be clear, so branch to code for passing up the purchase of Wall Ring. Code is C0 76 01 73 4F 01 (C0 76 01 C6 57 01)
000B588A CB/52DF: FE Return
000B58F9 EA'd the end of the airship code
[size=100]Drakkhen's Extra Gold Buying Code Implemented[/size]
This code was implemented to make my item cost 9,900,900 GP whenever I tell the game to take 655535 GP (Code FF FF). I'm not sure if this only works with event code (rather than item shop buying), as it's a specific code to tell the game to take $$$ during specific game events (in this case, the auction house purchase of a debilitator).
Hex Address Code and Theoretical Address
0000AD89 C0/AD89: 4C XX YY JMP $New Function (4C 70 DE was entered)
...
New Function -- Place somewhere in bank C0
I entered all this code starting at 0000DE70
0000DE70 C0/DE70 C0/YYXX: A5 EB LDA $EB
C0/####: 1A INC
C0/####: F0 06 BEQ $####
C0/####: AD 60 18 LDA $1860
C0/####: 4C 8C AD JMP $AD8C
C0/####: AD 60 18 LDA $1860
C0/####: 38 SEC
C0/####: E9 64 13 SBC #$1364
C0/####: 85 2A STA $2A With this in place, trying to take 65535 GP should take 9900900 GP instead.
C0/####: 7B TDC
C0/####: E2 20 SEP #$20
C0/####: AD 62 18 LDA $1862
C0/####: E9 97 SBC #$97
C0/####: 85 2C STA $2C
C0/####: C9 40 CMP #$40
C0/####: 90 03 BCC $????
C0/####: 4C 9F AD JMP $AD9F
0000DE97 C0/####: 4C A9 AD JMP $ADA9
Ends at C0/DE97
Return to ROM Hacking and Emulation
Users browsing this forum: No registered users and 1 guest