Skip to content

Commit

Permalink
[FO4] More work on File Header
Browse files Browse the repository at this point in the history
Mostly comments. Do you think we can remove "useless" filedsand change
DATA definition ?
  • Loading branch information
Hugues92 committed May 10, 2016
1 parent acdfb7c commit 1f0d951
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions wbDefinitionsFO4.pas
Expand Up @@ -14144,23 +14144,24 @@ procedure DefineFO4n;
wbInteger('Number of Records', itU32),
wbInteger('Next Object ID', itU32)
], cpNormal, True),
wbByteArray(OFST, 'Unknown', 0, cpIgnore), // If possible then ignored by the runtime
wbByteArray(DELE, 'Unknown', 0, cpIgnore), // If possible then ignored by the runtime
wbByteArray(OFST, 'Unknown', 0, cpIgnore), // If possible then ignored by the runtime. Neither from the CK
wbByteArray(DELE, 'Unknown', 0, cpIgnore), // If possible then ignored by the runtime. Neither from the CK
wbString(CNAM, 'Author', 0, cpTranslate, True),
wbString(SNAM, 'Description', 0, cpTranslate),
wbRArray('Master Files', wbRStruct('Master File', [
wbString(MAST, 'Filename', 0, cpNormal, True),
// wbInteger(DATA, 'Filesize', itU64, nil, nil, cpIgnore, True) // Should be set by CK but usually null
wbByteArray(DATA, 'Unknown', 8, cpIgnore, True)
], [ONAM])),
wbArray(ONAM, 'Overridden Forms', // If possible then ignored by the runtime
wbArray(ONAM, 'Overridden Forms', // Valid in CK
wbFormIDCk('Form', [ACHR, LAND, NAVM, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]),
0, nil, nil, cpNormal, False, wbTES4ONAMDontShow), // If possible then ignored by the runtime
wbByteArray(SCRN, 'Screenshot'), // If possible then ignored by the runtime
0, nil, nil, cpNormal, False, wbTES4ONAMDontShow),
wbByteArray(SCRN, 'Screenshot'), // If possible then ignored by the runtime. Neither from the CK
wbRArray('Transient Types (CK only)', wbStruct(TNAM, 'Transient Type', [
wbInteger('FormType', itU32), // seen TESTopic (array of DIAL) and BGSScene (array of SCEN)
wbInteger('FormType', itU32), // seen TESTopic 78 (array of DIAL) and BGSScene 126 (array of SCEN)
wbArray('Unknown', wbFormID('Unknown'))
])), // Ignored by the runtime
wbUnknown(INTV), // Ignored by the runtime, 4 bytes loaded in CK
wbInteger(INTV, 'Unknown', itU32), // Ignored by the runtime, 4 bytes loaded in CK
wbInteger(INCC, 'Unknown', itU32) // Size of some array of 12 bytes elements
], True, nil, cpNormal, True, wbRemoveOFST);
end;
Expand Down

11 comments on commit 1f0d951

@zilav
Copy link
Contributor

@zilav zilav commented on 1f0d951 May 11, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since TES4 is never copied as override, it doesn't really matter much what is in there. If you think it is worth it to show extended information, then why not.

@Hugues92
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy as Override on TES4, that's the way I create a blank plugin when I need a new one :)

By the way, any info regarding CDX files somewhere ?

@zilav
Copy link
Contributor

@zilav zilav commented on 1f0d951 May 11, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nope, their meaning is unknown so far.

@Hugues92
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I heavily suspect it holds the PreCombined data or something related.

@zilav
Copy link
Contributor

@zilav zilav commented on 1f0d951 May 11, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It could be, however generating precombined data in CK doesn't create CDX afaik, but never tried it myself. CK crashes when I try to open any cell.

@Hugues92
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is a -BuildCDX command line option if I'm not mistaken (right next to GenerateSeq :) )

@zilav
Copy link
Contributor

@zilav zilav commented on 1f0d951 May 11, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At least we know what SEQ does (if it is still used in FO4), but building something we don't have any clue about? :)

@Hugues92
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I smiled because SEQ aren't used anymore as far as we know. There are 30 command line options defined, and the ability to call the CK passing the name of a nif.

@zilav
Copy link
Contributor

@zilav zilav commented on 1f0d951 May 11, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In Skyrim's CK passing a nif just opens it in a preview window afaik.
Can you please dump all those command line params for reference?

@InsanePlumber
Copy link

@InsanePlumber InsanePlumber commented on 1f0d951 May 11, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I managed to generate CDX file for Interiors Enhanced

CreationKit.exe -BuildCDX:InteriorsEnhanced.esm

It does not work with the ESP files, I tried and freezes or CTD CretionKit.

  • ESP must be changed to ESM in xEdit
  • Plugin can not contain spaces " " in the name

Generated CDX along with the edited InteriorsEnhanced.esm plugin on Goole drive (ESM is edited and updated for 1.5.157)

-OptimizeMasterFile -ExportDialogue -GenerateLips -ExportFaceGenData -TagifyMasterfile -ExportText -CompileTextExport -DelocalizeMasterfile -SaveDefaultPlugin -CheckInPlugin -DumpNeededFiles -OptimizeDLC -GenerateSEQ -GenerateWarnings -GenerateAnimInfo -GenerateSingleLip -GenerateStaticCollections -GeneratePreCombined -GeneratePreVisData -DepersistRefs -MapMaker -MapInfo -OutputAreaArt -UpdateModelData -ExportDismemberData -ConvertMaterials -ImportScalingData -CompressPSG -BuildCDX

EDIT
I generated (for testing this method) CDX files for "All" DLC and they are exactly the same as the original files (binary comparison)

@fireundubh
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@InsanePlumber: To use spaces in the shell, you'd do something like:

CreationKit.exe -BuildCDX:"Interiors Enhanced.esm"

Please sign in to comment.