+  RHDN Forum Archive
|-+  Romhacking
| |-+  ROM Hacking Discussion
| | |-+  Final Fantasy VII nes Easy Type
Pages: [1] 2
Author Topic: Final Fantasy VII nes Easy Type  (Read 2 times)
HackyFreddy
Guest
« on: September 13, 2008, 04:14:07 pm »

Hi there, I'm HackyFreddy, and I need the help of you guys.

Everyone hates the difficulty of the Final Fantasy VII nes rom, and I want to make the game easier (but I don't know how :banghead:)
I tried using a debugger, but I first need to know how a debugger works...

So if anyone wants to help me, or wants to try this alone, you'll get a coockie! :cookie:
(and the respect of MANY nerds)
Dan
Guest
« Reply #1 on: September 13, 2008, 04:56:50 pm »

First, read the stuff on the Getting Started page.  If you read the stuff in the 'Generally Recommended Documents' section, that should put you in a good position to do what you want.  Then, if you search this site, you should find documents on how to use the debugger in the FCEUD series of emulators (which are also located in the Utilities section).

If you can't be bothered doing any of that - then good luck finding someone to do that for you.
HackyFreddy
Guest
« Reply #2 on: September 13, 2008, 05:05:42 pm »

well yeah, I've been trying to use that debugger of FCEUX, but it won't work, I've been trying for hours and hours, and I can't find the offset to edit my stats, HP, or the enemy's HP, This post is more of a "cry for help"
hybrid
Guest
« Reply #3 on: September 13, 2008, 09:01:48 pm »

http://www.gshi.org/?s=v2&sys=5&gid=8126

heres what i could find for that game
HackyFreddy
Guest
« Reply #4 on: September 14, 2008, 06:29:27 am »

Thanks Hybrid, I'll try some stuff now and I'll see what happens!

Cookie for you: :cookie:

Edit: Now I just need to find a way so I can use these cheats to double the starting values of the characters stats (and HP) without having to use them manually...
I'm a noob, I don't know how to do this!
Edit 2: wow, this is really weird, It just won't work, I need the help of a great and courageous hacker, a hero to save us all...
« Last Edit: September 14, 2008, 12:03:38 pm by HackyFreddy »
Lindblum
Guest
« Reply #5 on: September 15, 2008, 08:56:53 am »

I'd REALLY love to see an easytype patch for this.  There's not much I can tell you yet, but I can give you an ordered list of the enemies.  Their names are encoded in the same order as their graphics, so I assume their stats will follow suit in this order.  Here are the Chinese names with my translations (some names I took directly from FF3j), and what I THINK their hex indices should be:

0x00 = 南晶科技 = ShenZhen Nanjing Technologies (Huh)

Party:
0x01 = 克劳德 = Cloud
0x02 = 巴雷特 = Barret
0x03 = 蒂花 = Tifa
0x04 = 艾丽丝 = Aeris
0x05 = 赤红十三 = Red13
0x06 = 凯西 = CaitSith
0x07 = 希德 = Cid

Bosses:
0x08 = 哨兵 = Soldier
0x09 = 守卫铁蝎 = Scorpion
0x0A = 气电士兵 = AirBuster
0x0B = é›·é¾™ = Reno
0x0C = 仆人 = Flunky
0x0D = 索特 = Scotch
0x0E = 科奇 = Kotch
0x0F = 苹果号 = Aps
0x10 = 死神号 = Death
0x11 = 四角电神 = Behemoth
0x12 = 鲁费斯 = Rufus
0x13 = 夜豹 = DarkNation
0x14 = 刚球 = Ahriman
0x15 = 大海怪 = Mermaid
0x16 = 杰诺娃 = Jenova
0x17 = 戴恩 = Dyne
0x18 = 鲁德 = Rude
0x19 = 亡灵之王 = SoulKing (Huh)
0x1A = 亡灵 = Skeleton
0x1B = 布莱尔 = Scarlet
0x1C = 红龙 = RedDragon
0x1D = 时光魔神 = Scylla
0x1E = 影子 = Shadow
0x1F = 萨菲罗斯 = Sephiroth
0x20 = 萨菲罗斯 = Sephiroth
0x21 = 单翼天使 = 1WingedAngel

Monsters:
0x22 = 大蟒蛇 = BoneDragon
0x23 = 毒蜂 = Hornet
0x24 = 鬼猴 = Goblin
0x25 = 瘟疫鼠 = BigRat
0x26 = 泥魔怪 = Stingray
0x27 = 野山猪 = Pygman
0x28 = 幽灵球 = RedWisp
0x29 = 魔蜂 = KillrBee
0x2A = 火龙 = Helcan
0x2B = 山猫 = Needler
0x2C = 恶鬼头 = DarkFace
0x2D = 精魂 = Flyer
0x2E = 鱼人 = Sahuagin
0x2F = 变异种 = Basilisk
0x30 = 毒刺蛙 = BigToad
0x31 = 异型 = RedWorm
0x32 = 魔法师 = Mage
0x33 = 双刀虫 = Scyther
0x34 = 瘟疫巨熊 = Bear
0x35 = 死灵之眼 = EyeFang
0x36 = 深苔蜘蛛 = Spider
0x37 = 妖蛇 = Naga
0x38 = 地精 = Puti
0x39 = 木乃伊 = Mummy
0x3A = 僵尸 = Zombie
0x3B = 忍者 = Ninja
0x3C = æµ·é­” = Kraken
0x3D = 鬼翅鸟 = Bird
0x3E = 恶魔蝙蝠 = Gargoyle
0x3F = 食人象 = Bluk
0x40 = 黑豹 = Liger
0x41 = 战斗蜥蜴 = Thor
0x42 = 狮鹫 = Griffin
0x43 = 翼龙 = Pteragon
0x44 = 毒死龙 = Peryton
0x45 = 石化狮 = SeaLion
0x46 = 双足狮鹫 = Manticor
0x47 = 双头豹 = TwinHead
0x48 = 雄鹰 = Eagle
0x49 = 野人 = Ogre
0x4A = 三比目 = Azrael
0x4B = æ°´å…½ = Caprcorn
0x4C = 螺怪 = Hermit
0x4D = 水魔兽 = Serpent
0x4E = 珊瑚怪 = Coral
0x4F = 毒角鱼 = Angler
0x50 = 龟王 = Adamantoise
0x51 = 海马王 = Seahorse
0x52 = 飞马 = Nitemare
0x53 = 独角兽 = Crocotta
0x54 = 蜥蜴战士 = Lizalfos
0x55 = 三头龙 = Cerberus
0x56 = 牛头人 = Minotaur
0x57 = 三生怪 = Chimera
0x58 = 武士 = Cyclops
0x59 = 恶魔 = Devil
0x5A = 鱼魔 = Paralyma
0x5B = 天牛 = Catoblepas
0x5C = 飞天蟹 = Clawgrip
0x5D = 蛇人战士 = Cronos
0x5E = 植物元素 = Mutant
0x5F = 曼藤怪 = Stroper
0x60 = 食猎者 = Witch
0x61 = 亡灵马 = Sleipnir
0x62 = 德克萨斯 = Ophiuchus
0x63 = æ’’æ—¦ = Mandrake

Good luck!

I'd like it if you found their HP, EXP, and Gil data.  If it helps you, there's a partial translation.  It's not ready for the public, but it might be useful.
http://www.romhacking.net...ex.php/topic,6915.30.html
Just make sure to keep your changes separate from the translation.

By the way, I think in a save file I found party member HP's are only stored by 1 byte (a 255HP cap).  I hope I'm wrong, because that is WEAK.
« Last Edit: September 15, 2008, 09:15:22 am by Lindblum »
hybrid
Guest
« Reply #6 on: September 15, 2008, 09:40:23 pm »

lindblum when i made the codes i did it was one of the few games that seperated the bytes for HP MP and such so i do not think its a 255 cap on HP

Cloud
00604A 0F
006051 27
HackyFreddy
Guest
« Reply #7 on: September 16, 2008, 12:50:30 pm »

GOD DAMMIT, school is killing me!
It's been a time I checked this topic, but I just don't have the time to try this stuff.

OK, this is all to difficult for me...
I guess I'm just not up to the task...

If anyone wants to try, go ahead, I still have a lot of coockies! :cookie: :cookie: :cookie:
I.S.T.
Guest
« Reply #8 on: September 16, 2008, 01:00:28 pm »

Don't ask people to do your work for you, please.
Lindblum
Guest
« Reply #9 on: September 16, 2008, 02:28:53 pm »

Quote
Don't ask people to do your work for you, please.

I don't think "If anyone wants to try, go ahead" crosses any lines of politeness.  I'm actually in the exact same situation with the exact same project.  I don't have much time to work on this as I'd like to, but if anyone does, I'd very much like to see what info you find.   :thumbsup:
HackyFreddy
Guest
« Reply #10 on: September 17, 2008, 01:03:20 pm »

Quote
Don't ask people to do your work for you, please.

I'm sorry, I'm currently learning 4 programming languages at school, and it's really hard to concentrate on something else then my studies...
Sorry, I don't deserve a cookie...
I.S.T.
Guest
« Reply #11 on: September 18, 2008, 03:47:33 am »

Quote from: HackyFreddy on September 17, 2008, 01:03:20 pm
Quote
Don't ask people to do your work for you, please.

I'm sorry, I'm currently learning 4 programming languages at school, and it's really hard to concentrate on something else then my studies...
Sorry, I don't deserve a cookie...

That's alright. I'm sure that's got to be hard as hell.
HackyFreddy
Guest
« Reply #12 on: September 18, 2008, 10:03:57 am »

However, I wont let this project die, I'll work on it in the weekends
Lindblum
Guest
« Reply #13 on: September 28, 2008, 09:04:03 am »

I'm trying to find enemy data.  Only by a stroke of luck did my search for enemy attack patterns find something.
First, here's a list of all the spells in the game and their hex values:
0x00 = None
Fire:
0x01 = Fire1
0x02 = Fire2
0x03 = Fire3
0x04 = Fire4
0x05 = Scorch
0x06 = Fire5
0x07 = Fire6
0x08 = Fire7
0x09 = Ifrit
Water:
0x0A = Water1
0x0B = Water2
0x0C = Cure1
0x0D = Water3
0x0E = Tsunam
0x0F = Water4
0x10 = Cure2
0x11 = Water5
0x12 = Leviat
Bolt:
0x13 = Bolt1
0x14 = Bolt2
0x15 = Bolt3
0x16 = Bolt4
0x17 = Flash
0x18 = Bolt5
0x19 = Bolt6
0x1A = Bolt7
0x1B = Ramuh
Wind:
0x1C = Wind1
0x1D = Wind2
0x1E = Cure1
0x1F = Wind3
0x20 = Wind4
0x21 = Wind5
0x22 = Wind6
0x23 = Squall
0x24 = Typhon
Earth:
0x25 = Rock1
0x26 = Rock2
0x27 = Rock3
0x28 = Rock4
0x29 = Quake
0x2A = Rock5
0x2B = Rock6
0x2C = Rock7
0x2D = Avalan
Light:
0x2E = Cure1
0x2F = Holy1
0x30 = Cure2
0x31 = Cure3
0x32 = Holy2
0x33 = Holy3
0x34 = Cure4
0x35 = Holy4
0x36 = Cure5
Dark:
0x37 = Dark1
0x38 = Dark2
0x39 = Dark3
0x3A = Dark4
0x3B = Shadow
0x3C = Dark5
0x3D = Dark6
0x3E = Dark7
0x3F = Diablo
*Spells without numbers attack all.
*No, you don't actually see the summons, I just gave the spells names of summons so it feels like they're there.  You could probably edit the eidolon's graphics into the spell attack graphics.

There is a table for enemy attack patterns, with 4 bytes each, though I only know what 3 of them are for -- the spells they use:
0X2EFAC: Soldier
0X2EFB0: Scorpion
0X2EFB4: AirBustr
...
0X2F110: Sleipnir
0X2F114: Ophiuchs
0X2F118: Mandrake
It all follows the enemy order I posted before.

No luck on their other stats yet. 

I have tried using savestates to dig up the dirt about enemies.  It seems that enemies of the same type have randomized Max HP or Initial HP, so it'll be hard to find their HP data in the ROM.  Not only that, but EXP rewards are randomized (and Gil = EXP/10).  On the bright side, the savestates confirm the enemy hex indices I hypothesized in my list.  In the Nestopia uncompressed states you should find enemy Current HP to be arrayed at 0x21E6, so their other stats can't be far off. 

« Last Edit: September 29, 2008, 09:05:44 pm by Lindblum »
Lindblum
Guest
« Reply #14 on: October 01, 2008, 09:09:40 am »

Here are some Level Tables I've compiled.  Most fields seem to follow patterns, which suggests that the stat bonuses are more equation-driven than table-driven, which means I gotta learn to get real good at using a debugger. 
Code:
Cloud                                                                 
Level  EXP-to-Next HP+   Str+  Def+  Int+  Res+  Agl+  HP     Str    Def    Int    Res    Agl
5      1000                                             55    12     11     13     13     11
6      1100        9     1     1     1     1     1      64    13     12     14     14     12
7      1200        9     2     1     2     2     1      73    15     13     16     16     13
8      1300        9     1     2     1     1     1      82    16     15     17     17     14
9      1400        9     1     1     2     2     2      91    17     16     19     19     16
10     1500        9     2     1     2     2     1     100    19     17     21     21     17
11     1600        9     1     1     1     1     1     109    20     18     22     22     18
12     1700        9     2     2     2     2     1     118    22     20     24     24     19
13     1800        9     1     1     1     1     2     127    23     21     25     25     21
14     1900        9     2     1     2     2     1     136    25     22     27     27     22
15     2000        9     1     1     2     2     1     145    26     23     29     29     23
16     2100        9     2     2     1     1     1     154    28     25     30     30     24
17     2200        9     1     1     2     2     2     163    29     26     32     32     26
18     2300        9     1     1     1     1     1     172    30     27     33     33     27
19     2400        9     2     1     2     2     1     181    32     28     35     35     28
20     2500        9     1     2     2     2     1     190    33     30     37     37     29
21     2600        9     2     1     1     1     2     199    35     31     38     38     31
22     2700        9     1     1     2     2     1     208    36     32     40     40     32
23     2800        9     2     1     1     1     1     217    38     33     41     41     33
24     2900        9     1     2     2     2     1     226    39     35     43     43     34
25     3000        9     2     1     2     2     2     235    41     36     45     45     36
26     3100        9     1     1     1     1     1     244    42     37     46     46     37
27     3200        9     1     2     2     2     1     253    43     39     48     48     38
28     3300        9     2     1     1     1     1     262    45     40     49     49     39
29     3400        9     1     1     2     2     1     271    46     41     51     51     40
30     3500        9     2     1     2     2     2     280    48     42     53     53     42
Code:
Barret                                                                 
Level  EXP-to-Next HP+   Str+  Def+  Int+  Res+  Agl+  HP     Str    Def    Int    Res    Agl
8      1300                                             88    18     21     13     12     14
9      1400        10     2     2     1     1     1     98    20     23     14     13     15
10     1500        10     2     2     2     1     1    108    22     25     16     14     16
11     1600         9     1     2     1     0     1    117    23     27     17     14     17
12     1700        10     2     2     1     1     1    127    25     29     18     15     18
13     1800        10     2     2     1     1     2    137    27     31     19     16     20
14     1900        10     1     2     1     1     1    147    28     33     20     17     21
15     2000        10     2     2     1     1     1    157    30     35     21     18     22
16     2100         9     2     2     1     1     1    166    32     37     22     19     23
17     2200        10     1     2     1     1     1    176    33     39     23     20     24
18     2300        10     2     2     1     1     1    186    35     41     24     21     25
19     2400        10     2     2     1     1     2    196    37     43     25     22     27
20     2500        10     2     2     2     1     1    206    39     45     27     23     28
21     2600         9     1     2     1     0     1    215    40     47     28     23     29
22     2700        10     2     2     1     1     1    225    42     49     29     24     30
23     2800        10     2     2     1     1     1    235    44     51     30     25     31
24     2900        10     1     2     1     1     1    245    45     53     31     26     32
25     3000        10     2     2     1     1     1    255    47     55     32     27     33
Code:
Tifa                         
Level  EXP-to-Next HP+   Str+  Def+  Int+  Res+  Agl+  HP     Str    Def    Int    Res    Agl
12     1700                                            115    28     18     21     21     24
13     1800        9     2     1     2     2     1     124    30     19     23     23     25
14     1900        9     2     1     1     1     2     133    32     20     24     24     27
15     2000        9     2     2     2     2     2     142    34     22     26     26     29
16     2100        8     2     1     1     1     1     150    36     23     27     27     30
17     2200        9     2     1     1     1     2     159    38     24     28     28     32
18     2300        9     2     1     2     2     1     168    40     25     30     30     33
19     2400        9     2     1     1     1     2     177    42     26     31     31     35
20     2500        9     2     1     2     2     2     186    44     27     33     33     37

...

Okay I've learned how to use FCEUX's cool features, but this fukking emulator is giving me more headaches than promises now.  I hate it, I just hate it! 

...

10/7/08
I've found the price and stats for all armor items!  Also the price for all regular items. 
Found availability inventories for item and armor shops in Midgar (but I don't like how they're coded). 

I think 板/锁/çš®/布 is an implementation of the Plate/Mail/Leather/Cloth hierarchy from WoW, and from my Chinese Googling it looks like they took many armor names from WoW as well. 
« Last Edit: October 07, 2008, 01:00:41 pm by Lindblum »
Pages: [1] 2  


Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC