Users browsing this thread: 1 Guest(s)
Can't be sold item
02-17-2015, 11:31 AM
Hello, everyone.
In FF6, I can sell all the items.
Is it possible to not sell a particular item?(For example, Such as those you have set the price to 0)
If, if some people can be seen, please lend force.
Thank you.
In FF6, I can sell all the items.
Is it possible to not sell a particular item?(For example, Such as those you have set the price to 0)
If, if some people can be seen, please lend force.
Thank you.
02-17-2015, 12:23 PM
wow I honestly wanted something like this myself, but I personally wouldn't know how to go about it sorry
"Sometimes ninjas do wrong to each other, and in dat way the force of tha earf' comes around da moon - and at that presence, da dirt, it overshadows the grass, so you're like, I can't cut dis grass, there's no sun comin' through. So in order to enable each other the two fruits have to look each other in da eye and understand we can only be right, as da ripe is wrong, you know what I mean?"
-HNIC
The ASM hack wouldn't be too difficult. The "sell" function is at C3/B708, you'd need to insert a check to see if the value is zero, and abort if so.
EDIT: Actually, in the Japanese version, it appears to be at C3/C65F, rather than C3/B708...
EDIT: Actually, in the Japanese version, it appears to be at C3/C65F, rather than C3/B708...
02-18-2015, 10:34 AM
>>pocoloco
thank you!
Sale impossible setting Why to FF6 is, I Would do was not originally...
>>abyssonym
Address of the information, thank you!
Based on the information, I will try to trial and error.
thank you!
Sale impossible setting Why to FF6 is, I Would do was not originally...
>>abyssonym
Address of the information, thank you!
Based on the information, I will try to trial and error.
02-18-2015, 11:03 AM
good luck man
"Sometimes ninjas do wrong to each other, and in dat way the force of tha earf' comes around da moon - and at that presence, da dirt, it overshadows the grass, so you're like, I can't cut dis grass, there's no sun comin' through. So in order to enable each other the two fruits have to look each other in da eye and understand we can only be right, as da ripe is wrong, you know what I mean?"
-HNIC
02-18-2015, 01:51 PM
Just glancing at it I think your gonna have to go a little earlier in the process than that.
By the time you reach B708 you've already selected the item and set the number to sell, there is already a BEQ command (branch if equal to zero) at C3/B63F that jumps to a line to "make buzzer sound".
Point being, I think that might be a check for item amount owned? (When would an item be listed with a count of 0 though? Or is that loading the item list and buzzing if you have 0 items at all?) Maybe could tell that to check price instead and buzz if value zero value.
Still I THINK C3/B708 is to late in the process to block selling(I admit I would never have thought of using a 0 price to check against either but I agree good idea). The JSR command at line C3/B63A tht looks to load your item list might be a good place to grey out zero value items though.
Sorry if I'm completely off track here and just causing confusion, but thats what I see it doing. Just dont put to much faith in my assumptions for your own sake.
By the time you reach B708 you've already selected the item and set the number to sell, there is already a BEQ command (branch if equal to zero) at C3/B63F that jumps to a line to "make buzzer sound".
Point being, I think that might be a check for item amount owned? (When would an item be listed with a count of 0 though? Or is that loading the item list and buzzing if you have 0 items at all?) Maybe could tell that to check price instead and buzz if value zero value.
Still I THINK C3/B708 is to late in the process to block selling(I admit I would never have thought of using a 0 price to check against either but I agree good idea). The JSR command at line C3/B63A tht looks to load your item list might be a good place to grey out zero value items though.
Sorry if I'm completely off track here and just causing confusion, but thats what I see it doing. Just dont put to much faith in my assumptions for your own sake.
The only true wisdom is knowing you know nothing.
02-18-2015, 06:03 PM
What it's actually checking for there with that BEQ at B63F is if it's a null item -- FFh -- aka an empty slot. You're absolutely right that /B708 is (probably) too late in the process; I'm trying to find where it loads item information so I can find where the item price is stored.
Looking at it, the code doesn't actually load the item price until the start of the function at /B708, with a jump to C3/BB65, which makes it difficult to check against it; I haven't tracked down where it actually draws the sell menu yet, which is where we'd need to look at greying out items.
Looking at it, the code doesn't actually load the item price until the start of the function at /B708, with a jump to C3/BB65, which makes it difficult to check against it; I haven't tracked down where it actually draws the sell menu yet, which is where we'd need to look at greying out items.
02-18-2015, 09:00 PM
The hack I was thinking of would allow you to select the item and set the amount sold, it would just cancel (with a buzzer noise or something) before actually selling it. For this kind of implementation, /B708 isn't too late, because the item only gets removed from your inventory at /B72D. It's not the most user-friendly implementation but it gets the job done.
The values here seem to point to where it goes after selecting "Buy" "Sell" or ... Exit (Not sure on the last one, B7A0 seems to take a long path for an "exit" choice)
If you replace C7B7 with A3B7 it will open the shop's item list when you select sell. Which seems to point to C7B7 (or C3/B7C7) as being the start of the "Sell" process. Which goes through a ton of jumping in circles. Eventually leads to this (Every Jump seems start at a different LDX command though):
I can't read well enough to tell exactly, but looks like a list being loaded. Maybe?
On another note, depending on what kinda item you wanted to block the selling of, couldn't you mimic the "is a tool" check at C3/B7E6? (This is the check to stop you from buying more than one of a tool btw). Sure you'd be limited to one type of item being blocked but would get around having to check the price at a strange location. Of course, I'm not sure just how easy a price check would be so, that might be a worse idea.
And yes, stopping it at /B708 would stop the sale, based on price, effectively for the very reason you said... but its more fun to do it the hard way, and maybe not to difficult other than finding where to stop it.
I have to wonder, in a not directly related subject, if it would be possible to influence price based on a timer? Refering to Lockirby's day/night project. There are alread checks for who's leading the party, why would it be much different?
Code:
C3/B79A: A3B7
C3/B79C: C7B7
C3/B79E: A0B7
C3/B7A0: 4CB3B4 JMP $B4B3
If you replace C7B7 with A3B7 it will open the shop's item list when you select sell. Which seems to point to C7B7 (or C3/B7C7) as being the start of the "Sell" process. Which goes through a ton of jumping in circles. Eventually leads to this (Every Jump seems start at a different LDX command though):
Code:
C3/6A15: A600 LDX $00
C3/6A17: 8035 BRA $6A4E
C3/6A19: A20008 LDX #$0800
C3/6A1C: 8030 BRA $6A4E
C3/6A1E: A20010 LDX #$1000
C3/6A21: 802B BRA $6A4E
C3/6A23: A20018 LDX #$1800
C3/6A26: 8026 BRA $6A4E
C3/6A28: A20020 LDX #$2000
C3/6A2B: 8021 BRA $6A4E
C3/6A2D: A20028 LDX #$2800
C3/6A30: 801C BRA $6A4E
C3/6A32: A20030 LDX #$3000
C3/6A35: 8017 BRA $6A4E
C3/6A37: A20038 LDX #$3800
C3/6A3A: 8012 BRA $6A4E
C3/6A3C: A20040 LDX #$4000
C3/6A3F: 800D BRA $6A4E
C3/6A41: A20048 LDX #$4800
C3/6A44: 8008 BRA $6A4E
C3/6A46: A20050 LDX #$5000
C3/6A49: 8003 BRA $6A4E
C3/6A4B: A20058 LDX #$5800
C3/6A4E: C220 REP #$20 (16 bit memory/accum.)
C3/6A50: 7B TDC
C3/6A51: A00002 LDY #$0200
C3/6A54: 9F49387E STA $7E3849,X
C3/6A58: E8 INX
C3/6A59: E8 INX
C3/6A5A: 9F49387E STA $7E3849,X
C3/6A5E: E8 INX
C3/6A5F: E8 INX
C3/6A60: 88 DEY
C3/6A61: D0F1 BNE $6A54
C3/6A63: E220 SEP #$20 (8 bit memory/accum.)
C3/6A65: 60 RTS
I can't read well enough to tell exactly, but looks like a list being loaded. Maybe?
On another note, depending on what kinda item you wanted to block the selling of, couldn't you mimic the "is a tool" check at C3/B7E6? (This is the check to stop you from buying more than one of a tool btw). Sure you'd be limited to one type of item being blocked but would get around having to check the price at a strange location. Of course, I'm not sure just how easy a price check would be so, that might be a worse idea.
And yes, stopping it at /B708 would stop the sale, based on price, effectively for the very reason you said... but its more fun to do it the hard way, and maybe not to difficult other than finding where to stop it.
I have to wonder, in a not directly related subject, if it would be possible to influence price based on a timer? Refering to Lockirby's day/night project. There are alread checks for who's leading the party, why would it be much different?
The only true wisdom is knowing you know nothing.
« Next Oldest | Next Newest »
Users browsing this thread: 1 Guest(s)