Author Topic: Yatta!!  (Read 16275 times)

mirex

  • *
  • Posts: 1645
    • View Profile
    • http://mirex.mypage.sk
Yatta!!
« Reply #25 on: 2002-04-15 12:00:00 »
Hm, and i thought that i'll be the first to post info about __da files.  :( But i didnt make it. Never thought about other type than 4byte float.

I'll post info that i gathered in the evening ... i dont have it at this computer.
Quote

As for the third value for each bone; either 1 or 0. Well, looking at Aeris' model, she has 31 bones, of which 23 are marked "1". Now, looking at the polygon files, there's 23 of them...


Fice: yes, i think that 1 means 'model_bound' too.

========== so shadows came and evening is here ===== :)
so here is what do i think that files are:

AA      skeleton file
AB      might be list of magics ?
AC-AJ   Textures
AM-BZ   Body parts P
CK-CZ   Weapons P
DA      skeleton movement

==== AA - skeleton file:
(but all of you know about this)

offset 0x0C (long) number of bones
offset 0x1C (long) ?? but same as in DA
       0x30 (long) might be checksum
0x34: bone info start:
number of bones * {
  (long)    parent, -1 = root, 0 based)
  (float)   bone length, negative, i dunno why
  (long)    model_bound: 1 = yes, 0 = no
} (record length:12b)

==== DA:
file goes like this, starting on offset 0

(long)          recs count of records

recs * {
  (long)        rec_a = ??, but usually same for all blocks
  (long)        rec_b = ??
  (long)        block_length,  always modulo 4 == 0
  block         data block, block_length bytes long
}

block:
{
 (short)        block_a, same as rec_b
 (short)        real_data_len ??
 data           data block, real_data_len bytes long, at least i think so.
                this isn't even allways, so there should be some variable
                info in this data block
}

IMHO there are some spare bytes at end of block

and that is whole file (except of that data, but that is explained by phaeron)
-----------
example, file JCDA:

06 00 00 00                                             ; records count

record #1 goes now, adress 0004:
02 00 00 00,   0D 00 00 00,   40 00 00 00                 ; rec_a, rec_b, block_length

data header #1 now, length with header = 40h :
0F 00,  3A 00                                            ; block_a, real_data_len

and data ( 40h - header length(4) = 3Ch ):
00 00 00 FF FE 00 BE 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00            

record #2 goes now, adress 0050:
02 00 00 00,  13 00 00 00,  54 00 00 00                   ; rec_a, rec_b, block_length

data header #2 now, length with header = 54h :
15 00,  4D 00                                            ; block_a, real_data_len

and data ( 54h - header length(4) = 50h ):
04 00 00 FF FE 00 BE 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

record #3 now, adress 00B0 ..... and so on, 6 records

Hope it helps.
Bye bye and good night to you all :)
[edited] 171 2002-04-15 21:45

Dr.Mysterios

  • *
  • Posts: 17
    • View Profile
    • http://students.emu.edu.tr/989846/cloud_strife/cloud.html
Yatta!!
« Reply #26 on: 2002-04-16 07:10:00 »
Wow, you guys are going overboard!!!  :o

I don't have any code to give, but I have an idea on the sword grip thing:
You can make a linking function union() and then do this:-
when cloud holsters his sword to do magic etc.,do this operation:
cloud_sword_hand(hand+sword link)=hand
torso_links(torso+otherlinks):union(torso_links,sword)

the union function can be achieved if you add an extra point(link_joint) to every body part, and when the function executes the linked body parts position will be the position of  link_joint.
Great work!

[edited] 356 2002-04-16 08:39

phaeron

  • *
  • Posts: 30
    • View Profile
Yatta!!
« Reply #27 on: 2002-04-16 07:30:00 »
The problem is not how to attach the sword -- that much is obvious and falls naturally out of attaching the sword to the hand bone.  The issue is how the game actually does it so that the animations can be replayed.  What's interesting is that if you look at the PSX version, there is a second set of animations beginning at packet 54 that run in parallel with the primary set of animations and have the same number of frames.  It's a possibility that the weapon is _never_ attached to the hand and simply looks attached because paired weapon and player animations are running simultaneously.  This would also allow FF7 to manually control the animation of the weapon, which would be necessary when attacking since the distance and direction is different for each enemy.

Okay, will someone please decode the delta frame format for me so I don't have to go bitwhacking?  I hate variable bit streams.    :cry:

Alhexx

  • *
  • Posts: 1894
    • View Profile
    • http://www.alhexx.com
Yatta!!
« Reply #28 on: 2002-04-16 07:54:00 »
<off-topic sequence>
BAD NEWS:
Yesterday my screen broke. However, at least it looked like a cool supernova :D
However, I possibly won't be able to post ...
</off-topic sequence>

 - Alhexx

 - edit -
Had to add end of tag...
[edited] 169 2002-04-16 08:55

ShinRa Inc

  • *
  • Posts: 416
  • The Ascension of the Ordinary Man
    • View Profile
    • http://shinrainc.org
Yatta!!
« Reply #29 on: 2002-04-16 08:05:00 »
Quote
It's a possibility that the weapon is _never_ attached to the hand and simply looks attached because paired weapon and player animations are running simultaneously

Yeah, that's pretty much what I was driving at.  I know she keeps a hold of it most of the time, but does Yuffie ever throw her shuriken?  

<off-topic sequence>
Yikes.  I wish I could say the same about my car, but I jammed my eyes shut when things got *really* exciting...
At least I got these:
http://web.tampabay.rr.com/shinra/Saturn.html
Also...two more screenshots of my slowly growing sprite collection.
http://members.aol.com/acaiitoarms/xavierov.jpg
http://members.aol.com/acaiitoarms/trent.jpg
and I spliced the non-working Heri2 HRC file with the working Heri1 file, and here are the results:
http://members.aol.com/acaiitoarms/b1beta.jpg
</off-topic sequence>

phaeron

  • *
  • Posts: 30
    • View Profile
Yatta!!
« Reply #30 on: 2002-04-16 08:12:00 »
Quote

Yesterday my screen broke. However, at least it looked like a cool supernova  
However, I possibly won't be able to post ...

What are you, a wimp?  Why do you think Microsoft Narrator exists in Windows 2000?  Just run NARRATOR.EXE and have the computer read your screen for you.

"Foreground window... Microsoft Internet Explorer... Qhimm's Forums... Post Reply... editable text...."

  :D

Seriously, my condolences about the screen, though.  When I had a CRT go out, I actually ran Narrator in order to figure out what was going on long enough to set up a PCAnywhere link to my laptop.

Quote

Yeah, that's pretty much what I was driving at. I know she keeps a hold of it most of the time, but does Yuffie ever throw her shuriken?


I vaguely remember that possibly happening in one of her limit breaks.... but I'm sure my definitive answer helps you immensely.


Dr.Mysterios

  • *
  • Posts: 17
    • View Profile
    • http://students.emu.edu.tr/989846/cloud_strife/cloud.html
Yatta!!
« Reply #31 on: 2002-04-16 09:07:00 »
I was figuring the pros at Square just made a link-unlink function for the sword with the magic anim, since that in itself is supposed t o be a function ('cause you choose the spell in the fight...). By the way, can you explain the way the PSX version reads the animations and the file names?

ShinRa Inc

  • *
  • Posts: 416
  • The Ascension of the Ordinary Man
    • View Profile
    • http://shinrainc.org
Yatta!!
« Reply #32 on: 2002-04-16 20:06:00 »
Quote
I vaguely remember that possibly happening in one of her limit breaks.... but I'm sure my definitive answer helps you immensely.

I'm just trying to help you guys out :P  I'll boot up FF7 later and check, if I have time.

phaeron

  • *
  • Posts: 30
    • View Profile
Yatta!!
« Reply #33 on: 2002-04-17 05:25:00 »
Quote
By the way, can you explain the way the PSX version reads the animations and the file names?


There are no individual item names in the PSX archive -- CLOUD.LZS contains the PSX equivalents of the PC's rt** files, but the files are stored solely by pointer and length.  The animations are stored exactly the same as the PC version, byte-by-byte exact with the PC's **da files.  So in other words, I know no more about that than you see here in this thread.