== The following MAY contain data which seems to be legacy data leftover from some previous game's data structure (Oblivion/Fallout/whatever), cannot be accessed by the public version of the CK, or for whatever reason is changed/destroyed by the CK (sometimes caused by bugs, such as in TACTs). I say "may" because not all these record types necessarily HAVE the specific subrecords - especially if the CK was used to save the data (thus updating to the current standard format).
- I came to these conclusions primarily because these blocks are either destroyed, changed, or replaced when edited in the CK; and usually only a relatively few Vanilla forms of their kind have this legacy data while most are in the 'new' format (sometimes even reflected in the different formID numbering, presumably the legacy data having been created at the beginning of Skyrim's development several years ago, thus having a 'lower' formID #).
Editing ANY part of the following records in the CK triggers the legacy-updating when saved.. which is actually desirable (ie- the data is now stored in the 'new Skyrim standard'). In other words, if you edit some data for any reason whatsoever, then save it in the CK, the entire edited record is updated (ie- deletes/changes those legacy/etc blocks).
***** I do NOT recommend Snip-editing these record-types in their Vanilla state (eg- manually snipping over a record directly from Skyrim.esm, then editing it as-is). The CK should first be opened, the data edited (even if just temporarily changing a minor aspect, such as a single letter in the name), and then SAVED IN A PURE-CK plugin BEFORE editing it in Snip (or ANY 3rd party software).. This will ensure that one doesn't edit a 'worthless' or anathema subrecord, and then wonder why those changes magically disappeared later "for no reason" or why it simply "doesn't work". (25 total, in order of appearance)
CLAS, RACE, SOUN, TACT, ALCH, WTHR, CELL, WRLD, NAVM, ACHR, REFR, PGRE, PHZD, INFO, QUST, PACK, CSTY, WATR, IMGS, IMAD, AVIF, DOBJ*, SCEN, MATO, SNDR
(alphabetical: ACHR, ALCH, AVIF, CELL, CLAS, CSTY, DOBJ*, IMAD, IMGS, INFO, MATO, NAVM, PACK, PGRE, PHZD, QUST, RACE, REFR, SCEN, SNDR, SOUN, TACT, WATR, WRLD, WTHR)
[* - DOBJ record exists in Vanilla, but the CK writes all the data in this record as zeros, PLUS any changes made in the CK. CK-made DOBJ records have an EDID subrecord added (whereas Skyrim.esm's doesn't); this COULD potentially signal that the subsequent data is to be ADDED (ie- not used as an override record). If it doesn't, the original (+changes made manually) would have to be spliced over every time the plugin was saved in the CK. If not respliced, this would (if applicable at all) in turn destroy the entire game by affecting actor's movement, and various other fundamental aspects of mechanics and basic functionality. Since I have no idea what 'Default Objects' do, I see no apparent reason to edit or include this record-type in a plugin; so I recommend not touching it at all unless for experimental purposes. For experimental purposes, the DOBJ data is accessed in the CK through the Gameplay Pulldown, 'Default Objects'.]
ACHR - SCHR subrecord is deleted when record is edited and saved in the CK
ALCH - ENIT subrecord contains legacy data which the Skyrim game-engine doesn't use (addiction data; 1 formID, 1 float)
CELL - some data in interiors' XCLW and XWCU subrecords are reset to 0 when record is simply reopened in the CK (then saved); LNAM and XNAM subrecords are deleted when record is edited and saved in the CK; TVDT and MHDT seem to be unused legacy data which apparently cannot be accessed in the CK (though deleting them have no apparent affect)
CLAS - checkboxes are NOT saved by the CK (recharge/training)
CSTY - CSMD subrecord deleted when record is edited and saved in the CK
DOBJ - In a snipped-over DOBJ record, CK overwrites ALL the data with 0s (zeros), then adds the changes made in the CK (accessed under the Gameplay pulldown); if the original is not included in Skyrim.esm the game's physics and fundamentals don't function properly (that's why the CK can NEVER save Skyrim.esm, un-ESM-flagged, as a viable ESP)
IMAD - contains several subrecords which seemingly cannot be accessed in the CK
IMGS - ENAM subrecord is deleted when record is edited and saved in the CK
INFO - DATA, SCHR, QNAM, NEXT subrecords are deleted when plugin is saved in the CK
MATO - contains Gamebryo-specific data which seemingly cannot be edited in the CK
NAVM - ONAM, PNAM, NNAM subrecords exist only in records contained in a cell which the CK cannot access (00000025 NavMeshGenCellDUPLICATE001) [when this cell is duplicated in Snip, and all the formIDs made unique, the CK autoconverts all the NAVMs to REFRs/primitiveMarkers; I believe these are "cutout" navMeshes for various objects/statics/furniture/etc. I think it's possible that these subrecords aren't even used anymore if the actual NIF/HVK data is read in lieu of them.]
PACK - SCHR, TNAM, SCDA, SCTX, PFOR subrecords are deleted and/or replaced when record is edited and saved in the CK
PGRE - SCHR subrecord is deleted when record is edited and saved in the CK
PHZD - SCHR subrecord is deleted when record is edited and saved in the CK
QUST - SCHR, SCTX, and QNAM subrecords are deleted when saved by the CK (SCTX actually has Oblivion-like script functions still; eg- 0008D5DA); aliases must be individually edited and saved to be updated in the record
RACE - Vanilla DATA subrecords have 36bytes added to them when saved in the CK, which is seemingly inaccessible in the CK; the DATA subrecord also has a block which is always reset if User opens the record in the CK then saves it (any tab, without editing), this is the NoCombatInWater flag and it gets Checked by the CK (presumably by a bug); contains data which seemingly cannot be accessed in the CK
REFR - XMBP and SCHR subrecords are deleted when record is edited and saved in the CK
SCEN - SCHR, SCTX, NEXT (when in a specific position), and QNAM subrecords are deleted when saved by the CK
SNDR - FNAM subrecord is deleted when record is edited and saved in the CK
SOUN - FNAM and SNDD subrecords are deleted when record is edited and saved in the CK
TACT - PNAM subrecord value reset to 0 when record is edited and saved in the CK
WATR - DNAM subrecord contains data which seemingly cannot be accessed in the CK
WRLD - RNAM and OFST subrecords are deleted when record is edited and saved in the CK; MHDT subrecord contains data which seemingly cannot be accessed in the CK (though manually deleting it has no apparent affect)
WTHR - DNAM, CNAM, ANAM, BNAM, ONAM, NAM2, NAM3 are deleted when record is edited and saved in the CK; contains data which seemingly cannot be accessed in the CK
(for more specific info on these, see the XML file in the above link for my notes)
== The following FOUR record-types contain data which is COMPRESSED by the CK, as well as being found that way in the Vanilla ESMs. If this data is saved uncompressed (eg- by Snip while compression is disabled), the game and the CK can still read it perfectly fine. If an uncompressed plugin is opened by the CK, then immediately saved, it re-compresses the plugin and may harmlessly shuffle some of the data (for unknown reasons, perhaps to make it harder for 3rd party apps to "clean" plugins).
CELL, LAND, NAVM, NPC_
I do NOT recommend attempting to use compression on any record-types other than these four. Personally, I recommend disabling compression altogether in Snip, then CK-save the plugin before final testing, and compare the before/after to ensure all data is intact (THEN do final testing in-game). If you do attempt compression (especially on records not intended for it), as always, please experiment and test fully before releasing anything publicly; and keep your backup plugins well organized (Snip v4.3.1s2 auto-backs-up so you have no excuse if YOU mess something up by doing whatever).
All the rest of the data-types should be stored by Snip as binary-identical to the same CK-saved plugin. Exceptions to this are anything which has scripting attached to it in any way (containing a VMAD subrecord)..
***** For whatever reason, in VMAD-bearing records, the CK actually SHUFFLES the order of any filled properties in the raw data - each and every time the file is saved in a new CK session. To see for yourself; save a plugin (with something scripted and having multiple properties), exit the CK, restart/reload the CK, and immediately save it again (without editing anything) - those two files will have the VMAD data different.. the second-one-saved has been shuffled, and possibly other data in the plugin shuffles as well.
I call this the 'CK SHUFFLE' and it appears to be harmless, in any event. A ramefication of this though, is having difficulty identifying 'dirty edits' and dupe records.. since it's possible that the CK will shuffle data in ALL records it saves, including those dirty records. In other words, they won't be identical to the Skyrim.esm record anymore - and will show as different in a binary comparison from plugin to plugin; even though ALL the data is actually the same (just stored in a different order). As of 10-14-12, both TES5Edit and Gecko fail to recognize CK-Shuffled data as a dirty edit; hopefully this will be resolved eventually (though I suspect that will take a VERY long time).
Additionally, the order in which a group of records appears in the plugin is also sometimes shuffled by the CK (eg- the first record stored may become the last, bumping all the rest 'up one').
[RACE records have various subrecords shuffled, even when saved in the same CK session]
*****
Because of this CK-Shuffling of data, the CK's compression algorithms use different 'key' data-blocks from one file to another; therefore the resulting file may be larger or smaller than other versions of the SAME file saved in a different session of the CK. Depending on the content of one's plugin, this differential may be HUNDREDS of bytes or even kilobytes (such as with my SPODUM Mannequin mod - which has over 60 new actors, all having scripts). Again, this is CAUSED BY THE CK, without User having made ANY changes to the plugin - it happens simply by opening the file, saving it, exit, backup, reopen, resave, and compare. For an explanation as to why this is, see the above link's Description page.
*****