øAslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&action=profile;area=showposts;sa=topics;u=205e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index7245.htmlslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&action=profile;u=205e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index7245.html.zx¥th^ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈ`¦D¤UOKtext/htmlISO-8859-1gzip8:Ö¤UÿÿÿÿÿÿÿÿWed, 11 Mar 2020 05:34:54 GMT0ó°° ®0®P®€§²ð®¤th^ç¤U Show Posts - dn

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - dn

Pages: 1
1
Game Modification Station / FF6 damage formula
« on: March 02, 2015, 06:06:42 PM »
Does anybody know how to get the "lost byte" in the damage formula to calculate correctly without simply capping it to 16-bits?
For reference:
Code: [Select]
C2/2BCE: E2 20        SEP #$20    (Set 8-bit Accumulator)
C2/2BD0: 6D AE 11     ADC $11AE   (add Vigor * 2 if character, or Vigor if monster)
C2/2BD3: EB           XBA
C2/2BD4: 69 00        ADC #$00    (add carry from the bottom byte of Attack
                                   into the top byte)
C2/2BD6: EB           XBA
C2/2BD7: 20 B7 47     JSR $47B7   (get 16-bit "Attack" * 8-bit level, and put
                                   24-bit product in Variables $E8 thru $EA)
C2/2BDA: A5 E8        LDA $E8
C2/2BDC: 85 EA        STA $EA     (use top byte of result as temporary variable,
                                   since it's generally 0 anyway.
                                   to see why that's a bad idea, keep reading.)
C2/2BDE: 68           PLA
C2/2BDF: 85 E8        STA $E8     (get attacker level again)
C2/2BE1: C2 20        REP #$20    (Set 16-bit Accumulator)
C2/2BE3: A5 E9        LDA $E9
C2/2BE5: EB           XBA         (A = bottom two bytes of the first multiplication
                                   result..  typically, we'll always have zero in the
                                   top byte, so we can ignore it.  but with a 255
                                   Battle Power weapon, Gauntlet, and a character at
                                   Level 99 with 128 Vigor, that product WILL need 3
                                   bytes.  failure to use that top byte in our next
                                   multiplication means we'll lose a lot of damage.
                                   BUG!)

C2/2BE6: 20 B7 47     JSR $47B7   (multiply 16-bit result of [Level * Attack] by
                                   our 8-bit level again, and put the new 24-bit
                                   product in Variables $E8 thru $EA.
                                   16-bit A will hold the new product DIV 256.)
C2/2BE9: 8D B0 11     STA $11B0   (Maximum Damage)
The original physical damage formula (which I am using as the basis) is:
Attack = Battle Power + (Vigor * 2).  Vigor * 2 is capped at 255.
$11B0 = Battle Power + ( (Level * Level * Attack) DIV 256 )

I've been wrestling for MONTHS trying to get a new damage formula in, roughly based on the original with different weights, and I lose the highest byte no matter what I do.

2
Game Modification Station / Need information on monsters
« on: October 22, 2014, 08:08:06 AM »
Looking to expand the monster index, so I need a bit of info.

What is "8-high [and 16-high] composition data"? I'm guessing moulds, but I'm not sure
Also, is there anything actively preventing me from expansion? The game uses a byte in the monster data, I believe, to determine whether it's in the first 256 set (available to the Veldt) or the second set (which currently only has 128 entries, and which is what I want to expand).

3
Game Modification Station / Magic condensing patch
« on: September 30, 2014, 05:48:06 PM »
I've been working all day to get the battle magic menu to condense its spell list when only a few spells are available. Recently noticed that Novalia released a patch, but it doesn't seem to work, at all. Any idea how I would fix this? This is driving me insane.

snes9x doesn't even seem to be tripping at all in the subroutine this thing modifies. surely something wasn't rerouted entirely around it.

4
Game Modification Station / Various expansion questions.
« on: September 06, 2014, 11:14:04 PM »
Figured I may be able to find more information here than I have thus far. This could benefit everybody if we can figure it out.

Somebody managed to expand item and monster indices in a Japanese FF6 hack (Final Fantasy 6 T-edition, look it up) and the author said he doesn't know how it was done; it was done by somebody else.
The hack in question has 277 items and 511 enemy (not formation!) entries.

Here's what I know about items in this particular hack:
Items utilize the highest bit on the quantity byte to determine which index it uses. $80+ signifies the expanded portion. This is likely a simple BMI but I don't know any specifics or even all the hooks necessary.
SRAM has been expanded to 16KB for the item expansion. There is a single byte that triggers expansion ($C0FFD8), but I don't know if he changed where it reads the expanded from or to at all. It seems to read original RAM fine, but I'm not sure how expanded SRAM has been implemented. The new item location actually still seems to be in original RAM ($1600-$1FFF)

Stored item check: 7EECA0-7EEDB3 (this is because the expanded portion of the menu cuts off at $40. It goes slightly further in RAM but won't display if you insert anything.)
Item quantity check: 7EEDD0-7EEEE3 (same issue. It goes further, but he seems to have cut it off at $40.)

I have no idea about monster expansion, other than the game seems to use two bytes but only uses the first bit of the second byte (cap is presently 383) and I have no idea what is presently disabling us from expanding it to 511.

On a more personal side note, does anybody have experience with the overkill patch? I'm havin some issue with the dog block graphic being replaced with some green sprite.

B870 seems to be some kind of save exchange space. probably in vanilla, but notable nevertheless.

Pages: 1