Author Topic: Solved - (PSX FF7) Displaying a non-displayed party member field model?  (Read 3221 times)

Lazy Bastard

  • *
  • Posts: 290
  • I may be lazy, but I can...zzzZZZzzzZZZzzz...
    • View Profile
    • GameHacking.org
I'm working on my PSX FF7 prequel mod, Adamant, and I'm about to create another custom BCX (party member field model), but before I do so, I want to ensure I can make the field model show up in the field I want it to. Somehow, I haven't needed to get a custom BCX to show up in a field, other than Cloud's custom BCX (which is presumably somehow different since he's the default playable character).

As a test, I used Makou Reactor (1.7.2) on field BLIN61.DAT (Shinra HQ, floor 61, Lounge), and noting that Cid is already a model in this field (and even has the required model data in BLIN61.BSX), tried every way I could conceive of to display Cid in this field. I gave him legitimate coordinates and a triangle (not that triangle assignment has seemed to matter in the past with non-party models, strangely), added "Display field model", gave him a looping animation of his standing animation, etc. I also tried doing these via a script under his group ID, and calling that script in Main or AD groups, but no luck. Since he's a potential party member, I also tried adding him to the party, adding him then removing him from the party, etc, and still no dice.

Am I missing something obvious? If a field already has other potential party members such as Cid and Tifa specified, and its BSX includes the required model data for them (and their BCX includes the rest of their model data), is there something special I need to do in order to get them to show up in a field?

Minor update: DLPB was kind enough to test my modified field on PC, and it worked fine for him. Is there something special for PSX I need to do here? Or, is Makou Reactor not handling this specific modification for PSX properly?
« Last Edit: 2016-12-06 19:10:05 by Lazy Bastard »

Lazy Bastard

  • *
  • Posts: 290
  • I may be lazy, but I can...zzzZZZzzzZZZzzz...
    • View Profile
    • GameHacking.org
I reached out to Roden, and he reminded me of something meesbaker and I stumbled upon a few years ago when working on meesbaker's Sephiroth mod (Roden also discovered this, independently of us):

Quote
From what I can remember, in the DAT file for each field is a listing of each model, it looks like this:
Cloud:   00160F0300000001
Aeris:   0118100300000002
Barret:  02160F0300000003
Tifa:    0319110300000004
Nanaki:  041E160300000005
Cid:     05160F0300000006
Yuffie:  0619100300000007
Cait:    071D100300000008
Vincent: 081A110300000009

If a character is NOT in your party, they will not appear in the field UNLESS you add a 01 in the appropriate place. So for example Barret is usually: 02160F0300000003

But to also have him appear on the map when he is not in your party, you need to add a 01 like so: 02160F0800010003


This worked.

Incidentally, that string also contains the number of parts for each playable model, and if that isn't adjusted to match a custom BCX, you'll have issues or crash. Also, there is a set number of parts altogether per field, and I can't recall where that's set...either somewhere else in the DAT, or somewhere weird like FIELD.BIN .

Unfortunately, some of the notes meesbaker and I took weren't backed up and lived solely here on the forums and wiki...shortly before the 2012-ish data loss that destroyed ~3 months of forum and wiki data :(

Let me know if you run into issues related to this, and I'll see if I can bumble my way through re-documenting it. I'll probably need to do that anyway at some point.
« Last Edit: 2016-12-06 19:19:00 by Lazy Bastard »