Frm format

Discuss the creation and scripting of new fan-made games and mods for the Fallout series of games.
Post Reply
MutantenMeister
SDF!
SDF!
Posts: 9
Joined: Tue Oct 29, 2002 11:39 pm
Contact:

Frm format

Post by MutantenMeister »

Have you ever wondered why you can only see the characters from the back in the frmviewer?? I have envastigated a bit and here is my description off the frm format....
http://www.ifrance.com/tollephotos/frmformat.html

I'm also making a description off the dat format becasue there is only an russian description off it.
User avatar
Red
Hero of the Glowing Lands
Hero of the Glowing Lands
Posts: 2085
Joined: Wed May 15, 2002 11:58 am
Location: Nowhere (important anyway)
Contact:

Post by Red »

There are 4 viewers that support FRMs that I know, exclluding the mapper which also supports FRMs: GRV, frmviewer frmtobmp and RedViewer. The only oen I know which actually supports all FRM formats properly is my viewer (Red!Viewer)

Here's the structure (in VB):

Code: Select all

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' .FRM
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' Header
Type FOFrameHeader
    ID As Long
    version As Integer
    triggerframe As Integer
    frames As Integer
    directionOffset(coordMax, 5) As Integer
    offset(5) As Long
    size As Long
    image() As FOSingleFrame
End Type

' Single frame data
Type FOSingleFrame
    hw(coordMax) As Integer
    size As Long
    off(coordMax) As Integer
    image() As Byte
End Type
When reading FoFrameHeader.offset() values from the file, if any of the values <> 0 then the image contains 6 directions. This value is actually the offset of the perticular direction within the file sterting from after the header. See http://www.duckandcover.net/forums/view ... 1859#41859
If you have any questions regarding parts of this don't hesitate to ask.
...
MutantenMeister
SDF!
SDF!
Posts: 9
Joined: Tue Oct 29, 2002 11:39 pm
Contact:

Post by MutantenMeister »

For my viewer I simply read the word at 4h and (for most animations it seems to be 8 not 6) so i simply read the numanims*numframes frames and they all seem to work correctly... do you have a copy off the webpage that aperared in the post you wrote about, it doesen't seem to exist anymore...
I have also an question on your sourcecode.. How long are the different datatypes you use and what does this coordmax mean?(i'm not an VB programmer...)
User avatar
Red
Hero of the Glowing Lands
Hero of the Glowing Lands
Posts: 2085
Joined: Wed May 15, 2002 11:58 am
Location: Nowhere (important anyway)
Contact:

Post by Red »

Well you might be right about 0x04h... I considered it a version as that's what all other docs refered to on the web. Or something like that anyway and never really looked into that number... I'll test that out with my viewer eventually.

As for coordMax itsn't just a constant (or define...) to... 1. It's just the value I use in my program to represent anything which should be coordinates, so that when coding with it the editor automagically offers me inline completion to either coordX/coprdY or coordHeight/coordWidth (as defined in my enumeration). Just my way of making clean code.

Long = 4 bytes
Integer = 2 bytes
Byte = 1 byte

Note that I have custom functions to read the Motorola values and convert them to Intel format, I don't just read them to memory...

As for the link it works fine for it. Note that it opens up in a new window so if you have one of those window-poper-protector programs (or disabled window poping in those browsers allowing that) it might not work so copy/paste it...
...
MutantenMeister
SDF!
SDF!
Posts: 9
Joined: Tue Oct 29, 2002 11:39 pm
Contact:

Post by MutantenMeister »

I will add your information to my description. With the link i meaned the link to the fortunecity page in the posting, not the posting itself. ;)
ABel
Scarf-wearing n00b
Scarf-wearing n00b
Posts: 33
Joined: Tue May 28, 2002 12:44 pm
Location: Krasnoyarsk, Russian Wasteland
Contact:

Post by ABel »

Correct link is http://members.fortunecity.com/noid84/
Without comma after the address ;)
Post Reply