Author Topic: Developing FF4kster: a comprehensive editor for FF4  (Read 246013 times)

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,682
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #600 on: December 20, 2013, 11:21:31 AM »
Hmm, I just tested this and saw no issue. The first default Song was still "Nothing Happened" the second default one was Song of Silence, then Song of Charm, and Lullaby. There was no issue that I saw with an A9 becoming 2F.

vivify93

  • Liquid Flame
  • *
  • Posts: 303
  • Gender: Male
  • White Wizard
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #601 on: December 20, 2013, 10:40:10 PM »
It had happened for me every time I changed the Nothing Happened song to do something, I think.
Hacking is hard. :sad:

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,682
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #602 on: December 20, 2013, 11:10:44 PM »
I just tested that and changed it to Hold and saw no issues. Hmm, I don't know what could be causing that.

Pinkpuff

  • Flan Princess
  • *
  • Posts: 923
  • Find a Megalixir in Unprecedented Crisis!
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #603 on: December 21, 2013, 04:57:04 AM »
Did you make any changes to the commands via anything else besides FF4kster (patches, hex editor, etc)?
Let's dance!

vivify93

  • Liquid Flame
  • *
  • Posts: 303
  • Gender: Male
  • White Wizard
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #604 on: December 21, 2013, 10:04:50 AM »
Did you make any changes to the commands via anything else besides FF4kster (patches, hex editor, etc)?
I had the following command changes done.

Pray: Casts Cure2 upon success, success rate: 70%
Heal: Consumes Cure1 Potions but has a Cure2 Potion effect
Regen: Heals 250 HP every round
Sing: Hold is cast instead of nothing; its message is changed to Message 47. Stop is cast instead of Mute

Sorry. I should've been more concise. I believe it was the description byte that was changed. From the information Grimoire LD gave me for the headered ROM...

"In ROM at...

01EB17 - A9 00 (LDA 00) - Stores message 00 for the first instance of Sing's effects. | I found that this was the description byte. A9 was altered to 2F in this instance.
01EB1C - A9 00 (LDA 00) - Seems to be necessary to change both, otherwise both are considered 00 regardless of what they actually are. | And if memory serves, this is the actual 'spell cast' byte. There was nothing changed here."

 :edit: In an otherwise unmodified headered FFII US V1.1 ROM, I just edited Sing's "Nothing happened." song to cast Hold and the Mute song to cast Stop, and A9 at 01EB17, or the "Call on this description for song #1" byte, was changed to 2F. So this change when I edited Project II was definitely not an issue of my own doing, though I must stress it's very easy to fix.
« Last Edit: December 21, 2013, 10:14:14 AM by vivify93 »
Hacking is hard. :sad:

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,682
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #605 on: December 21, 2013, 10:42:29 AM »
Hmm, it doesn't seem to be effected by FF4kster, considering that FF4kster wouldn't touch this location as of yet. Are you sure a separate patch didn't effect it in some way?

vivify93

  • Liquid Flame
  • *
  • Posts: 303
  • Gender: Male
  • White Wizard
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #606 on: December 21, 2013, 03:34:44 PM »
If it happened with an unmodified ROM, I'm fairly certain that it isn't anything I did. I could download a fresh v1.1 if you'd like, and test that?
Hacking is hard. :sad:

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,682
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #607 on: December 21, 2013, 04:09:37 PM »
That could possibly be for the best, since FF4kster shouldn't have a way to change this completely unrelated value that the programmer wasn't aware of at the time.

LordGarmonde

  • Baigan
  • *
  • Posts: 271
  • Gender: Male
  • "Power only breeds war..."
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #608 on: December 21, 2013, 05:22:49 PM »
I tried it on my 1.1 ROM clean - then after just opening & saving it with FF4kster - and then after actually changing the first Sing call (to Exit). No trouble - used Sing many times random distribution of the 4 choices. I'm sorry to say that it must be your copy of the ROM. Sorry I can't be of more help on that vivify93 - I hope you get it sorted all sorted out.
"Now I know; and knowing makes it even more confusing..."

vivify93

  • Liquid Flame
  • *
  • Posts: 303
  • Gender: Male
  • White Wizard
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #609 on: December 21, 2013, 11:48:24 PM »
It must've been in a previous build of FF4kster, then; I redownloaded FF4kster and made the changes and it's still A9. My problem was fixed easily, actually, I was just worried that this potentially game-ruining problem could've been in a build of the editor.

 :edit: Yeah, it was the previous build, apparently. I don't know what caused it, but it doesn't matter since it was fixed. I tested the fresh ROM in the old build, made the Nothing > Hold and Mute > Stop changes, A9 became 2F or whatever erroneous byte it was, I'm too drunk to look it up.

Sorry for raising a ferret-hunt for no reason, but I just wanted to be sure. :childish:
Hacking is hard. :sad:

Pinkpuff

  • Flan Princess
  • *
  • Posts: 923
  • Find a Megalixir in Unprecedented Crisis!
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #610 on: December 22, 2013, 04:03:56 AM »
I have a pet theory... 2F is steal evade right? And for a brief period it was being written to the wrong address due to my mistake with the headered/unheadered issue with the Cry offsets. It could be that it just happens that the mistaken address turned out to be Sing's message...

 :edit:
It occurs to me though that which messages are displayed by which commands is something that probably should be incorporated into the command editor isn't it ^_^; Is that information already documented?
Let's dance!

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,682
    • View Profile
Re: Developing a comprehensive editor for FF4
« Reply #611 on: December 22, 2013, 12:42:57 PM »
That is an interesting theory and one that makes a good deal of sense.

While it is not formally documented it is mentioned in all of my ASM notes. I can grab a quick collection of those (that have them) and post their offsets here.

(In order internally...)

Headered ROM

    Peep   - 01E3A3   1E - Load Message 1E into A. (Peep's Message)
    Sneak - 01E433   1C - Load 1C into A. (Sneak Fail - Damaged Message)
    Sneak - 01E43A   1B - Load 1B into A. (Sneak Fail Message)
    Sneak - 01E4CA   1D - Load Message 1D (Sneak Successful Message)
    Salve  - 01E4F9    0F - Load 0F into A. (Not Enough Medicine - Salve Message)
    Regen - 01E633   36 - Load 36 into A. (Regen Message)
    Twin   -  01E6DC  11 - Load 11 into A. (Twin Fail Message - In Regards to Status)
    Twin   -  01E787  11    - Load 11 into A. (Twin Fail Message - 1/255 Failure Message)
    Gird    -  01E8A5  3A    - Load 3A into A. (Gird Message)
    Focus -  01EA1E  39    - Load 39 into A (Focus/Boost Message)
    Pray   -  01EA5D  10 - Load 10 into A (Pray Fail Message)
    Sing   -  01EB08  0B - Load 0B into A (Song of Toad Message)
    Sing   -  01EB19  00 - Load 00 into A (Nothing Happened Message)
    Sing   -  01EB25  0E   - Load 0E into A (Song of Mute Message)
    Sing   -  01EB32  0D - Load 0D (Song of Charm Message)
    Sing   -  01EB3B  0C   - Load 0C into A. (Lullaby Message)
    Recall -  01EC62  09 - Load 09 into A. (Recall Fail Message)
    Boast -  01ECDF  12 - Load 12 into A (Boast Message)
    Cry     -  01ED22 13   - Load 13 into A. (Cry Message)

    And that should do it!

    Also would you like me to rewrite the Kick Options again? I wasn't sure if the last iteration of that was enough to go off of for implementation.[/list]

    Pinkpuff

    • Flan Princess
    • *
    • Posts: 923
    • Find a Megalixir in Unprecedented Crisis!
      • View Profile
    Re: Developing a comprehensive editor for FF4
    « Reply #612 on: December 23, 2013, 05:05:11 AM »
    Thanks so much!!

    Also would you like me to rewrite the Kick Options again? I wasn't sure if the last iteration of that was enough to go off of for implementation.

    If my rephrasing of it was accurate then there's no need, but if something needs to be corrected, then by all means.
    Let's dance!

    Grimoire LD

    • FF4 Hacker
    • *
    • Posts: 1,682
      • View Profile
    Re: Developing a comprehensive editor for FF4
    « Reply #613 on: December 23, 2013, 07:01:10 AM »
    Indeed your rephrasing of it was spot on. By the way, since we have the other four songs here's the means to change the Frog Song into what you like and how it is activated.

    Headered Rom

    Sing - Song of Toad
    - When Inflicted with Certain Status always use Specific Spell rather than a randomized spell.


      Caster's Status Byte 1 - 1EB01
      Status Determination - 1EB04
      Specific Spell - 1EB0D

      (Reference for the above -
      Status Byte 1 - 8326 (2683)
      Status Determination - 20 (Frog)
      Specific Spell (19) (Toad)[/list]

      Pinkpuff

      • Flan Princess
      • *
      • Posts: 923
      • Find a Megalixir in Unprecedented Crisis!
        • View Profile
      Re: Developing a comprehensive editor for FF4
      « Reply #614 on: December 23, 2013, 02:17:43 PM »
      Awesome!

      I take it "Inflicted With Certain Status" translates to "if Caster's Status Byte 1 is equal to Status Determination"? (Ideally each variable in the list should appear in the description)
      Let's dance!