Author Topic: [Release I] "Wall Market" Kernel.bin editor [Release Candidate I ready!]  (Read 20214 times)

nfitc1

  • *
  • Posts: 3012
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
The initial information for this is from this topic. I think I should make a new one so I don't steal too much of Gingercat's thunder.

Pictures are now up in the release topic on the Game Tweaking board..

9-25: Still have to populate dropdowns (probably tomorrow) before I try to open files. That's WAY more fun than putting all those check boxes and text boxes on the window. Ugh. Talk about Eye strain!

9-26: Finished first draft of Attacks Menu! Currently showing Freeze. You can notice a few things about it already:
-The number under the "Inflict Status" box indicates it's percentage chance of hitting. Haven't found how significant this number is yet
-Even though Freeze's damage type is single target, it has separate animations for single and multiple enemies. Sephiroth can cast it in such a way that it hits all enemies at once.
-Impact Sound is ALWAYS "FFFF" for all attacks in this file. Possibly this is not really sound?
-Times Attacking is always 255 if it's a single hit. Only changes if more than one hit. KotR is 13 hit so I know that's working too. :)
Finished the Reading part of the Weapon and Item sections as well. One of the unknowns on the weapons I MAY have identified.
-0x26 is 05 for all normal range weapons and 2F for all long range weapons with one exception. Barret's Pile Banger is long range and has a value of 05. This refers to sounds of the weapon when it hits, criticals, and misses like I initially suspected and confirmed by LKM below.
And I still don't know what exactly what 0x05 is. Wiki says it's Status attack bit. Could some weapons, at some time, be able to do certain status effects? Maybe it's only an in-battle thing. Not sure. Armor is now done too. Nothing special learned here except Four Slots is somehow "special" compared to the others. Think I'm done for the day. Opening Accessories, and Materia are all that's left before I release this as a beta.

9-28: Officially finished the Accessories tab on Saturday, but didn't update until today.
Materia tab is getting close to being done. Maybe by Monday I'll start requesting beta testers before I begin writing files.
Phase I is complete and ready to be beta tested. Please PM me your email address if you'd like to help. I'll have to write up some simple command documentation, but I'll be able to do that Monday morning (I hope).

9-29: After a rough start Phase II is underway. What's this mean? The Attack information is now successfully being saved BACK to the KERNEL.BIN1 file and being re-encoded into the KERNEL.BIN file!! The rest is just a matter of time. So phase II beta testing will begin probably by the end of the week if I get enough time to finish the remaining tabs.
I also added the information of the command tab into generic text boxes so nothing to manipulate yet. Just there to observe and see what makes the commands special. (see latest post for more information)

9-30: I've been looking at the weapon/armor/accessory data in the wiki and I think I have an idea for the restriction mask for these. They don't mean usable in battle or appears in battle or whatnot. Rather, it's FE if it can be sold and FF if it cannot. The ONLY objects among the weapons, armors, and accessories that are FF are the Buster Sword, Gatling Gun, and Masamune. These are not sellable. All the other objects are FE and none of them can be used in battle, but they all appear in the battle menu.
Phase II is so mind-numbingly tedious. It's making sure all those little boxes and drop downs are changing the data they should be changing and accounting for things like if they're in hex or not or whether they're too large. Still, I'm done with the Items and Weapons now as well. This is a mighty big if, but IF I can keep this pace up Phase II might be completed later today. (cross your fingers)
PHASE II IS COMPELTE!! I have successfully written/read, modifications to/from the kernel.bin file! This is now ready to undergo in-game testing to make sure all the values are correct. I already have an idea on how to test some of the materia, but I need people now to test other things too. Again, PM me with your email address if you wish to test this. Slight disclaimer: Names do not appear yet. That's Phase III since it's so different from the other methods. I'm not sure how long that will take. I also can't guarantee that I will be able to email you tonight, but I will by the end of the day tomorrow. I might have the time to, I might not. Just be patient. :)
I also took the pictures down because they are now grossly inaccurate. I'll try to put up new pictures soon.
I just performed my own small, and successful I might add, test on changing the Added Cut and Steal As Well Materias from 2-stars to 5-stars. Unfortunately, it didn't perform they way I thought it would. I thought that the Materia Type set to 0x35 would make it perform that action X number of times depending on the level. Unfortunately it attempted to steal each time. So I'm still at a loss as the difference between type 0x25 and type 0x35. Or maybe it's that action 0x5D takes no parameters and just does it every time. So 0x35 is still an unknown if it's different from 0x25.

10-1: Phase III is looking promising. I'm able to read names of attacks based on the kernel.bin18 file. This, however, gives me a little bit of bad news. Not all the attacks are in the kernel.bin1 file. Only 128 are stored in there. That includes (in this order) Magics, Summons, E.Skills, "Extra" Summons (Fat Chocobo, Gunge Lance), Tifa's Limits, Cait Sith's limits, Vincent's Limits, and Braver. Where are the rest of the limits? This seems to be the only question at the moment. I'd like the answer as well. Maybe ff7dec doesn't open it all?
PHASE III IS COMPLETE!!! And it only took about 3 hours! Should have taken less, but I kept screwing up. :) Now that this is done, nothing is left except to test it all (and I need much help with this) and fill in the missing data.
Phase III consisted of reading the names and pairing them with their appropriate entries. Without indexes, it can be reasonably assumed that the data and the names are, at least, in the same order. With some small discrepancies in the Attack and Materia names. This seems to be the case as the weapons, armor, and accessories match up perfectly and they're easy enough to tell apart based on stats. Phase IV (if there is demand of it) will be to make the interface more pleasing. Adding some FF7-related pictures or whatnot. Also, I'd still like to add the raw data at the bottom like I mentioned below. Not necessary, but would be nice. Still trying to find out the best way to do that.
Structurally, this is program is no different from Phase II. It does NO writing to the entries with the names, just reading. Again, this is in compliance with the goal of PC/PSX independence. As long as a US KERNEL.BIN is being opened, it will read the names properly.
PLEASE! PLEASE!! PLEASE!!! PM me and request to test this. I believe it is finished, but any/all bugs need to be squashed.
I'm fed up with ff7dec since it's not working properly in probably 90% of my tests. Therefore I'm just going to run the gunzip/gzip executables myself. I looked into actually getting a gzip library, but the cheapest one is still $50 and I doubt I'll ever need it outside of this program again. So I'm going to have to re-write it slightly to eliminate some of the annoying issues I'm coming up with. It'll give me something to do tomorrow at least.

10-2:
I have rid the dependency on ff7dec since it wasn't performing how I wanted it. At the same time, it was dependent on gunzip, gzip, and the dll it came with. So now Wall Market is only dependent on gzip and comdlg32.ocx.
Made a update to Reply #10. Check it out. Pretty interesting.

10-3: I'm getting tired of seeing the same Visual Studio 6 standard executable icon for this. Maybe I should make it the Hi-Res cross-dressing Cloud? Heh, that'd be great. I hope that everyone who reads the updates on this post also checks out Reply #10 as I have quite a few discoveries listed there. One I just made yesterday and I think I nailed the question about flag 0x10 I had when I discovered it.
One byte of previously unknown piece of data for items identified. Commands have now been split up appropriately and their names have been added.
I also cleaned up the GUI significantly (pics to be updated soon). Things aren't just randomly thrown about now. They're a little more structured than they were. It's mostly for the tabbing purposes, though. I'm trying to keep similar things in the same relative positions.
I think Phase IV is now complete. However, since this doesn't change anything functionally and it will continue to be updated as new information is discovered, I won't call it significant. I dare not speak of Phase V which I also planned since the beginning. I don't think it's impossible, but I don't want to try it just to have it fail on me.
Once again discovered that the wiki is inaccurate. The files in the kernel are not numbered higher than 9. Every segment from Command descriptions to Summon Attack names has a file number of 9. I didn't know this until I started testing my kernels. When they all failed I noticed this. I fixed it and they work fine now. :) That and after al the files are concatenated together it ends in 0x0, 0x0.

10-7:
Haven't had anything to report recently because nothing new has happened. Mostly I'm just finalizing the way every thing looks. Started writing a chm for this yesterday and made a new discovery or two (see Reply #10 again). This is getting so close to becoming release I can almost taste it.
Added the "bling" I wanted so now it's ready to be released. I need a host to put it on so I'll take recommendations. The entire package is zipped and is 450,297 Bytes in size.
I had to remove the "New Game" and "Battle & Growth" tabs because I concluded that there is too much information to put in that window size. I may go back and make other programs to modify those, but Wall Market will likely not do that.

10-8:
Less than two weeks from birth to conception. Now ready for initial public consumption. Enjoy and leave feedback here from now on.

Drop-down menus are populated at run-time. Probably only reading information will be implemented in the first release.
Command data doesn't exist yet on the wiki and Battle & Growth and New Game info are SO long I may end up writing those differently than in tabs (separately or in a different window I'm not sure yet).
I'd like to have a grid below the frames that displays the item's raw data to show what's happening, highlighting things as they change. If you've seen FF3USME, it's the same idea. Once the prog actually works I'll play with this idea.
I hope I can have a working beta (read, but not write) by October 1st, but we'll see. It may be more complicated than that. It's actually coming together exceedingly well. MUCH easier than I had originally thought. Doesn't look like writing files will take any more time than creating the interface up to this point. Maybe functional beta by end of first week of October. Well what do you know? Phase I to Phase III by October 1st! Am I good or what?
Once everything can be read correctly I'm going to update these pictures with information on certain objects of interest so people can see this actually does work.

The information is all based on Qhimm's wiki so some things will have gaps where they either did not test or did not know.
« Last Edit: 2008-10-14 13:16:43 by NFITC1 »

Kudistos Megistos

  • Banned
  • *
  • Posts: 3929
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #1 on: 2008-09-25 18:41:21 »
This looks very interesting. I have been hex editing the kernel.bin for a while, and having to look at all of those numbers and spend time decompressing and recompressing of all those files can be a pain.

By the way, quite a lot of the information which is missing on the wiki can be found on this forum. Peerless, for example, is 0x01000000. Changing the hex data for "cure" from this:

Code: [Select]
FF FF 00 FF 05 00 FF FF 00 00 28 00 0D 00 25 05 00 FF FF FF FF FF FF FF 00 02 FF FD
to this:

Code: [Select]
FF FF 00 FF 0F 00 FF FF 00 00 28 00 0D 00 08 20 00 3F 14 FF 00 00 00 01 00 02 FF FD
will fully restore HP and MP, put all targets in peerless, and fill the limit bars of everyone except the caster.

This is a round-up of how attack data works.

 
Code: [Select]
Offset Length Description
0x00 1 byte          Att%
0x01    1 byte           Impact animation
0x02    2 bytes         Target animation
0x04 2 bytes Casting cost
0x06 2 bytes Impact sound
0x08 2 bytes Camera movement ID for 1 target
0x0A   2 bytes         Camera movement ID for multiple targets
0x0C   1 byte          Attack attribute - some of these may be wrong
  00 Escape/Exit-Type
        01 Single target
        03 Single target
        05 Multiple target
        07 Multiple target
        0D Restorative/Protective
        0F Status-giving/Elemental
        11 Shield
        13 Limit Break
        15 Cait Sith Limit Break
        17 Summon/Final limit break
        C7 Roulette
        97 Multiple Strike Limit Breaks
0x0D 1 byte  Animation ID
0x0E 1 byte  Type of damage. There are lots of these; a few of them are:
        08 = recovery (?)
        11 = physical
        22 = magical
        23 = Based on current HP
        24 = Based on max. HP
        26h: Deals constant damage (Magic Hammer, 1000 Needles, ...). 01h = 20 HP/MP.
        28h: Fully recovers the target's HP/MP (Mog Dance).
        29h: Always deals 1 damage (?).
        60h: Damage = attacker's current HP (White Wind)
        61h: Damage = MaxHP - CurrHP (the Huh? enemy skill)
        68h: Random Damage (Dice)
        69h: Damage = number of times the party escaped (Chocobuckle).
        6Bh: Damage = (hours played * 100) + minutes played (Time Damage)
        6Ch: It's Everyone's Grudge damage calculation method (does damage according to the amount of enemies the target has killed). Does 0 damage to enemies
        6Dh: It's Aire Tam Storm's damage calculation method, meaning that it always deals  0 damage since enemies can't equip materia
        83 = Only hits targets with a certain level; this level is determined by the first byte.
        96h: Damage = approx. 1/2 attacker's current HP
0x0F 1 byte  Strength
0x10 1 byte  Restore type
  00 Restore HP
        01 Restore MP
        02 Restore Ailment
        3E     100% cause status change
        FF None
0x11 1 byte          Status effect
        3Fh Inflict Status
7Fh Cure Status
0x12    1 byte  "Special" 1. Again, there are a lot of these, and I have only tested one:
       14      Fills limit bar
0x13 1 byte  Number of hits
0x14 4 bytes        Status
        0x00000001 Death
0x00000002 Near-Death
0x00000004 Sleep
0x00000008 Poison
0x00000010 Sadness
0x00000020 Fury
0x00000040 Confusion
0x00000080 Silence
0x00000100 Haste
0x00000200 Slow
0x00000400 Stop
0x00000800 Frog
0x00001000 Small
0x00002000 Slow-numb
0x00004000 Petrify
0x00008000 Regen
0x00010000 Barrier
0x00020000 MBarrier
0x00040000 Reflect
0x00080000 Unused
0x00100000 Shield
0x00200000 D.Sentence
0x00400000 Manipulate
0x00800000 Berserk
0x01000000 Peerless
0x02000000 Paralyzed
0x04000000 Darkness
0x08000000 Dual
0x10000000 DeathForce
0x20000000 Resist
0x40000000 Lucky Girl
0x80000000 Imprisoned
0x18 2 bytes Element
        0x0000 Non Elemental
0x0001 Fire
0x0002 Ice
0x0004 Lightning
0x0008 Earth
0x0010 Poison
0x0020 Gravity
0x0040 Water
0x0080 Wind
0x0100 Holy
0x0200 Restorative
0x0400 Cut
0x0800 Hit
0x1000 Punch
0x2000 Shoot
0x4000 Shout
        0x8000 Unknown
0x1A 2 bytes "Special" 2
        0x0001 Attack MP instead of HP
  0x0002 ?
  0x0004 ?
  0x0008 ?
0x0010 Drain Damage Dealt
0x0020 Drain HP/MP
0x0040 Blade Beam
  0x0080 Ignore Status
  0x0100 Miss if Not in “Death” Status
  0x0200 Reflectable
  0x0400 Piercing (Unblockable)
  0x0800 Angel Whisper/Pulse of Life
  0x1000 ?
  0x2000 Critical Hits
  0x4000 ?
  0x8000 ?

You might also want to look at this thread

http://forums.qhimm.com/index.php?topic=4939

and some of the work we have done in this thread

http://forums.qhimm.com/index.php?topic=7897.0
« Last Edit: 2008-10-21 19:53:50 by Leighos Kudistos Megistos »

Prince Lex

  • *
  • Posts: 882
  • Opinionfact is Redundancy
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #2 on: 2008-09-25 19:36:29 »
This is a fracking amazing project....

A kernel.bin editor has been needed for a very very very long time, much thanks to you for this, seriously. I can't wait to try it out!!!!!

nfitc1

  • *
  • Posts: 3012
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #3 on: 2008-09-25 19:41:57 »
Positive feedback so far. That's great!

LKM (your name's too long to type out each time), those are amazingly helpful! Thanks for pointing them out. Since this is a WIP I'm hoping mostly that people will chime in during betas and help me fill in the "unknown" gaps that will exist. That does eliminate quite a few right off the bat.
Maybe after this gets made someone should update the wiki with the currently known info.

LeeHiOoO

  • *
  • Posts: 128
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #4 on: 2008-09-25 21:36:04 »
Wow!! at first i thought u were about to release a mod with improved stats in kernel.bin ... not a editor itself  :-o
That's really a awesome project... it's really useful so we can have tools to easily edit every single characteristics of the game without needing to lose so much time with programming... also useful to people that don't have programming knowledge at all

REP ++

I really appreciate your work... feel free to ask me for any help
really can't wait to test it   :wink:

Gingercat

  • *
  • Posts: 64
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #5 on: 2008-09-26 10:22:18 »
I see this topic and I think "Ooh!!"

I have a read of the topic and my response is "Coooooooooooooooooooooooooool...!"

This is gonna be awesome as!!

And don't worry about stealing my thunder... I'm more than happy to hand over the whole enchilada :P

TTK_86

  • *
  • Posts: 28
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #6 on: 2008-09-26 10:37:13 »
This seems really intresting. If you need beta-testing, just let me know. I hope the best for you  :-)

nfitc1

  • *
  • Posts: 3012
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #7 on: 2008-09-26 15:41:40 »
Can open, ff7dec, and begin to read information in KERNEL.BIN already!
Made some good progress on reading the Attacks so far and determined a bit. Found some enemy skills that used some Damage type flags that are unique to them

60 - White Wind
83 - Lv4 Suicide/lv5 Death

Looking at Lv4 Suicide and Lv5 Death I've probably determined that damage type 0x83 uses the Atk% (first byte. It's 4 for L4 Suicide and 5 for L5 Death.) as divisor to determine if the hit connects or not. And 0x60 depends entirely on the casters current HP. Prettly good for initial results, no? :)
« Last Edit: 2008-09-26 15:50:58 by NFITC1 »

nfitc1

  • *
  • Posts: 3012
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #8 on: 2008-09-26 15:50:12 »
Sorry, ignore this double-post. I hit quote on the above post when I meant to hit Modify. :(
« Last Edit: 2008-09-26 15:51:50 by NFITC1 »

Kudistos Megistos

  • Banned
  • *
  • Posts: 3929
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #9 on: 2008-09-26 16:08:38 »
I've added those, as well as some of Armorvil's work, to the "Type of damage" list in my first post.

nfitc1

  • *
  • Posts: 3012
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #10 on: 2008-09-26 16:48:13 »
Great! Now added. Only four are left: I think I know these now:

0x00 Nothing; occurs in one attack that's a filler
0x25 Only Cure 1, 2, and 3; Probably just Magic-based curative
0x50 Apply status temporarily. I still don't see a counter though.
0xB1 Slot based hit. Only shows up in Tifa's Limit Breaks. "Hit" "Yeah!" or "Miss". Need to test this

Also noticed: Inflict Status MAY be dependent on the percentage chance it has to succeed. Choco/Mog has an Inflict Status of 10, which is related to its chance of causing Stop.
I now believe this to be half the percentage chance of inflicting. I'm still not sure how it relates to percentage.

One more thing: About 0x0002 of Attack Properties. Could this be "Force Animation"? You can change the Battle Camera motion up and down in the config and not all camera motion stops. All the summons always take control of the camera. This will require a little testing as well.

Possibly Major find:

What's labeled as "Attack attribute" in Reply #1 and "Damage Type" in Wall Market I now believe to be a bit mask of targeting restraints:
Code: [Select]
0x01 - Enable target selection (Escape's target is 0x00 and target cannot be selected)
0x02 - Start target on Enemies
0x04 - Begin target as multiple
0x08 - Can toggle between single/multiple
0x10 - One side (Party or enemy) only
0x20 - unused
0x40 - All Active battle participants
0x80 - Random target.

* - 0x08 is never on without 0x04
If anyone can verify this or can think of a way to test it, please do and let me know the results. [Heh. I just made Choco/Mog hit both enemies and party. I may make an "unpredictable" mod that reassigns the attacks to do random things and the weapons with different stats. :D]
Come to think of it, the Item Target acts very similarly. I believe I may have found a match.
I believe now that these are the effects. When I changed Ice2 to hit twice (see below) and set its target to 0x87 it selected all enemies and hit two of them randomly each time. This doesn't seem to work for the summons. I can make a summon hit all members on both sides, but I can't make  them hit only one target.

I've also been looking at the Additional Effects. Here's the list of attacks that have additional effects in the kernel:
Code: [Select]
0 Comet2
0 Splattercombo
0 Knights of Round
1 Oden If all enemies are immune to Death summon Gunge Lance
2 Choco/Mog Sometimes summon Fat Chocobo
5 Escape No Reward?
8 Toy Box ??
9 Goblin Punch Damage based on Attakers level/target's level
E Phoenix Heal/Restore Dead allies
10 Transform (Cait Sith) Removes other allies from battle
1C Dragon Force Raises Stats
18 Satan Slam Cast OTHER Satan Slam
23 Remove Remove target from battle and kills
So WHAT does Comet2, KotR, and Splattercombo have in common?! I have no idea. And what else does toy box do? I think it sometimes hits all enemies or just one, but I try to avoid Cait Sith so I'm not really sure. :)

After some testing I think I figured out what is happening with Additional Effect 0x00. In Reply #1 made by LKM, he states the following information for attack values:
Code: [Select]
0x12    1 byte  "Special" 1. Again, there are a lot of these, and I have only tested one:
       14      Fills limit bar
0x13 1 byte  Number of hits
This is true, but not completely correct. 0x13 is ONLY number of hits when 0x12 is 0. This is what links KotR, Comet2, and Splattercombo. They all are multihit. If 0x12 is set to NULL (0xFF), then Comet2 only hits once. So 0x12 can remain "Special properties", but 0x13 will have to be changed to "Special Properties Modifier".
« Last Edit: 2008-10-07 14:01:10 by NFITC1 »

Kudistos Megistos

  • Banned
  • *
  • Posts: 3929
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #11 on: 2008-09-27 04:34:52 »
By extraordinary coincidence, I had just been testing bytes 0x24, 0x25 and 0x26 of the weapon data: 0x24 is the sound the weapon makes when it hits normally, 0x25 is the sound it makes when it makes a critical hit and 0x26 is the sound the weapon makes when it misses. 0x05 is indeed status attack:

http://forums.qhimm.com/index.php?topic=7897.msg95161#msg95161
« Last Edit: 2008-09-27 04:36:50 by Leighos Kudistos Megistos »

nfitc1

  • *
  • Posts: 3012
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #12 on: 2008-09-27 15:00:48 »
Great! I'll add that to the interface later (today I hope). Are those the ONLY statuses weapons can inflict? If so I'll make it a drop-down list instead of the normal bit masking checkboxes.

I am, as you apparently notice, updating the first post with my progress instead of adding new posts. So all the people that come new to this thread need only read the first post to see how far I am into this.
I have noticed something odd already. For Weapons, the "stat increase" blocks aren't completely correct. Only two are used:
0x15 : 0x19
0x16 : 0x1A
The pair "above" these and the pair "below" these don't get reflected in the weapon. I've been wondering this for a while because weapons only increase up to two different stats. Thus, I'm confused as to their functions. Can anyone shed some light on this? Armors seem to be similar, but it's possible that they could increase more than two stats, but I'm not doing any game testing yet.

Gingercat

  • *
  • Posts: 64
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #13 on: 2008-09-28 11:26:59 »
Whoa, talk about progress!!  :-o

How cool is this? :-D

I wish I knew enough to contribute, but my skills are... A bit lacking.

Still, I can certainly offer encouragement for this awesome project!

Gingercat

  • *
  • Posts: 64
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #14 on: 2008-09-28 12:37:18 »
With the last image up there, I notice that "Nullify" and "Absorb" are radio buttons... But from memory, there is at least one accessory (Man's Armlet?) that "drains 1/2 x/y/z". How does the game go about "draining 1/2"? I imagine it may be a combination of blocking (Nullify) 1/2 and Drain (Absorb) the other 1/2 of the proposed damage... Either way there would need to be some way of specifying that 1/2 modifier in order to properly edit / create such an item.

nfitc1

  • *
  • Posts: 3012
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #15 on: 2008-09-28 14:09:38 »
You're thinking of the Zeidrich, which is an armor, not an Accessory. Accessories either absorb or nullify elemental damage (or don't do anything). If they CAN half damage I would like to know about it. Or if they can affect any of the physical elements I need to know that too.
Cat's Bell officially has no data because it does not have an in-battle effect and the KERNEL.BIN only contains information about battle routines. I've also noticed that it only contains attack information on attacks available to the Player(s). It doesn't contain information on Aire Tam Storm or Ruby's tentacle attacks, etc. (not that I found anyway).

Kudistos Megistos

  • Banned
  • *
  • Posts: 3929
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #16 on: 2008-09-28 15:00:25 »
Attacks only used by enemies are in the scene.bin files for those fights.

Gingercat

  • *
  • Posts: 64
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #17 on: 2008-09-29 01:09:30 »
Ah, armors do that. Oops :lol:

My mistake.

And a slightly-off-topic question:

What does the "Imprisoned" status do? (Just curious.)
« Last Edit: 2008-09-29 01:11:38 by Gingercat »

Kudistos Megistos

  • Banned
  • *
  • Posts: 3929
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #18 on: 2008-09-29 01:40:11 »
Imprisoned stops a character from acting and flags him/her as dead until the status is broken. It is the status caused by Reno's pyramid (in the sector 7 fight), Bottomswell's water polo and Carry Armor's right/left arm.

nfitc1

  • *
  • Posts: 3012
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #19 on: 2008-09-29 03:42:43 »
Imprisoned stops a character from acting and flags him/her as dead until the status is broken. It is the status caused by Reno's pyramid (in the sector 7 fight), Bottomswell's water polo and Carry Armor's right/left arm.

I thought Bottomswell's water polo causes "dual" since you have to attack the water bubble to free them.

Kudistos Megistos

  • Banned
  • *
  • Posts: 3929
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #20 on: 2008-09-29 03:52:41 »
According to Terence Fergusson's "battle mechanics" at gamefaqs, it causes both.

Gingercat

  • *
  • Posts: 64
    • View Profile
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #21 on: 2008-09-29 04:39:37 »
Makes sense. Haven't really thought about FF7 game mechanics in-depth before like this :)

And last off-topic question: What about Peerless? It's certainly oddly-named.

nfitc1

  • *
  • Posts: 3012
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: [WIP] "Wall Market" Kernel.bin editor
« Reply #22 on: 2008-09-29 04:49:33 »
Only Aeris's limit breaks Planet Protector and Great Gospel can grant peerless. A character with the status of Peerless will take 0 damage for the next three attacks.

Gingercat

  • *
  • Posts: 64
    • View Profile
That figures, doesn't it :-P

Something that cool should be accessible to characters other than her!

...At an appropriate cost, of course ;)

Anyway, back on-topic.

Phase I complete? Nifty! Amazing speed on bringing it together!

nfitc1

  • *
  • Posts: 3012
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
I emailed the first two testers. Still accepting positions.

UPDATE: A lot of the original hypothesis I discovered about the Command Data was way off so I deleted it. Here's what I've learned from in-game experience:

Code: [Select]
Index - Data; Command
00 - 00 FF FF FF FF FF FF FF; Left (What's this?!)
01 - 07 FF FF FF FF FF FF FF ; Attack
02 - 01 FF FF FF FF FF FF FF ; Magic
03 - 02 FF FF FF FF FF FF FF ; Summon
04 - 03 FF FF FF FF FF FF FF ; Item
05 - 07 FF FF FF B8 00 B9 00; Steal
06 - 00 1F FF FF BC 00 BD 00; Sense
07 - 0B 17 FF FF C5 00 C5 00; Coin
08 - 05 0B FF FF C4 00 C4 00; Throw
09 - 00 1F FF FF C2 00 C3 00; Morph
0A - 00 1F FF FF C0 00 C1 00; DeathBlow
0B - 00 1F FF FF C2 00 C3 00; Manip.
0C - 00 00 FF FF FF FF FF FF; Mime
0D - 04 FF FF FF FF FF FF FF; Enemy Skill
0E - 00 FF FF FF FF FF FF FF; All:
0F - 00 FF FF FF FF FF FF FF; 4x: (that's just what it's called)
10 - 00 FF FF FF FF FF FF FF; Blank
11 - 07 FF FF FF FF FF B4 00; Mug
12 - 00 00 FF FF FF FF FF FF; Change
13 - 00 00 FF FF FF FF FF FF; Defend
14 - 06 FF FF FF FF FF FF FF; Limit
15 - 08 FF FF FF FF FF FF FF; W-Item
16 - 09 FF FF FF FF FF FF FF; W-Magic
17 - 0A FF FF FF FF FF FF FF; W-Summon
18 - 00 17 FF FF B4 00 B4 00; Slash-All
19 - 07 FF FF FF B5 00 B5 00; 2x Cut
1A - 00 17 FF FF B7 00 B7 00; Flash
1B - 00 97 FF FF B6 00 B6 00; 4x Cut

The first byte is what happens to the cursor. A menu is brought up (0x01-0x0A, but not 0x07) or is taken to the targets. If it is 0x00, then the second byte is treated as the target bit mask mentioned in Reply #10. Otherwise just perform regular cursor movement. I need to set up an attack that has Throw's target mask of 0x0B and see what happens. It's kinda strange...
The last four bytes are definitely single/multiple camera animations (Yes, a multiple mug DOES look like Slash-All).

I got Cloud to "do" All: once. It activated like a limit and gave him Darkness. I couldn't get him to do it again even after restarting the game.

Another curious note I discovered yesterday. There is a Coin Materia! It's in the kernel as being mastered at 20000 AP and only enables Coin when you equip it. I guess that command 0x07 was supposed to be coin on its own, but it was changed to switch between Coin and Throw and the Coin Materia was tossed out.
« Last Edit: 2008-10-03 20:16:12 by NFITC1 »