Author Topic: Other Final Fantasy® VII formulas.  (Read 16081 times)

L. Spiro

  • *
  • Posts: 797
    • View Profile
    • http://www.memoryhacking.com/index.php
Other Final Fantasy® VII formulas.
« on: 2001-05-13 11:12:00 »
Firstly, since this is my first time venturing here, allow me to say this is a very nice message board.  I was sent to this board by Ficedula.
I am making a smaller game out of Final Fantasy® VII and the post with the battle formula was extremely helpful to my cause.
But there are many more formulas I will need.
Each time I play through and get Yuffie (for example) she has different statistics.  Obviously there is a formula for her statistics depending on how strong your team is.  And the same is true for each character after Barret.

Also, magical equations.  What formula tells me how much damage I will deal to a regular MP if I cast Ice?  Lightning?

There are also many specific equations that deal with weapons or spells individually.  Because of the actual amount of help I need, instead of asking one person to help, I ask any readers of this post for any input at all (hence coming to a forum [duh]).

If anyone cares to know about the game I am making, it is a text-based chat game playable with any IRC client.  Players will be able to explore the entire world of Final Fantasy® VII, which includes the full storyline and text.  Players will also be able to battle human players, which I believe will be the most fun of it.

Thanks.


The SaiNt

  • *
  • Posts: 1300
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #1 on: 2001-05-13 12:20:00 »
I think Terence would probably be able to give you answers for that.

IIRC, the other characters level's are actually determined by Cloud's Lvl. I think Barret is 2 levels lower than you when he joins you and Yuffie joins you at half of Cloud's Lvl.

As for the rest of the stats, I believe there should be a certain formula for the connection between character lvl and the rest of the stats.


Sir Canealot

  • *
  • Posts: 900
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #2 on: 2001-05-13 15:53:00 »
Pretty sure yuffie joins at more then clouds starting level.

The Skillster

  • *
  • Posts: 2284
  • Loving every Final Fantasy
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #3 on: 2001-05-13 20:08:00 »
no
she joins a few levels lower then clouds CURRENT level, a few levels higher then the rest of the party. untill u go past level 40 i think

Terence Fergusson

  • *
  • Posts: 262
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #4 on: 2001-05-14 00:28:00 »
Well, I've finally started on the FF7 Game Mechanics which, when finished, should be a group of four guides which will eventually cover most, if not all, the various formulas used in various parts of FF7.  (The Date Mechanics would be an unofficial part of the Game Mechanics, since it's already out and finished at this time)

Magic formulas are actually pretty easy.  Base Damage is already (Magic atk + Level), thus all that remains is to work out the modifier.  For example, Fire, Ice and Bolt's modifier is 3, while Fire2, Ice2 and Bolt2's modifier is 7.5.  (You multiply the modifier to the Base Damage)

However, that's obviously not the whole story because you have to factor in the Magic def of the enemy as well, and other factors come into play; most spells when cast against all enemies will do less damage (2/3 of the original power).  Some spells that can only be targeted against all enemies will do more damage if there's only 1 enemy to be targetted.  And certain spells ignore those rules and do full damage to all enemies (Summons are notorious for this).  There's also formulas for Random Variation, Piercing damage, Elemental rules to follow, special weapon formulas, etc....

I'm not going to go into exact detail here, but I will warn you; the Game Mechanics guides will be quite a while coming.  There's still a lot of stuff I need to find out, but most of the hard work is already done.  (Finding out the stats on all the enemies is going to be a pain though)

HTH.  HAND.


Terence Fergusson

  • *
  • Posts: 262
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #5 on: 2001-05-14 00:30:00 »
By the way... I think I remember your name from the GameFAQ boards.  If that's the case... I'm already impressed by you.  Your post on Emerald Weapon and Ruby Weapon was particularly good, and actually managed to come up with reasons why people seem to think they have more HP than they actually have.  (I already knew their respective Lvl, HP and MP totals, but it's been a while since I've done heavy analysis on their attacks)

L. Spiro

  • *
  • Posts: 797
    • View Profile
    • http://www.memoryhacking.com/index.php
Other Final Fantasy® VII formulas.
« Reply #6 on: 2001-05-14 01:19:00 »
I was searching the GameFAQs’ board in search of the same answers I seek here and saw some confusion on the statistics of the WEAPONs.  But thank you.

Also, if you can figure out a minimum of three enemies’ statistics (Str, Att, Att%, Def, Def%, MgDef, etc.), then I can figure out the rest fairly easily.

So if you get me started by giving me three enemies’ full statistics, I will get the rest and then we can trade my statistics for your formulas.

Also, how is miss/hit calculated?

My ICQ: 56016742.


Terence Fergusson

  • *
  • Posts: 262
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #7 on: 2001-05-14 02:16:00 »
Unfortunately, I don't know where the entire statistics of each enemy is kept, even in battle.  (I've recently been looking for speed and Absorb stats...)

Best I know is where Def and MDf is stored.  Attack (Strength wouldn't be stored; enemies can't wear equipment, so there's no point) is extremely tricky, and I'm not even sure it exists; it might be that each enemy ability simply has its own personal strength.

I'll give you Airbuster and Guard Scorpion's Def and MDf, because I have them close at hand.  (I do have Ruby and Emerald's too, but they're not here; I have them on my home PC, not at Uni)

Airbuster:
 Def:  80
 MDf: 320

Guard Scorpion:
 Def:  40
 MDf: 256
(while it has its tail up:
 Def: 255
 MDf: 384)

Hope that helps.

(And sorry, but I don't have ICQ or AIM or anything like that)


The Skillster

  • *
  • Posts: 2284
  • Loving every Final Fantasy
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #8 on: 2001-05-14 02:20:00 »
well we got TWO mathmatical geniuses here,

Terence Fergusson

  • *
  • Posts: 262
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #9 on: 2001-05-14 02:21:00 »
Oh, and as for Hit/Miss, I can only guess, until someone actually lifts the battle code out from the EXE.  My intuition tells me it's Rnd(0..99) < (Att% - Def%).

But it could indeed be more complicated... it's hard to say.  But since Att% can go well above 100 and Def% rarely climbs above 50... I'd say it would be a fair guess for now.  (I need to actually study it more, but that won't happen until I've got damage mostly out of the way)


L. Spiro

  • *
  • Posts: 797
    • View Profile
    • http://www.memoryhacking.com/index.php
Other Final Fantasy® VII formulas.
« Reply #10 on: 2001-05-14 06:00:00 »
Those statistics have allowed me to find all enemies’ Defense and Magic Defense.
Nerosuferoth, for example, has 34 Defense and 24 Magic Defense.
Sweeper (level 8 Sweeper) has 20 Defense and 4 Magic Defense.
And I can now find any and all other enemies’.

If you have any other statistics from any other enemies, my e-mail is [email protected].


The Skillster

  • *
  • Posts: 2284
  • Loving every Final Fantasy
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #11 on: 2001-05-14 10:49:00 »
how do u work out the rest of the enemies stats by just looking at terrence's examples??

The SaiNt

  • *
  • Posts: 1300
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #12 on: 2001-05-14 13:39:00 »
If you guys really want to know the enemy stats, i'll search those address's located in memory next on my list after I'm done with what Qhimm needs to know.  :)

Qhimm

  • Founder
  • *
  • Posts: 1996
    • View Profile
    • Qhimm.com
Other Final Fantasy® VII formulas.
« Reply #13 on: 2001-05-14 19:14:00 »
Hey Terence, wouldn't Luck play a part in hit/miss calculations...?

L. Spiro

  • *
  • Posts: 797
    • View Profile
    • http://www.memoryhacking.com/index.php
Other Final Fantasy® VII formulas.
« Reply #14 on: 2001-05-14 20:16:00 »
If I know three or four enemy statistics I can battle each enemy and search for the enemy statistic as it changes from battle to battle.
Exactly like using a GameSharkâ„¢.
Once I have found the address that stores the enemy statistic during battle, all I have to do is simply enter a battle with any other enemies and their statistics will be displayed for me.

Although there are a ton of enemies, so finding them all and joining battles with them is tedious, it is much faster than hitting them and running reverse calculations.  And overall more accurate.


Terence Fergusson

  • *
  • Posts: 262
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #15 on: 2001-05-14 22:53:00 »
Qhimm> Possibly... Luck is an anomalous factor really though, and I'd hate to work on it until I've got the battle code (assembler or not) sitting in front of me.  If it does play a factor, it's either a small one or devoted just to critical hits... or it may just not be involved in hit/miss at all.  

SLG> That's exactly how I do it; although I'd love to be able to grab the data structure of all monsters from the data files.  Would save me a heck of a lot of time, even though I'd still have to fight every enemy again to confirm stuff.


Sir Canealot

  • *
  • Posts: 900
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #16 on: 2001-05-14 22:58:00 »
Isnt there a random geberator(He look this is a great word) to the atack though? I mean one atack might do 104 damge while the next might do 98. How does that work then resident genius's?

[This message has been edited by Sir Canealot (edited May 14, 2001).]


The SaiNt

  • *
  • Posts: 1300
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #17 on: 2001-05-15 13:04:00 »
Actually, what I was aiming was the exact block where all the enemy stats would be located.

It's a hell of a lot easier than looking each enemy up.


Aaron

  • *
  • Posts: 2818
    • View Profile
    • http://aaron-kelley.net/
Other Final Fantasy® VII formulas.
« Reply #18 on: 2001-05-15 19:37:00 »
There's a random generator in all of the FF battle stuff, for any game.  It does attack/defense calculations to find the damage and then adds or takes away, say like 2% or 5% or something, randomly, to make the damage not always be exactly the same.

Some games don't have a random damage modifier, i.e. Paper Mario (haha).


Terence Fergusson

  • *
  • Posts: 262
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #19 on: 2001-05-15 20:22:00 »
Canealot> I already explained how the RV works: [dam * 15/16] ... (dam - 1) is the variation used.

The SaiNt> I would really like to get my hands on the stats for each enemy block seperately, but:

It's not stored in memory.  Only the current enemies are.

If it's in any of the LGP files, it's encrypted/compressed.

If it's in any of the other files, it's encrypted/compressed.


The only time I've seen relevant battle information unencrypted is when they're pulled out for use in memory.  Until then, the information lies hidden within the data files.


If you manage to find the data file(s) where the information is kept, I can finally start making comparisons between my formulas and where 'modified damage' might be held, which could be very useful.

Good luck.


Other Final Fantasy® VII formulas.
« Reply #20 on: 2001-05-16 21:27:00 »
Some-Loser-Girl: Belated welcome.

Terence: I can't wait for the finished product. One question about the Date Mechanics guide. This is just something I've wondered about, but you know the scene in Sector 7 that contains 7th Heaven and all those other shops? Well, the first (only) time you go there, when Barret runs into 7th Heaven and drives everyone out, while he's doing that, the Avalanche and Tifa come out and run around before going back in. If you run up to Barret and talk to him while the Avalanche is still outside, you'll get some extra dialogue. Barret will say, "Heh, want to see your little baby?" and you have 2 choices on how to respond. I've idly wondered if that exchange affects the love points in any way.

About Luck. Personally, I'd bet that it *doesn't* play much of a role in hit/miss. Luck seems to have to do more with enemy encounter rates.
My case in point: the higher your luck, the less often you seem to have enemy encounters. IIRC, doesn't your Luck also effect your likelyhood of encountering Yuffie when in a forest? Materia stats seem to back this up. For instance, Enemy Lure, Enemy Away, and Chocobo Lure. Enemy Lure decreases Luck by 1. Enemy Away increases Luck by 1. Chocobo Lure also increases Luck by 1. Coincidence?

About enemy stats. I'd suggest reading the speculations about the battle files in this thread: http://qhimm.3dstream.net/ubb/Forum4/HTML/000007.html" TARGET=_blank>http://qhimm.3dstream.net/ubb/Forum4/HTML/000007.html
We've made a guess as to where the enemy stats are all stored. We don't have proof, but it might help you out. See the thread for more info.


Terence Fergusson

  • *
  • Posts: 262
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #21 on: 2001-05-16 23:13:00 »
Srethron: I know the scene you mean, and I have a feeling I've already checked it and find it doesn't do anything (if only because I'd have been a fool to miss it).  I hope to one day compare the Date Mechanics next to the decompiled scripts to see how accurate I was ^_^

It'll be a long time before I test Luck properly.  I do believe it may have something to do with Enemy Encounters... but I have no idea exactly how it would factor in.


And finally, I'd bet with No.2, judging by what's in memory: all enemy and boss data for a single area is contained somewhere, and when needed, all enemies for that area are loaded into memory (or close to that, anyway).  For example, one area is defined as the entire space from when you first start the game to just before you enter the Mako Reactor proper (the music is the same for all these areas).  You face three types of enemies here, although not all at the same time: MP, Guard Hound, Drill Drive.  As soon as you reach the scene where Barret joins, you've entered a new area, where Grunts, Laser Cannons and Drill Drives appear.  And then when you're deeper near the bottom, Grunts, Sweepers and Guard Scorpion are loaded.

I can only verify this by the fact that all their attack names are loaded into memory during any battle in those areas, regardless of what you're actually fighting.

Hope that helps.


Other Final Fantasy® VII formulas.
« Reply #22 on: 2001-05-17 02:05:00 »
(1) Heh.
(2) Ditto.
(3) Thanks for the info. Personally, I'm putting my money on it being a combo of #s 2 and 3. My current theory is that all of the enemy data for various enemies, formations, and backgrounds is kept in 2 files (enemy012.dat and enemy331.dat). Their 3D models are the files in battle.lgp. The two .DAT files probably have a list of all of the enemies they contain (with all of them starting out labeled as "inactive" via a flag or switch).
This would mean that when the game decides which formation you'll encounter in the next battle, it sets a switch or a flag inside the appropriate .DAT file which in turn "activates" the appropriate enemies (or, conversely, just removes their inactive status). All enemies are once again "reset" (rendered inactive) after the battle ends.
The "field" files also play a part. When loaded, they probably also call up the enemies they use (which are probably defined and loaded in a similar way to how we think that field models are "cached").

What I suggest the people with more know-how (unfortunately I'm not one of them...yet) should do is:
1. Check for references to enemies in the field locations. Most importantly, try to figure out whether they point to data in other files or seem to be held in a certain block in the field file.
2. Once we know where the enemy data is, either in the field files or somewhere else(such as the enemy.dats), start poking through them.

[This message has been edited by Srethron Askvelhtnod (edited May 16, 2001).]


The SaiNt

  • *
  • Posts: 1300
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #23 on: 2001-05-17 10:30:00 »
IIRC, the battle encounters are defined in the field files. I believe the all the enemy stats are loaded into memory from "some file" and are kept in memory all the time.  don't think the file is read everytime you encounter an enemy.

Terence Fergusson

  • *
  • Posts: 262
    • View Profile
Other Final Fantasy® VII formulas.
« Reply #24 on: 2001-05-18 12:36:00 »
They are.  Enemy stats don't even exist when you start/load a game until you encounter an enemy.