Users browsing this thread: 1 Guest(s)
FF6 Expansion Editor (FF6ExpED)
Thanks guys!
Edit: I'll add more functionalities. As for steal, I'm thinking about optionally allowing a modification to the steal formula, to change how a successful steal is calculated. From a successful steal, four items could be won for a total of 100%, like the drops. I'm gonna need 2 extra bytes of RAM because contrary to the drops, stolen items are stored in RAM at beginning of battle. @DrakeyC also gave me the idea of doing the same for rages and sketch and I'll most likely do it, though I can't remember if there are rage data or not XD
The original post made my number of thanks crossing the 200... I feel like DiCaprio winning the Oscar over the bear!
Edit2: I can't test it at the moment, but there's probably a bug with having a 256/256 drop with the other three at 0/256, though it would be a very unlikely setting. In this case the program would try to fit 0x100 on one byte and could crash. The closest example, having two first drop at 0/256 and third one at 255/256 would do the following, which is fine:
Edit: I'll add more functionalities. As for steal, I'm thinking about optionally allowing a modification to the steal formula, to change how a successful steal is calculated. From a successful steal, four items could be won for a total of 100%, like the drops. I'm gonna need 2 extra bytes of RAM because contrary to the drops, stolen items are stored in RAM at beginning of battle. @DrakeyC also gave me the idea of doing the same for rages and sketch and I'll most likely do it, though I can't remember if there are rage data or not XD
The original post made my number of thanks crossing the 200... I feel like DiCaprio winning the Oscar over the bear!
Edit2: I can't test it at the moment, but there's probably a bug with having a 256/256 drop with the other three at 0/256, though it would be a very unlikely setting. In this case the program would try to fit 0x100 on one byte and could crash. The closest example, having two first drop at 0/256 and third one at 255/256 would do the following, which is fine:
Code:
CMP #$00 ; branch if minus 0 (never)
BCC drop1
CMP #$00 ; branch if minus 0 (never)
BCC drop2
CMP #$FF ; branch if minus 0xFF (255/256)
BCC drop3
; if we reach this point it's drop 4 (0xFF only, 1/256)
; Another example with all drops at 25%
CMP #$40 ; branch if minus 64 (0x00 to 0x3F, 25%)
BCC drop1
CMP #$80 ; branch if minus 64 (0x40 to 0x7F, 128 - 64, 25%)
BCC drop2
CMP #$C0 ; branch if minus 64 (0x80 to 0xBF, 192 - 128, 25%)
BCC drop3
; if we reach this point it's drop 4 (0xC0 to 0xFF only, 25%)
« Next Oldest | Next Newest »
Users browsing this thread: 1 Guest(s)